Birthday tracker integrated with Slack API to notify a channel about people's birthdays! It's a Web app written in Go to track birthdays of people.
Features:
- See overview of persons and their birthdays
- Add new person with birthday
- Remove persons
- Automatically pushing Slack message of today's birthdays
- Edit person
- Automatical birthday messages with LLM generated text
- Improved overview of birthdays in calendar view
Technical Features:
- Web Server running fully on Go's
net/httpstandard library - docker-compose for automatic container deployments
- Database migrations ran on app startup
- Frontend templated with Go's
html/templatestandard library - Minimal CSS for builds with TailwindCSS
- Setup CI/CD Pipeline on GitHub to build image
- Use HTMX because why not?
- Add telemetry setup
- docker / docker-compose
- go
- goose
- sqlc
- npm / tailwindcss
We have some environment variables on which we depend in this project. Execute the command below and update the variables.
cp .env.example .env
go mod downloadMost important is to have a PostgresQL server running to which we can connect. Be sure to add the connection URL as DB_URL in .env and .env.prod. On app startup, migrations from the sql/schema folder will automatically be run.
For streamlined development, always use our special dev script. It will load all the necessary resources for running the dev environment.
./dev.shdocker compose up -d --build