An API to connect customers with discounts at restaurants, bars, and snack bars.
This project aims to create a robust and scalable API to connect customers with offers and discounts offered by restaurants, bars, and snack bars. The API will offer features such as:
- User registration and authentication.
- Establishment (restaurants, bars, snack bars) registration and management.
- Publication and management of offers and discounts.
- Search for establishments by location, cuisine type, etc.
- Viewing establishment details, including menus and reviews.
- Integration with other systems (to be defined, such as delivery systems).
The API will be developed using the Echo framework, a high-performance web framework for Go.
Dockerization: We plan to dockerize the application to facilitate deployment and ensure consistency across different environments (development, testing, and production). This will allow the API to run on any system that supports Docker.
Name Consideration: As the focus has shifted to food establishments, I suggest considering renaming the repository to something more appropriate, such as discount-eats
, food-discounts
, or similar.
Currently, the project is in the initial development phase. The basic repository structure has been created, and the API implementation with Echo is in progress.
Next Steps:
- Initial Echo configuration.
- Implementation of the first API endpoints (e.g., authentication, establishment registration).
- Definition of the data model (including menu information, opening hours, etc.).
- Database configuration (to be defined).
- Creation of the Dockerfile and docker-compose.yml (when the application is in a more advanced state).
- Unit and integration tests.
After the initial implementation, instructions for running the API locally (with and without Docker) will be added here. It will generally involve the following steps:
Without Docker:
- Clone the repository:
git clone https://github.com/joaofilippe/discount-club.git
- Navigate to the project directory:
cd discount-club
- Install dependencies:
go mod tidy
(or similar) - Run the API:
go run main.go
(or similar)
With Docker:
- Clone the repository:
git clone https://github.com/joaofilippe/discount-club.git
- Navigate to the project directory:
cd discount-club
- Build the Docker image:
docker-compose build
- Run the Docker container:
docker-compose up
Contributions are welcome! If you want to contribute to this project, please follow these steps:
- Fork the repository.
- Create a branch with your feature:
git checkout -b feature/my-feature
- Commit your changes:
git commit -m 'Adds my feature'
- Push to your branch:
git push origin feature/my-feature
- Open a Pull Request.
This project is licensed under the MIT license.
João Filippe Rossi Rodrigues
- LinkedIn: https://www.linkedin.com/in/joaofilippe
- GitHub: https://github.com/joaofilippe
- Email: [email protected] (mailto:[email protected])