No description
- Go 97.6%
- Shell 2.4%
| .woodpecker | add ci release job | |
| ai | send messages after some time, like real humans | |
| backend | add more logs | |
| database | add nudging if user does not reply | |
| hooks | fix that staticcheck was not found and that CI still succeeded | |
| migrations | send messages after some time, like real humans | |
| .air.toml | first commit | |
| .gitignore | add response via LLM | |
| go.mod | refactor | |
| go.sum | refactor | |
| LICENSE | first commit | |
| main.go | refactor | |
| README.md | add response via LLM | |
SprachMate
Development
Pre-Commit
Enable the pre-commit hooks by running git config core.hooksPath hooks/
Server
For auto-reload we are using air.
Install it using go install github.com/air-verse/air@latest
You can start the server in auto-reload mode then using:
$HOME/go/bin/air
Setup
Insert a new test user
go run main.go users create --first_name=thacoon --telegram_id=12345678
Check the user id in the database and create a new bot for this user
go run main.go bots create --first_name=Ελένη --user_id=d4376b6781676652e5ed2c3fe6ea30af --file_path=.prompts/eleni.md
Database
Migrations
To handle migrations we are using goose.
Install it using go install github.com/pressly/goose/v3/cmd/goose@latest
List of some commands:
# Init the database
$HOME/go/bin/goose -dir ./migrations sqlite ./db.sqlite3 up
# See current status
$HOME/go/bin/goose -dir ./migrations sqlite ./db.sqlite3 status