# Task Manager API A simple task management API built with FastAPI and SQLite. ## Features - Create, read, update, and delete tasks - Task priority levels (low, medium, high) - Task completion status tracking - Automatic timestamps for creation and updates - Health check endpoint - Interactive API documentation ## Installation 1. Install dependencies: ```bash pip install -r requirements.txt ``` 2. Run database migrations: ```bash alembic upgrade head ``` 3. Start the application: ```bash uvicorn main:app --reload ``` The API will be available at `http://localhost:8000` ## API Endpoints - `GET /` - Root endpoint with API information - `GET /health` - Health check endpoint - `GET /docs` - Interactive API documentation (Swagger UI) - `GET /redoc` - Alternative API documentation - `POST /tasks/` - Create a new task - `GET /tasks/` - List all tasks (with pagination) - `GET /tasks/{task_id}` - Get a specific task - `PUT /tasks/{task_id}` - Update a task - `DELETE /tasks/{task_id}` - Delete a task ## Task Schema ```json { "title": "string", "description": "string (optional)", "completed": false, "priority": "medium" } ``` Priority levels: `low`, `medium`, `high` ## Database The application uses SQLite with the database file stored at `/app/storage/db/db.sqlite`. ## Environment Variables No environment variables are required for basic operation. The application uses SQLite with default settings.