https://github.com/ericneves/myfavoritesquotes
Web application created with PHP, Layered Architecture, PHP Unit (Tests), PostgreSQL, Angular, Primeng, Docker, NGINX and more...
https://github.com/ericneves/myfavoritesquotes
angular docker layered-architecture php phpunit postgresql primeng test-automation typescript
Last synced: about 2 months ago
JSON representation
Web application created with PHP, Layered Architecture, PHP Unit (Tests), PostgreSQL, Angular, Primeng, Docker, NGINX and more...
- Host: GitHub
- URL: https://github.com/ericneves/myfavoritesquotes
- Owner: EricNeves
- License: mit
- Created: 2024-02-04T20:43:44.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-18T18:48:05.000Z (about 1 year ago)
- Last Synced: 2025-01-18T10:20:24.390Z (4 months ago)
- Topics: angular, docker, layered-architecture, php, phpunit, postgresql, primeng, test-automation, typescript
- Language: PHP
- Homepage:
- Size: 509 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
My Favorites Quotes
Aplicação Web desenvolvida com PHP, Testes Unitários, PostgreSQL, Angular, PrimeNG, Docker e entre outros.Data de criação: Feb 10, 2024
![]()
![]()
![]()

### Descrição
**"My Favorites Quotes"** é uma aplicação web projetada para permitir que os usuários armazenem e compartilhem suas citações favoritas de maneira conveniente.
No geral, a aplicação permite que os usuários **armazenem**, **explorem** e **compartilhem** suas citações favoritas.
Principais funcionalidades:
* Cadastro
* Autenticação por JWT
* Gerenciamento de Citações
* Geração de Citação Aleatória### Features
Novos recursos foram adicionados no projeto, **principalmente no backend**, uma vez que fora introduzido o padrão de arquitetura em camadas, conhecido como **Layered Architecture**. Essa mudança proporciona uma estrutura mais organizada e modular para o backend da aplicação, permitindo a fácil implementação de testes unitários usando o **PHP Unit**.
A adoção do **Layered Architecture** promove uma melhor organização e separação de responsabilidades no código-fonte. Cada camada da arquitetura possui um conjunto específico de responsabilidades (**Dependency Injection**, **Controllers**, **Factories**, **Repositories**, **Services**, **Http**, **Middlewares**, **Utils** e entre outros).
* API
* PHP-v8.2
* Layered Architecture
* Composer
* PSR-1, PSR-4 e PSR-12
* phpdoenv-v5.6
* phpunit-v10.5
* Apache
* ModRewrite
* Database
* PostgreSQL-v15.4
* UI
* Angular-v17
* Node-v21
* NGINX
* typescript-v5.3.2
* rxJS-v7.8.0
* primeng-17.5.0
* primeicons-v6.0.1
* DevOps
* Docker
* volumns
* networks
### Execução```sh
# Clone Repository
$ git clone https://github.com/EricNeves/myFavoritesQuotes.git# Folder
$ cd myFavoritesQuotes/# Install Dependencies - Angular
$ cd web && pnpm install# Install Dependencies - PHP
$ cd www && composer update```
Agora, na raiz do projeto **./myFavoritesQuotes** execute o comando abaixo:
```sh
# Execute Docker Command
$ docker-compose up -d --build```
O app está rodando nos seguintes processos:
* API: http://localhost:3333
* WEB: http://localhost:3131### License