A TUI-driven Project Scaffolding Tool for Go Backend Services
Effortlessly generate robust backend project structures with your favorite frameworks, databases, and architectural patterns.
Tired of manually setting up boilerplate for every new Go backend project? GoBack automates the entire process. Built with the elegant Bubble Tea framework, it provides a beautiful and intuitive Terminal User Interface (TUI) to configure and generate projects in seconds, letting you focus on writing business logic, not setup code.
- Interactive TUI Mode: A beautiful, step-by-step terminal interface for effortless project configuration.
- Powerful CLI Mode: A fully-featured command-line interface for automation and scripting.
- Rich Tech Stack: Mix and match popular frameworks, databases, ORMs, and architectures.
- DevOps Ready: Generate CI/CD and infrastructure configuration files for Docker, Kubernetes, and more.
- Intelligent Scaffolding: Automatically generates
go.mod
,Makefile
,.gitignore
, and a starterREADME.md
. - Customizable: Configure default settings and save your preferences for even faster generation.
GoBack offers a wide range of options to build your perfect stack:
Category | Supported Options |
---|---|
Frameworks | Fiber , Gin , Chi , Echo |
Databases | PostgreSQL , MySQL , SQLite |
ORM / Tools | GORM , SQLC , SQLX |
Architecture | Simple , DDD , Clean Architecture , Hexagonal |
DevOps | Kubernetes , Helm , Terraform , Ansible , Docker |
- Go 1.23 or higher.
- A terminal that supports 256 colors (recommended for the best TUI experience).
go install github.com/NarmadaWeb/goback@latest
# your favorite version
go install github.com/NarmadaWeb/goback@0.1.2 # x.x.x
go install -u github.com/NarmadaWeb/goback@latest
git clone https://github.com/NarmadaWeb/goback.git
cd goback
go build .
sudo mv goback /usr/local/bin/
Simply run the command to launch the interactive TUI.
goback
# or
goback tui
The TUI will guide you through:
- Selecting your framework, database, and ORM.
- Choosing an architectural pattern.
- Optionally adding DevOps tool configurations.
- Entering your project details.
- Reviewing your selections and generating the project.
For scripting and automation, use the new
command with flags.
# Generate a simple Fiber API with PostgreSQL and GORM
goback new my-api \
--framework fiber \
--database postgresql \
--tool gorm \
--architecture ddd
# See all available flags
goback new --help
Click to see more CLI examples
# Create a Gin API with Clean Architecture and a custom module path
goback new user-service \
--framework gin \
--database mysql \
--tool gorm \
--architecture clean \
--module https://github.com/my-org/user-service
# Create a Chi API with full DevOps support
goback new payment-service \
--framework chi \
--database postgresql \
--tool sqlx \
--architecture hexagonal \
--devops \
--devops-tools kubernetes,helm,terraform,ansible,docker
Contributions are welcome! Whether it's adding a new feature, fixing a bug, or improving documentation, your help is appreciated.
- Fork the repository.
- Create a new feature branch (
git checkout -b feature/my-amazing-feature
). - Make your changes and commit them (
git commit -m 'feat: Add some amazing feature'
). - Push to the branch (
git push origin feature/my-amazing-feature
). - Open a Pull Request.
Please check our Contributing Guidelines and look for issues tagged with good first issue
.
This project is licensed under the MIT License. See the LICENSE file for details.
GoBack is built on the shoulders of giants. Our heartfelt thanks to the creators and maintainers of these amazing libraries:
- Bubble Tea for the TUI framework.
- Lipgloss for terminal styling.
- Cobra for the powerful CLI.
- Viper for configuration management.
Made with ❤️ by the NarmadaWeb team for the Go community.