/anime-notification

Notifies you when defined animes are airing, built with Laravel.

Primary LanguagePHP

AnimeSchedule

License: MIT

  • The app allows you to add your favorite anime to your watch list and sends you real-time notifications when new episodes are released. Additionally, offers a built-in calendar, showing all the broadcast dates and times for the anime you're watching.
  • The system imports the animes, genres, images, etc. from the current season via an API and persists in the database.

Technologies

Installation

  1. Clone the project
  git clone https://github.com/luiz-moura/anime-schedule.git
  1. Create .env
  cp .env.example .env
  1. Start the server in background
  docker-compose up -d
  1. Create aliases for sail bash path
  alias sail='[ -f sail ] && bash sail || bash vendor/bin/sail'
  1. Generate key
  sail artisan key:generate
  1. Install composer dependencies
  sail composer install
  1. Install NPM dependencies
  sail npm install && sail npm run dev

🐘 Database

Create tables

  php artisan migrate:fresh

Application

The DDD was implemented based on the article written by Brent on October 17, 2019 - Domain-oriented Laravel . The following patterns were also used: repository pattern, actions and use cases, data transfer objects.

src
  └ Application
    ├── Providers
  └ Domains
    ├── Domain
    │   └── Actions
    │   └── UseCases
    │   └── DTOs
    │   └── Contracts
    │   └── Enums
    │   └── Exceptions
  └ Infrastructure
    │   └── Persistence
    │   └── Storage
    │   └── Integration
  └ Interfaces
    │   └── Console
    │   └── Http

Sail commands

Start queue

  sail queue:work

Stop the server

  sail stop

All commands sail

  sail help

✅ Run tests

  sail test

Commands

Run commands with sail

  sail artisan command:name
Command Description
app:import-animes Search animes airing from the api and register them in the database
app:notify-members Notifies members that the anime will be broadcast

🔗 Links

linkedin