Golang-powered backend application for mobile app that allows airplane pilots to record their flights and track career.
EC2 hostname: ec2-13-48-148-72.eu-north-1.compute.amazonaws.com
GET /api/info
GET /api/profile
PUT /api/profile
Parameter | Type | Description |
---|---|---|
userRequest |
json |
Required. JSON body of user profile information to update.` |
GET /api/contacts
This endpoint retrieves a list of contacts for a user. The user ID is obtained from the context.
POST /api/contacts
Parameter | Type | Description |
---|---|---|
contactRequest |
json |
Required. JSON body of contact information to insert. |
PUT /api/contacts/:id
Parameter | Type | Description |
---|---|---|
id |
int |
Required. Id of contact to update. |
contactRequest |
json |
Required. JSON body of contact information to update. |
DELETE /api/contacts/:id
Parameter | Type | Description |
---|---|---|
id |
int |
Required. Id of contact to delete` |
- 🐹 Go (Golang): Efficient and performant language for backend development.
- 🍸 GIN Framework: Lightweight HTTP framework for building APIs.
- 🗃️ PostgreSQL (Database): Utilized for persistent data storage.
- 🔐 Firebase ApiKeyAuth: Token-based authentication for secure communication.
- 📬 Postman: API development and testing tool.
- 💻 IntelliJ GoLand: Integrated development environment for Go.
- ☘ Ginkgo: Ginkgo is a testing framework for Go designed to help you write expressive tests.
- Ω Gomega: Gomega is a matcher/assertion library. It is best paired with the Ginkgo BDD test framework, but can be adapted for use in other contexts too.
- ♻ Swaggo package: Swag converts Go annotations to Swagger Documentation 2.0.
- 🔑 Validator package: Validator is a validation library for Go that ensures data integrity and adherence to specified rules and constraints. It's used to validate user inputs, API requests, and other data structures within the application, ensuring they meet defined criteria before processing. This helps maintain data consistency, security, and overall application reliability.
- 🖨Gomock: gomock is a mocking framework for the Go programming language. It integrates well with Go's built-in testing package, but can be used in other contexts too.
- 🎫 golangci-lint: golangci-lint is a powerful static analysis tool for Go that helps identify and fix various code issues, ensuring code quality and adherence to best practices.