readme md
This commit is contained in:
77
readme.md
Normal file
77
readme.md
Normal file
@@ -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).
|
||||||
Reference in New Issue
Block a user