Skip to content

neltex/testtasks

Repository files navigation

Steps to run the project: - Clone the project - Run npm install - Run php artisan migrate (Must have MySQL installed) - Run php artisan serve - Run npm run dev

With Docker (Recommended):
- Run `docker-compose up -d --build`
- Run `docker-compose exec -it laravel-app bash && rm -rf public/hot`
- View the project on `http://localhost:8000`

Authorization: - Relationships - User has many tasks (Defined in User model) - Task belongs to a user (Defined in Task model) - TasksController only has access to tasks that belong to the authenticated user - Middleware - Authenticated users can only access the tasks that belong to them

Authentication: - Login - Register - Logout - Forgot Password - Reset Password

UI/UX: - CRUD Operations - Create Tasks with title, due date, and description with validation. - Users dont have to refresh the page or navigate to another page to create a task. (Better UX) - Read the created tasks (Referenced in TasksCard) - Update the tasks (Referenced in TasksCard) - Users can update the title, due date, and description of the task. - Users can also update the status from a dropdown (Pending, In Progress, Completed) - Delete the tasks (Referenced in TasksCard) - Profile - Users can update their profile information (Name, Email, Password) - Validation: - Validation is done on the frontend and backend. - Application ensures all fields are being entered before submitting the form. - Progress bar is displayed when the form is being submitted. - Error Handling: - Errors are displayed in a toast notification. - Build Tools: - Vite.js is used to build the frontend and make it faster at build time.

Running Tests: - Run php artisan test to run the tests - Tests are located in the tests/Feature directory - TasksControllerTest (Tests the CRUD operations of the TasksController) - Tests are written using PHPUnit

Docker: - Docker is used to run the project in a containerized environment. This is deployed on ECS. - Dockerfile sets the base image and docker compose is used to run both the frontend and backend. - However, the docker compose is the structure to run the project with all of its services with different images inside one container.

CI/CD: - Github Actions is used for CI/CD.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages