Skip to content

Repository files navigation

Todo List App with Sanctum Authentication

A modern Todo List and Library management application built with Laravel 10, featuring secure Sanctum-based API authentication and a stunning landing page.

🚀 Features

✅ Authentication & Security

  • Sanctum-based API Auth: Secure token-based authentication for API requests.
  • Secure Login & Registration: Full authentication flow for both Web and API.
  • Forgot Password: Secure password recovery system with email reset links.
  • Protected Routes: Middleware ensures only authenticated users can access their data.

📝 Todo Management

  • Dashboard: A clean, modern dashboard to view all your tasks (accessible at /dashboard).
  • Full CRUD Support: Create, read, update, and delete tasks.
  • Toggle Status: Mark tasks as complete/incomplete instantly.
  • Data Isolation: Users only see and manage their own tasks.

📚 Library & Books Management

  • Library API: Manage libraries and search by name or address.
  • Books & Authors: Organize books with dedicated categories and author management.

🎨 Modern UI/UX

  • Stunning Home Page: A powerful, minimalist landing page with smooth animations and mesh gradients.
  • Tailwind CSS: Built with modern Tailwind for rapid UI development.
  • Responsive Design: Optimized for both desktop and mobile.
  • Interactive Elements: Glassmorphism, hover effects, and instant user feedback.

📖 API Documentation

  • Swagger Integration: Interactive API documentation available at /api/documentation.

🛠 Tech Stack

  • Framework: Laravel 10.x
  • Authentication: Laravel Sanctum
  • Frontend: Blade Templates & Tailwind CSS
  • Bundler: Vite
  • Database: MySQL
  • API Docs: L5-Swagger

⚙️ Installation

  1. Clone the repository

    git clone https://github.com/ArRahmaan17/todolist-auth-sanctum.git
    cd todolist-auth-sanctum
  2. Install Dependencies

    composer install
    npm install
  3. Environment Setup

    cp .env.example .env
    php artisan key:generate

    Configure your database settings in .env

  4. Run Migrations

    php artisan migrate:fresh
  5. Start Development Server

    # Terminal 1
    php artisan serve
    
    # Terminal 2
    npm run dev

🧪 Testing

The project includes comprehensive feature tests for Authentication and Todo management.

Run tests using Artisan:

php artisan test

Or using PHPUnit:

./vendor/bin/phpunit

📜 API Endpoints

Method Endpoint Description
POST /api/registration Register a new user
POST /api/login Login and get Bearer Token
POST /api/logout Revoke current token
GET /api/todos List all user todos
POST /api/todos Create a new todo
GET /api/todos/{id} Show specified todo
PUT /api/todos/{id} Update specified todo
DELETE /api/todos/{id} Delete specified todo
GET /api/library List all libraries
GET /api/author List all authors
GET /api/books List all books

📝 Guideline commit message

  • feat: A new feature
  • fix: A bug fix
  • docs: Documentation only changes
  • style: Changes that don't affect code meaning (formatting, missing semicolons, etc.)
  • refactor: Code change that neither fixes a bug nor adds a feature
  • perf: Code change that improves performance
  • test: Adding missing tests or correcting existing tests
  • chore: Changes to build process, dependencies, or tooling

About

Continuous Integration and Continuous Delivery/Deployment with zero down time standar on production, with todo app and sanctum auth

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages