From 830cce684c91f204c15cb0abb51a5b1ece340aa3 Mon Sep 17 00:00:00 2001 From: aspasskiy Date: Thu, 2 Jan 2025 12:31:44 +0300 Subject: [PATCH] readme md --- readme.md | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 readme.md diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..19e9d8f --- /dev/null +++ b/readme.md @@ -0,0 +1,77 @@ +# Gerald - Feedback Application Server + +Gerald is an open-source Golang server designed to provide support for mobile apps by allowing users to submit feedback and upvote existing feedback. This server follows a clean architecture approach and utilizes the go-swagger library for API documentation and code generation. + +## Features + +- Create feedback +- Get all feedback +- Upvote feedback +- Get feedback for a specific project + +## Getting Started + +### Prerequisites + +- Go 1.22 or later +- PostgreSQL database + +### Installation + +1. Clone the repository: +bash +git clone https://github.com/your-username/gerald.git + +2. Navigate to the project directory: +bash +cd gerald + + +3. Install dependencies: +bash +go mod download + + +4. Set up the PostgreSQL database and update the connection string in the configuration file. + +5. Run database migrations: +bash +make migrate + + +6. Start the server: +bash +make run + + +The server will be running at `http://localhost:8080`. + +### API Documentation + +The API documentation is generated using go-swagger and can be accessed at `http://localhost:8080/swagger-ui/`. + +### Configuration + +The server configuration can be found in the `config.go` file. You can modify the settings according to your needs. + +### Testing + +Run the tests with the following command: +bash +make test + + +### Linting + +Run the linter with the following command: +bash +make lint + + +## Contributing + +Contributions are welcome! Please follow the [contributing guidelines](CONTRIBUTING.md) when submitting pull requests. + +## License + +This project is licensed under the [MIT License](LICENSE). \ No newline at end of file