modulepackage
0.0.0-20240609160220-544625c9766e
Repository: https://github.com/maxrazen/tutor.git
Documentation: pkg.go.dev
# README
AI Language Tutor
Roadmap
- Authorization
- DB integration
- Storage integration
- Websocket room's communication
- Call mode
- Room creation
- Basic call mode UI
- Voice recording & saving to bucket
- Voice to text transformation
- Text request to GPT model
- Text to voice transformation
- Room history extraction
- Context configurator
- Call mode extended UI
- Chat mode
- Basic chat mode UI
- Text request to GPT model
- Text to speech converter
Build & Development
Important: Please keep in mind the project is built to have only one executable & transferable file. All the assets/credentials are embeded into the binary.
Important: The build can be run in two modes:
release
anddevonly
.devonly
build mode does not serve embeded UI assets to support quick development and to not re-compile backend side each time. Please usemake run
for compiling project indevonly
mode, andmake build
to get a production-ready binary.
Requirements
- Google OAuth
- Google Cloud Storage (service key)
- MySQL/MariaDB 5.7 or higher
- NodeJS v18
Init Project
- Run
make init
and add your GCP service key (with Read-Write-Create access to Cloud Storage) to the./credentials/gcp.json
file - Ensure you set all the variables in
./credentials/env
file. Here's the example:
APP_KEY=A02E..F== # base64 encoded bytes, used for JWT generating
GOOGLE_OAUTH_CLIENT_ID={cient id}
GOOGLE_OAUTH_SECRET={oauth secret}
GOOGLE_OAUTH_CALLBACK_URL=http://localhost:3000/auth/callback/google
STORAGE_BUCKET_NAME=my-bucket-name
DB_DSN=luke:secret@tcp(127.0.0.1:3306)/tutor
Development
- Use
make ui-watch
, or runnpm run watch
from the./ui
dir - Use
make run
to compile project indevonly
mode. Please keep in mind server will be serving assets from the actual./ui/public
directory
# Packages
No description provided by the author
# Functions
No description provided by the author
No description provided by the author
# Structs
No description provided by the author