README.md
Go Blueprint is a CLI tool that allows users to spin up a Go project with the corresponding structure seamlessly. It also gives the option to integrate with one of the more popular Go frameworks (and the list is growing with new features)!
<a id="install"></a>
<h2> <picture> </picture> Install </h2>go install github.com/melkeydev/go-blueprint@latest
This installs a go binary that will automatically bind to your $GOPATH
if you’re using Zsh, you’ll need to add it manually to
~/.zshrc.
GOPATH=$HOME/go PATH=$PATH:/usr/local/go/bin:$GOPATH/bin
don't forget to update
source ~/.zshrc
npm install -g @melkeydev/go-blueprint
brew install go-blueprint
Then in a new terminal run:
go-blueprint create
You can also use the provided flags to set up a project without interacting with the UI.
go-blueprint create --name my-project --framework gin --driver postgres --git commit
See go-blueprint create -h for all the options and shorthands.
<a id="frameworks-supported"></a>
<h2> <picture> </picture> Frameworks Supported </h2><a id="database-support"></a>
<h2> <picture> </picture> Database Support </h2>Go Blueprint now offers enhanced database support, allowing you to choose your preferred database driver during project setup. Use the --driver or -d flag to specify the database driver you want to integrate into your project.
Choose from a variety of supported database drivers:
<a id="advanced-features"></a>
<h2> <picture> </picture> Advanced Features </h2>Blueprint is focused on being as minimalistic as possible. That being said, we wanted to offer the ability to add other features people may want without bloating the overall experience.
You can now use the --advanced flag when running the create command to get access to the following features. This is a multi-option prompt; one or more features can be used at the same time:
Note: Selecting Tailwind option will automatically select HTMX unless React is explicitly selected
<a id="blueprint-ui"></a>
<h2> <picture> </picture> Blueprint UI </h2>Blueprint UI is a web application that allows you to create commands for the CLI and preview the structure of your project. You will be able to see directories and files that will be created upon command execution. Check it out at go-blueprint.dev
<a id="usage-example"></a>
<h2> <picture> </picture> Usage Example </h2>Here's an example of setting up a project with a specific database driver:
go-blueprint create --name my-project --framework gin --driver postgres --git commit
Advanced features are accessible with the --advanced flag
go-blueprint create --advanced
Advanced features can be enabled using the --feature flag along with the --advanced flag.
HTMX:
go-blueprint create --advanced --feature htmx
CI/CD workflow:
go-blueprint create --advanced --feature githubaction
Websocket:
go-blueprint create --advanced --feature websocket
Tailwind:
go-blueprint create --advanced --feature tailwind
Docker:
go-blueprint create --advanced --feature docker
React:
go-blueprint create --advanced --feature react
Or all features at once:
go-blueprint create --name my-project --framework chi --driver mysql --advanced --feature htmx --feature githubaction --feature websocket --feature tailwind --feature docker --git commit --feature react
Visit documentation to learn more about blueprint and its features.
<a id="github-stats"></a>
<h2> <picture> </picture> GitHub Stats </h2> <p align="center"> </p><a id="license"></a>
<h2> <picture> </picture> License </h2>Licensed under MIT License