This is not a web framework. It generates a skeleton web project for you to kick-ass.
Feel free to use or rip-out any of its parts.
-
PostgreSQL
-
Go programming language, version 1.3.x or newer.
-
go get github.com/go-bootstrap/go-bootstrap
-
$GOPATH/bin/go-bootstrap -dir github.com/{git-user}/{project-name}
-
Start using it:
cd $GOPATH/src/github.com/{git-user}/{project-name} && go run main.go
If you have PGUSER
, PGPASSWORD
, PGHOST
, PGPORT
, PGSSLMODE
environment variables set,
they will be used to generate and bootstrap the database.
This generator makes A LOT of decisions for you. Here's the list of things it uses for your project:
-
PostgreSQL is chosen for the database.
-
bcrypt is chosen as the password hasher.
-
Bootstrap Flatly is chosen for the UI theme.
-
Session is stored inside encrypted cookie.
-
Static directory is located under
/static
. -
Model directory is located under
/dal
(Database Access Layer). -
It does not use ORM nor installs one.
-
Test database is automatically created under
$GO_BOOTSTRAP_PROJECT_NAME-test
. -
A minimal Dockerfile is provided.
-
A minimal Vagrantfile is provided.
-
github.com/tools/godep is chosen to manage dependencies.
-
github.com/jmoiron/sqlx is chosen to connect to a database.
-
github.com/gorilla is chosen for a lot of the HTTP plumbings.
-
github.com/carbocation/interpose is chosen as the middleware library.
-
github.com/tylerb/graceful is chosen to enable graceful shutdown.
-
github.com/rnubel/pgmgr is chosen as the database migration and management tool.
-
github.com/Sirupsen/logrus is chosen as the logging library.