Go application for booking/reservation system with Monolithic architecture.
- Built in Go version 1.20
- Uses chi lightweight and composable router
- Uses Alex Edward's SCS session management
- Uses nosurf Cross-Site Request Forgery attacks prevention
- Uses Bootstrap v5.3 templates
- Uses VanillaJS Datepicker date input
- Uses Notie JS library notifications
- Uses SweetAlert2 popup alert messaging
- Uses govalidator data check
- Uses Soda CLI migrations
- Uses pgx PostgreSQL driver
- Uses go-simple-mail SMTP emails sending
- Uses MailHog email testing tool
- Uses Foundation for Emails email template
- Uses RoyalUI-Free-Bootstrap-Admin-Template dashboard template
- Uses simple-datatables tables template
- Run project (Linux):
./run.sh
- Run go test:
go test -v
- Run all go tests in subdirectories:
go test -v ./...
- Run coverage test command:
go test -coverprofile=coverage.out && go tool cover -html=coverage.out
- Run migration tool (parameters: up|down|reset):
~/go/bin/soda migrate