DeskDev is a robust project management web application based on the Kanban board methodology, tailored specifically for development, IT, and business teams. Built on the modern architecture of Laravel 12 and styled with a distinctive "Playful Neobrutalism" user interface, DeskDev delivers an engaging, interactive, and visually striking task management experience.
This project was developed as a capstone assignment, implementing industry-standard practices including session management, comprehensive authentication (manual and Google OAuth), complex relational database design, and responsive web design principles.
- Framework: Laravel 12 (PHP 8.2+)
- Database: MySQL (Local Environment) & PostgreSQL via Supabase (Cloud Sync)
- Frontend: Laravel Blade, Tailwind CSS v4, Vanilla JavaScript
- Authentication: Laravel Session Authentication & Laravel Socialite (Google OAuth)
- UI Architecture: Custom Neobrutalism Design System (Hard shadows, distinct borders, micro-animations)
- Comprehensive Authentication System
- Secure manual registration and login utilizing Email and Password (Session-based).
- Integrated Single Sign-On (SSO) via Google accounts.
- Project and Space Management
- Create and organize new projects with unique identifiers (Key Prefixes).
- Automated project progress tracking based on task status calculations.
- Interactive Kanban Board
- Intuitive drag-and-drop functionality for moving tasks between status columns.
- Customizable workflow columns to match team requirements (e.g., To Do, In Progress, Review).
- Rapid filtering capabilities to sort tasks by priority or type (Bug, Task, Story).
- Task Tracking and Details
- Management of Story Points, priority assignment (Low, Medium, High), and due date tracking.
- Real-time description editing via detailed modal views.
- Responsive and Playful Design
- Full mobile device support featuring an off-canvas sidebar menu.
- Engaging micro-animations on interactive elements, custom cursors, and system notifications.
The complete DeskDev web application interface, featuring the signature Neobrutalist design language, intuitive Kanban boards, and comprehensive project management dashboards.
DeskDev utilizes a robust relational schema centered around the following primary entities:
users: Securely manages authentication data including names, emails, encrypted passwords, and OAuth identifiers (google_id).projects: Acts as the central container for user-owned workspaces and their associated metadata.statuses: Defines the customizable Kanban columns that dictate the workflow for specific projects.tasks: The fundamental unit of work, containing detailed descriptions, priorities, and establishing the many-to-one relationships between workflow statuses and parent projects.
Follow these instructions to configure and run DeskDev in a local environment using XAMPP:
-
Clone the Repository
git clone https://github.com/yourusername/deskdev.git cd deskdev -
Install Dependencies
composer install npm install
-
Environment Configuration Duplicate the example environment file:
cp .env.example .env
Configure the
.envfile with your local MySQL credentials:DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=deskdev_db DB_USERNAME=root DB_PASSWORD=
-
Generate Application Key
php artisan key:generate
-
Execute Database Migrations Ensure your local MySQL service (XAMPP) is running, then execute:
php artisan migrate
-
Compile Frontend Assets and Start the Server
# Terminal 1: Compile CSS/JS assets npm run dev # Terminal 2: Initialize the Laravel development server php artisan serve
-
Access the Application Navigate to
http://localhost:8000in your preferred web browser.
Developed with dedication by Muhammad Zidane.
