SemangQa is a project that provides a Laravel API backend for building a task management application using React on the frontend. The API includes authentication (login and registration) functionality and allows users to manage tasks by adding, deleting, updating, and retrieving specific tasks or all tasks.
SemangQa aims to provide a solid foundation for developing a task management application using the Laravel PHP framework for the backend and React for the frontend. This project focuses on implementing authentication and CRUD operations for tasks.
- User authentication (login , registration, Get User Data )
- Add, delete, update, and retrieve specific tasks.
- Get a list of all tasks.
- Secure API endpoints.
Before you begin, ensure you have the following installed:
- PHP >= 8.1
- Composer
- Laravel
- MySQL or another compatible database system
-
Clone the repository:
git clone https://github.com/omarhenidi/SemangQa-Backend.git
-
Clone the repository:
cd SemangQa-Backend
-
Install the dependencies:
composer install
-
Create a copy of the .env.example file and name it .env.
-
Configure your database settings in the .env file:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=your_database_name DB_USERNAME=your_database_username DB_PASSWORD=your_database_password
-
Generate the application key:
php artisan key:generate
-
Run database migrations:
php artisan migrate
-
Start the Laravel development server:
php artisan serve
- POST /api/register: Register a new user.
- POST /api/login: User login.
- GET /api/tasks: Get a list of all tasks.
- GET /api/tasks/{id}: Get a specific task.
- POST /api/tasks: Add a new task.
- PUT /api/tasks/{id}: Update a task.
- DELETE /api/tasks/{id}: Delete a task.
Contributions are welcome! To contribute to SemangQa, follow these steps:
-
Fork the repository.
-
Create a new branch for your feature or bug fix:
git commit -m "Add your commit message here"
-
Make your changes and commit them:
git commit -m "Add your commit message here"
-
Push your changes to your forked repository:
git push origin feature/your-feature-name
-
Create a pull request on the main repository.
Please follow our Code of Conduct when contributing.