Logo Lanfrica

DavidBugger/learn-hausa-backend

Domain:

natural language processing

Record type:

software
Creator:
Dav
Host:
# Learn Hausa API Documentation ## Overview The Learn Hausa API is a comprehensive RESTful API for learning the Hausa language. It provides endpoints for user authentication, lesson management, vocabulary, quizzes, and progress tracking. ## API Documentation Access Once your Django server is running, you can access the interactive API documentation at: ### Swagger UI (OpenAPI) - **URL**: `localhost` - **Features**: Interactive API explorer with request/response examples - **Best for**: Testing API endpoints and understanding request formats ### ReDoc - **URL**: `localhost` - **Features**: Clean, readable documentation with detailed descriptions - **Best for**: Reading comprehensive API documentation ### OpenAPI Schema - **URL**: `localhost` - **Format**: JSON schema following OpenAPI 3.0 specification - **Best for**: Generating client SDKs or importing into API tools ## Quick Start 1. **Install dependencies**: ```bash pip install -r requirements.txt ``` 2. **Run migrations**: ```bash python manage.py migrate ``` 3. **Start the development server**: ```bash python manage.py runserver ``` 4. **Access documentation**: - Open `localhost` for Swagger UI - Open `localhost` for ReDoc ## Authentication The API uses JWT (JSON Web Tokens) for authentication. Include the access token in the Authorization header: ``` Authorization: Bearer ``` ### Getting Tokens 1. **Register**: `POST /api/v1/auth/register/` 2. **Login**: `POST /api/v1/auth/login/` 3. **Refresh**: `POST /api/v1/auth/token/refresh/` ## API Endpoints Overview ### Authentication (`/api/v1/auth/`) - `POST /register/` - Register new user - `POST /login/` - User login - `POST /token/refresh/` - Refresh access token - `GET /profile/` - Get user profile - `PUT /profile/` - Update user profile - `GET /progress/` - Get user progress - `POST /progress/` - Create progress record ### Lessons ( …

Languages