A scalable, session-based web application built with Golang, designed for simplicity and efficiency.
- Built with Golang, utilizing modern frameworks.
- Supports job scheduling and task queues using the Asynq package.
- Database migrations and management with Makefile commands.
- Fully configurable via
.envfile.
Before starting, ensure you have:
-
Golang installed (version >= 1.19 recommended).
-
Make utility installed on your system.
-
Access to a PostgreSQL/MySQL database.
-
A
.envconfiguration file. To set it up:cp .env.example .env
-
change go env proxy to avoid getting 403 error
go env -w GOPROXY=https://goproxy.io,direct
-
download project dependencies
go mod download
Generate the SQL migrator and database configuration:
make generate-sql-migrator-dbconfigApply database migrations:
make migration-upTo run the application, execute:
make runStart the job worker to handle background tasks:
make start-workerStart the task scheduler for periodic jobs:
make start-schedulego to admin route => /monitoring
Run the following command to apply migrations:
make migration-upTo undo the last migration, use:
make migration-downWe welcome contributions! To get started:
- Fork the repository.
- Create a feature branch:
git checkout -b feature/your-feature-name
- Commit your changes and open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
If you have any questions or run into issues, feel free to open an issue or contact us directly.
🎉 Happy coding!