Welcome to TaskWise! This project is designed to simplify task management and streamline team collaboration. The application provides a robust task tracking system with features like due date monitoring, role-based status transitions, and notifications.
To start using TaskWise, follow these steps:
-
Clone the repository to your local machine:
git clone https://github.com/abdulbasit-dev/laravel-taskwise.git cd laravel-taskwise -
Install project dependencies using Composer:
composer install
-
Copy the
.env.examplefile and configure your environment variables:cp .env.example .env php artisan key:generate
-
Create and seed the database with fake data using the following command (optional):
php artisan migrate --seed
-
Start the Laravel development server:
php artisan serve
-
Base Url For the api will be:
http://localhost:8000/api/v1 -
In the root directory find this replated postman file:
- [Laravel Task Management.postman_collection.json] the collection tha contain requests.
- [TaskWise Local.postman_environment.json] environment variables
Please import both of them and with you will be good to go :)
TaskWise utilizes the following dependencies:
- Laravel Framework Laravel Framework
- laravel/sanctum: A lightweight package for API authentication using Laravel's built-in features.
- maatwebsite/excel: A package for importing and exporting Excel and CSV files in Laravel applications.
- spatie/laravel-permission: A package for managing role-based permissions and authorization in Laravel applications.
Make sure to install and configure these dependencies according to the provided links and documentation.
We have already set up email sending in this project, and we're using MailTrap, a testing environment for catching and inspecting emails. You can check the emails we send from the application without signing up for MailTrap. We've provided the MailTrap credentials, so follow the steps below:
-
Visit MailTrap Inbox: Open MailTrap Inbox to view the emails sent from the application. This link will take you directly to the inbox where you can see the emails.
-
Login to MailTrap: Use the following MailTrap login credentials to access the inbox:
- Email: basit99dev@gmail.com
- Password: 12345678
-
Check Received Emails: In the MailTrap inbox, you'll find the emails that have been sent from the application. You can inspect the content, headers, and attachments of these emails.
-
Queue Worker (Important): To ensure that emails are sent correctly and asynchronously, Open your
.envfile and set theQUEUE_CONNECTIONtodatabase, and then run the following command in your terminal:php artisan queue:work
This command starts the Laravel queue worker, which processes jobs in the background. It's essential for sending emails and performing other queued tasks.