Developer Roadmap
TopicStep 57 filesOpen folder on GitHub

Routers

README.md
View on GitHub

FastAPI CRUD with JSON and routers

Prequesite

  • siapkan venv
  • aktifkan venv
  • install fastapi
  • tambahkan file db.json
  • jalankan
    fastapi dev main.py
    

Features

  • Create, Read, Update, Delete user
  • JSON file sebagai penyimpanan data (db.json)
  • Swagger UI otomatis
  • Modular structure (router, service, data layer)
  • Tanpa ORM, tanpa database dan tanpa pydantic

Project Structure

project/
ā”œā”€ main.py # App bootstrap
ā”œā”€ users_router.py # Router / controller
ā”œā”€ users_service.py # Business logic
ā”œā”€ json_db.py # JSON file data access
ā”œā”€ db.json # Database file
ā”œā”€ README.md
└─ .venv/

Database (JSON File)

[
  {
    "id": 1,
    "name": "Pythonia",
    "email": "pythonia@mail.com",
    "is_active": true
  }
]

API Endpoints

  • Get users
  • Post users
    {
      "name": "Python",
      "email": "pythonia@mail.com",
      "is_active": true
    }
    
  • Get user by id
  • Update user (replace)
  • Update user (partial)
  • Delete user