{"id":30738367,"url":"https://github.com/lifan2029/api-todo-list","last_synced_at":"2026-05-06T02:32:21.395Z","repository":{"id":312688587,"uuid":"1047944150","full_name":"lifan2029/api-todo-list","owner":"lifan2029","description":"Laravel-powered To-Do REST API with MySQL and JWT authentication: tasks, labels, priorities, search and pagination. Fully dockerized (Docker Compose), ships with migrations \u0026 seeders, ready for local dev and deploy.","archived":false,"fork":false,"pushed_at":"2025-09-01T11:39:44.000Z","size":81,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-01T12:39:44.643Z","etag":null,"topics":["api","docker","jwt","laravel","mysql","php","rest-api","todo","todolist"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lifan2029.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-31T15:25:52.000Z","updated_at":"2025-09-01T11:39:47.000Z","dependencies_parsed_at":"2025-09-01T12:49:51.007Z","dependency_job_id":null,"html_url":"https://github.com/lifan2029/api-todo-list","commit_stats":null,"previous_names":["lifan2029/api-todo-list"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/lifan2029/api-todo-list","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lifan2029%2Fapi-todo-list","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lifan2029%2Fapi-todo-list/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lifan2029%2Fapi-todo-list/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lifan2029%2Fapi-todo-list/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lifan2029","download_url":"https://codeload.github.com/lifan2029/api-todo-list/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lifan2029%2Fapi-todo-list/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273517419,"owners_count":25119767,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","docker","jwt","laravel","mysql","php","rest-api","todo","todolist"],"created_at":"2025-09-03T22:01:41.768Z","updated_at":"2026-05-06T02:32:21.376Z","avatar_url":"https://github.com/lifan2029.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🗒️ Todo List API\n\nA simple REST API for managing tasks (todo list), built with **Laravel 10 (PHP 8.2)** and **Docker**.  \nThis project is a **pet project** and serves as a demonstration of REST API architecture with online **Postman documentation**.\n\n---\n\n## 🚀 Tech Stack\n\n- **PHP 8.2**\n- **Laravel 10**\n- **Docker / Docker Compose**\n- **MySQL**\n- **Composer**\n- **Postman** (for API documentation)\n\n---\n\n## 🧩 Features\n\n- Create new tasks  \n- Retrieve all tasks  \n- Update and delete tasks  \n- Mark tasks as completed / uncompleted  \n- Filter tasks by status  \n\n---\n\n## ⚙️ Installation \u0026 Setup\n\n### 1. Clone the repository\n\n```bash\ngit clone https://github.com/lifan2029/api-todo-list.git\ncd api-todo-list\n```\n\n### 2. Copy environment file\n\n```bash\ncp .env.example .env\n```\n\n### 3. Configure `.env` variables\n\n```env\nDB_CONNECTION=mysql\nDB_HOST=laravel-db\nDB_PORT=3306\nDB_DATABASE=api_todo_list\nDB_USERNAME=todolistuser\nDB_PASSWORD=ortERSAkiEntALMaXI\n```\n\n### 4. Build and start Docker containers\n\n```bash\ndocker compose up -d --build\n```\n\n### 5. Install Laravel dependencies\n\n```bash\ndocker compose exec laravel-php composer install\n```\n\n### 6. Generate application key\n\n```bash\ndocker compose exec laravel-php php artisan key:generate\n```\n\n### 7. Run database migrations\n\n```bash\ndocker compose exec laravel-php php artisan migrate\n```\n\n---\n\n## 🧠 API Endpoints\n\n| Method | Endpoint | Description |\n|--------|-----------|-------------|\n| `GET` | `/api/v1/task` | Get all tasks |\n| `POST` | `/api/v1/task/store` | Create a new task |\n| `PUT` | `/api/v1/task/update/{id}` | Update a task |\n| `PUT` | `/api/v1/task/complete/{id}` | Complete a task |\n| `DELETE` | `/api/v1/task/delete/{id}` | Delete a task |\n\nExample request (create a task):\n```json\nPOST /api/v1/task/store\n{\n  \"title\": \"Build a demo project\",\n  \"description\": \"Create an API for a todo list\",\n  \"due_date\": \"01.09.2025 17:51\",\n  \"priority_id\": 1\n}\n```\n\n---\n\n## 📘 API Documentation (Postman)\n\nThe online Postman collection is available here:  \n👉 [Open Postman Collection](https://www.postman.com/coreflowx/api-todo-list)\n\n---\n\n## 🔧 Useful Commands\n\n```bash\ndocker compose exec laravel-php php artisan migrate:fresh --seed   # Recreate DB with seed data\ndocker compose exec laravel-php php artisan test                   # Run tests\ndocker compose logs -f laravel-php                                 # View container logs\n```\n\n---\n\n## ✨ Author\n\nDeveloped by [lifan2029](https://github.com/your-username) — Fullstack developer.  \nIf you like this project, feel free to ⭐ star it on GitHub!\n\n📧 lifan2029@gmail.com  \n\n---\n\n\u003e 🧠 This project was created for demonstrate Laravel API development with Docker.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flifan2029%2Fapi-todo-list","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flifan2029%2Fapi-todo-list","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flifan2029%2Fapi-todo-list/lists"}