Skip to content

Latest commit

 

History

History
65 lines (51 loc) · 1.84 KB

File metadata and controls

65 lines (51 loc) · 1.84 KB

FastAPI Project - Profesjonalna Struktura

📁 Struktura Projektu

FastAPIProject/
├── main.py                 # Główny plik aplikacji
├── test_main.http          # Plik testowy dla HTTP requests
├── routers/                # Routery (kontrolery)
│   ├── __init__.py
│   ├── basic.py           # Podstawowe endpointy
│   └── items.py           # Endpointy dla itemów
├── schemas/               # Schematy Pydantic
│   ├── __init__.py
│   └── item.py           # Schematy dla itemów
└── models/               # Modele danych (przyszłe rozszerzenia)
    └── __init__.py

🚀 Uruchomienie

python -m uvicorn main:app --reload --host 127.0.0.1 --port 8000

📚 Dostępne Endpointy

Główne

  • GET / - Strona główna
  • GET /swagger - Swagger UI
  • GET /redoc - ReDoc dokumentacja
  • GET /openapi.json - OpenAPI schema

API v1 - Podstawowe (/api/v1)

  • GET /api/v1/ - Powitanie API
  • GET /api/v1/health - Health check
  • GET /api/v1/hello/{name} - Spersonalizowane powitanie

API v1 - Itemy (/api/v1/items)

  • POST /api/v1/items/ - Dodaj nowy item
  • GET /api/v1/items/ - Pobierz wszystkie itemy (z paginacją)
  • GET /api/v1/items/{item_id} - Pobierz item po ID
  • PUT /api/v1/items/{item_id} - Aktualizuj item
  • DELETE /api/v1/items/{item_id} - Usuń item

🎯 Funkcje

  • ✅ Routery z prefiksami i tagami
  • ✅ Schematy Pydantic z walidacją
  • ✅ Automatyczna dokumentacja Swagger/ReDoc
  • ✅ CORS middleware
  • ✅ Obsługa błędów HTTP
  • ✅ Paginacja
  • ✅ Timestampy
  • ✅ Walidacja danych wejściowych

🔧 Testowanie

Użyj pliku test_main.http w PyCharm lub VS Code do testowania endpointów.

📖 Dokumentacja

Otwórz w przeglądarce: