Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dehsilvadeveloper/laravel10-notification

Uma API feita com Laravel 10 que simula um sistema de notificações, gerenciando informações de notificações por meio de endpoints, sem realmente enviá-las. O propósito é controlar o histórico das notificações, servindo como um projeto de refinamento de habilidades e demonstração de skills.
https://github.com/dehsilvadeveloper/laravel10-notification

api docker eloquent laravel laravel10 mysql php php8 rest-api scribe-api-documentation

Last synced: about 1 month ago
JSON representation

Uma API feita com Laravel 10 que simula um sistema de notificações, gerenciando informações de notificações por meio de endpoints, sem realmente enviá-las. O propósito é controlar o histórico das notificações, servindo como um projeto de refinamento de habilidades e demonstração de skills.

Awesome Lists containing this project

README

        


Laravel Logo

# Laravel 10 Notification 🔥 🚀

This is a **Laravel v10.x** api to *emulate* a notification system, manipulating the notifications data through defined endpoints. No real notifications are dispatched, the application is just for controlling the notifications history.

The project uses a *Dockerized* environment and was created for refinement of **Laravel** knowledge considering the newest version of the framework (at the time of his creation). It also work as a skills showcase.

## Build with

| Name | Version |
| ---------- | -------- |
| Laravel | v10.x |
| PHP | v8.2.x |
| Docker | v20.10.x |
| Docker Compose | v3.8.x |
| Redis | v6.2.x |
| Mysql | v8.0.x |

## Objectives

- Use concepts of single action controllers
- Use concepts of service pattern, with short service classes
- Use concepts of repository pattern
- Use Data Transfer Objects (DTOs) to transport groups of data between the application layers
- Use Form-Request classes to validate input data
- Use resource classes to format the output data of endpoints
- Use customized pagination with one of the endpoints
- Implementing API endpoints documentation using the package **Scribe**
- Create unit tests for the application using PHPUNIT

## Docs

* [Getting Started](./documentations/getting_started.md)
* [Getting Started (For Windows users)](./documentations/getting_started_for_windows.md)
* [Adding new dependencies](./documentations/adding_new_dependencies.md)
* [Api Documentation](./documentations/api-documentation.md)
* [Available Make Scripts](./documentations/available_make_scripts.md)