Logo Lanfrica

Donny-C-1/amalajeun-web-service

Type de record:

software
Créateur:
Don
Hôte:
A Go-based backend API for AmalaJeun—a platform for discovering Amala spots in Lagos, Nigeria. The API includes AI agent capabilities for adding, verifying, and discovering spots. # AmalaJẹun Backend API A Go-based backend API for AmalaJẹun — a platform for discovering Amala spots in Lagos, Nigeria. The API includes AI agent capabilities for adding, verifying, and discovering spots. ## Features - **Spot Management**: Add, list, and verify Amala spots - **Review System**: Add and retrieve reviews for spots - **Multiple Sources**: Support for user-generated, AI agent, and scraper-sourced data - **Verification System**: Mark spots as verified - **Pagination**: Efficient data retrieval with pagination support - **Filtering**: Filter spots by verification status and source ## Tech Stack - **Language**: Go 1.25.1 - **Framework**: Gin (HTTP web framework) - **Database**: PostgreSQL - **ORM**: GORM - **Architecture**: Clean architecture with separate packages for models, handlers, routes, and database ## Project Structure ``` AmalaJẹun/ ├── main.go # Application entry point ├── go.mod # Go module dependencies ├── models/ # Data models │ ├── spot.go # Spot model │ └── review.go # Review model ├── database/ # Database configuration │ └── database.go # Connection and migration setup ├── handlers/ # HTTP request handlers │ ├── spot_handlers.go # Spot-related endpoints │ └── review_handlers.go # Review-related endpoints └── routes/ # Route definitions └── routes.go # API route setup ``` ## Database Setup ### Prerequisites - PostgreSQL installed and running - Database created (default: `amalajẹun`) ### Environment Variables Set the following environment variables (optional, defaults provided): ```bash DB_HOST=localhost DB_PORT=5432 DB_USER=postgres DB_PASSWORD=password DB_NAME=amalajeun DB_SSLMODE=disable PORT=8080 GIN_MODE=debug ``` ## Installation & Running 1. **Clone and navigate to the project**: ```bash cd AmalaJẹun ``` 2. **Install dependencies**: ```bash go mod tidy ``` 3. **Run the application**: ` …

Languages

Licenses