This is a RESTful API for a simple social media application. It allows users to manage their posts, including creating, updating, and deleting posts, and provides authentication using JWT. The API is built using the Fiber framework and interacts with a PostgreSQL database.
- User Authentication: Secure user authentication using JWT.
- Post Management: Create, update, delete, and retrieve posts with ease.
- Scalable Architecture: Designed for scalability and maintainability.
- Monitoring: Integrated with Prometheus for metrics and monitoring.
- API Documentation: Swagger UI for exploring and testing API endpoints.
- Backend Framework: Go with Fiber
- Database: PostgreSQL
- Containerization: Docker
- Hosting: DigitalOcean
- Monitoring: Prometheus
- Documentation: Swagger and Vitepress
.
├── cmd
│ ├── index.html
│ └── main.go
├── config
│ ├── config.go
│ ├── metrics.go
│ └── migration.go
├── db
│ └── migrations/
├── internal
│ ├── di/
│ ├── domain/
│ ├── handler/
│ ├── middleware/
│ ├── repository/
│ ├── routes/
│ └── service/
├── pkg
│ ├── request/
│ └── response/
├── public
│ └── uploads/
├── vendor/
├── vitepress
│ ├── Dockerfile
│ ├── docs
│ ├── index.md
│ ├── package-lock.json
│ ├── package.json
│ ├── sticker.png
│ └── vite.config.js
├── Dockerfile
├── docker-compose.yaml
├── docs/
├── go.mod
├── go.sum
├── prometheus.yaml
├── README.md
└── wait-for-it.sh
- Go installed
- Docker installed
- PostgreSQL database
-
Clone the repository:
git clone https://github.com/elginbrian/Raion-Battlepass-2025.git cd Raion-Battlepass-2025
-
Set up the environment variables:
Copy the .env.example file to .env and configure the required variables.
-
Start the application:
docker compose build docker compose up
-
Access the application via:
localhost:8084