{"id":21258314,"url":"https://github.com/josgard94/api-to-do-list-with-python-and-flask","last_synced_at":"2026-04-09T12:01:22.173Z","repository":{"id":176023038,"uuid":"654817753","full_name":"josgard94/API-to-do-list-with-python-and-flask","owner":"josgard94","description":"This code serves as an illustrative example of building an API using Python and Flask. It showcases the implementation of an API for managing a To-Do List, demonstrating fundamental CRUD operations such as task creation and updating.","archived":false,"fork":false,"pushed_at":"2023-07-02T07:08:48.000Z","size":15,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T21:34:08.177Z","etag":null,"topics":["api","api-rest","database","database-coneccion","example-project","flask","flask-api","learning-python","mysql","pyth","python","singleton-pattern","sqlalchemy","sqlalchemy-database","sqlalchemy-orm","sqlalchemy-python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/josgard94.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2023-06-17T03:33:50.000Z","updated_at":"2024-06-28T09:44:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"432d7db4-c4bf-4fda-83de-373091e10401","html_url":"https://github.com/josgard94/API-to-do-list-with-python-and-flask","commit_stats":null,"previous_names":["josgard94/basic-api-with-flask-and-python"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josgard94%2FAPI-to-do-list-with-python-and-flask","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josgard94%2FAPI-to-do-list-with-python-and-flask/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josgard94%2FAPI-to-do-list-with-python-and-flask/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josgard94%2FAPI-to-do-list-with-python-and-flask/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/josgard94","download_url":"https://codeload.github.com/josgard94/API-to-do-list-with-python-and-flask/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243692512,"owners_count":20332213,"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","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","api-rest","database","database-coneccion","example-project","flask","flask-api","learning-python","mysql","pyth","python","singleton-pattern","sqlalchemy","sqlalchemy-database","sqlalchemy-orm","sqlalchemy-python"],"created_at":"2024-11-21T04:08:17.938Z","updated_at":"2025-12-31T00:22:58.041Z","avatar_url":"https://github.com/josgard94.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📝 To-Do List API with Python \u0026 Flask\n\nThis project is a clean and minimal **RESTful API** for managing a simple To-Do list, built using **Python**, **Flask**, and **SQLAlchemy**.\n\n🔧 Designed for learning and scalability, this API demonstrates essential CRUD operations — perfect for those beginning backend development or looking to understand how Flask integrates with relational databases.\n\n---\n\n## 🚀 Features\n\n- ✅ Create new tasks\n- 🔍 Retrieve all tasks or a specific task by ID\n- ♻️ Update task content or completion status\n- 🗑 Delete tasks\n- 🔒 Modular architecture using Flask Blueprints\n- 🧩 SQLAlchemy for ORM and MySQL integration\n\n---\n\n## 🛠 Tech Stack\n\n- **Python 3**\n- **Flask**\n- **SQLAlchemy**\n- **MySQL** (easily adaptable to PostgreSQL or SQLite)\n- **REST API best practices**\n\n---\n\n## 📁 Project Structure\n```\nAPI-to-do-list-with-python-and-flask/ \n  ├── app.py # Application entry point \n  ├── config/ # Database configuration module \n  │ └── db.py \n  ├── controllers/ # Contains logic for task operations \n  │ └── task_controller.py \n  ├── database/ # Database connection helper \n  │ └── connection.py \n  ├── models/ # SQLAlchemy model(s) \n  │ └── task_model.py \n  ├── routes/ # Flask Blueprints for API routes \n  │ └── task_routes.py \n  └── README.md # Project overview (this file)\n```\n\n---\n\n## ▶️ Getting Started\n\n```bash\n# 1. Clone the repository\ngit clone https://github.com/josgard94/API-to-do-list-with-python-and-flask.git\n\n# 2. Navigate to the project directory\ncd API-to-do-list-with-python-and-flask\n\n# 3. Create a virtual environment \u0026 install dependencies\npython -m venv venv\nsource venv/bin/activate  # On Windows: venv\\Scripts\\activate\npip install -r requirements.txt\n\n# 4. Set up your MySQL database\n# Update config/db.py with your credentials\n\n# 5. Run the app\npython app.py\n```\n---\n## 📬 API Endpoints\n\n| Method | Endpoint       | Description              |\n|--------|----------------|--------------------------|\n| GET    | `/tasks`       | List all tasks           |\n| GET    | `/tasks/\u003cid\u003e`  | Retrieve a task by ID    |\n| POST   | `/tasks`       | Create a new task        |\n| PUT    | `/tasks/\u003cid\u003e`  | Update an existing task  |\n| DELETE | `/tasks/\u003cid\u003e`  | Delete a task            |\n---\n## ⭐ Like it?\nLeave a ⭐ if you enjoy it or find it useful!\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjosgard94%2Fapi-to-do-list-with-python-and-flask","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjosgard94%2Fapi-to-do-list-with-python-and-flask","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjosgard94%2Fapi-to-do-list-with-python-and-flask/lists"}