Bayside Buzz is an event listing website with a dashboard for new listings.
Requirements: make, docker, air, goose, sqlc, gorilla/mux/ godotenv
- Ensure all depencies are installed
go mod tidy
- Copy
env.example
to.env
file.
cp env.example .env
-
Get Appwrite API Key, Project ID & Bucket ID.
-
Build and run PostgresSQL server
docker build -t bayside-buzz-postgres .
docker run -p 5432:5432 -e POSTGRES_PASSWORD=mypassword bayside-buzz-postgres
- Build and run the API server
# Dev
make watch
# Build
make build
# Run
./main
Home
- Lists all posted events and available organizers for the events.
Single Event
- Dynamic route that displays all information for an event.
Contact
Login & Register (Limits to only one admin user)
Dashboard (Private)
- Shows the total number of events & organizers
- Lists all events
Create Organizers (Private)
- Allows you to create a new organizer
- Lists all organizers
Create Event
- Creates a new event
Run build make command with tests
make all
Build the application
make build
Run the application
make run
Live reload the application:
make watch
Run the test suite:
make test
Clean up binary from the last build:
make clean
Run migration up
make migrate-up
Rollback migrations
make migrate-rollback
Generates SQLc queries
make sqlc-generate
- Go & Gorilla Mux
- Templ
- Tailwind
- HTMX
- Postgres
- Appwrite
- Fix UI/UX for dashboard
- Add a way to manage paid ads
- Ability to share an event
- Switch to Postgres
- Deploy