1
1
Fork
You've already forked SprachMate
0
No description
  • Go 97.6%
  • Shell 2.4%
thacoon 2af9c3b0de
All checks were successful
ci/woodpecker/push/lints Pipeline was successful
ci/woodpecker/tag/lints Pipeline was successful
ci/woodpecker/tag/releases Pipeline was successful
add more logs
2025年09月27日 17:52:57 +02:00
.woodpecker add ci release job 2025年09月19日 23:27:04 +02:00
ai send messages after some time, like real humans 2025年09月17日 23:44:31 +02:00
backend add more logs 2025年09月27日 17:52:57 +02:00
database add nudging if user does not reply 2025年09月19日 23:16:48 +02:00
hooks fix that staticcheck was not found and that CI still succeeded 2025年09月14日 18:51:05 +02:00
migrations send messages after some time, like real humans 2025年09月17日 23:44:31 +02:00
.air.toml first commit 2025年09月14日 17:40:20 +02:00
.gitignore add response via LLM 2025年09月14日 22:07:19 +02:00
go.mod refactor 2025年09月25日 23:34:13 +02:00
go.sum refactor 2025年09月25日 23:34:13 +02:00
LICENSE first commit 2025年09月14日 17:40:20 +02:00
main.go refactor 2025年09月25日 23:34:13 +02:00
README.md add response via LLM 2025年09月14日 22:07:19 +02:00

SprachMate

status-badge

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