Skip to content

Talha-74/project-managment

Repository files navigation

Laravel Logo

Project Management App

Loading...

Features

  1. Registration & Login
  2. Projects CRUD with sorting, filtering and pagination
  3. Tasks CRUD with sorting, filtering and pagination
  4. Create Tasks inside project
  5. Show all tasks or show tasks for a specific project
  6. Assign users to tasks
  7. View Tasks assigned to me
  8. Show dashboard with overview information

Installation

  1. Clone the project
  2. Navigate to the project's root directory using terminal
  3. Create .env file - cp .env.example .env
  4. Execute composer install
  5. Execute npm install
  6. Set application key - php artisan key:generate --ansi
  7. Execute migrations and seed data - php artisan migrate --seed
  8. Start vite server - npm run dev
  9. Start Artisan server - php artisan serve

Prerequisites

Before you begin, ensure you have met the following requirements:

  • PHP >= 8.2
  • Composer
  • Laravel 11
  • npm or yarn

Project Blog

Introduction

This README provides a comprehensive overview of the Laravel React Inertia project, outlining its setup and key features. Below, you'll find step-by-step instructions along with code snippets to guide you through the project's development.

Installation

To get started, follow these steps to install Laravel Breeze and set up the project environment:

  1. Install Laravel Breeze:
    composer require laravel/breeze --dev
  2. Run Breeze Installation:
    php artisan breeze:install
  3. Choose React and Dark Mode options during installation.

Enabling Dark Mode

To enable Dark Mode in your project, follow these steps:

  1. Open resources/layouts/app.blade.php.
  2. Add the dark class to the HTML tag:
    <html lang="{{ str_replace('_', '-', app()->getLocale()) }}" class="dark">
  3. open tailwind.config file and add this:
    export default {
     darkMode: 'class',
    

Email Verification

  • To enable email verification for users, follow these steps:
  • Implements MustVerifyEmail interface in the User model. If the .env file is not configured for email, verification links will be logged to storage/logs/laravel.log. Users can use this link to confirm their email and access the dashboard.

Development

  • Prepare Database

  1. Create migrations, projects, tasks.
  2. establish projects has many tasks relationship.
  3. create factories for projects and tasks.
  4. seed them in database seeder.
  • Create Controllers and define routes

  1. php artisan make:controller ProjectController --model=Project --requests --resource
  2. $ php artisan make:controller TaskController --model=Task --requests --resource
  3. $ php artisan make:controller UserController --model=User --requests --resource
  4. Remove the welcome and login routes and redirect to dashboard on /
    Route::redirect('/', '/dashboard');
  5. Dashboard route in middleware and using arrow function
    Route::middleware(['auth', 'verified'])->group(function() {
     Route::get('/dashboard', fn () => Inertia::render('Dashboard')) ->name('dashboard'); });
  6. Resource routes for all three controllers
    Route::resource('project', ProjectController::class);
    Route::resource('task', TaskController::class);
    Route::resource('user', UserController::class);
  7. In .editorconfig file, make the identation_size 2
    [*.{js, jsx}]
    indent_size = 2
  8. Highlight the active navbar or route
    <NavLink href={route("dashboard")} active={route().current("dashboard")} >
     Dashboard
    </NavLink>
  • Filtering Projects

Contributing

To contribute to Project, follow these steps:

  1. Fork this repository.
  2. Create a branch: git checkout -b <branch_name>.
  3. Make your changes and commit them: git commit -m '<commit_message>'
  4. Push to the original branch: git push origin <project_name>/<location>
  5. Create the pull request.

Alternatively, see the GitHub documentation on [creating a pull request].

Contact

If you want to contact me you can reach me at [email protected].

About

Project Management App in Laravel, React and Inertiajs

Resources

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published