This commit replaces the Axum/Rust backend with a Gin/Go implementation. The original Rust code has been archived in the 'rust' branch.
40 lines
772 B
Go
40 lines
772 B
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
|
|
"llm-proxy/internal/config"
|
|
"llm-proxy/internal/db"
|
|
"llm-proxy/internal/server"
|
|
|
|
"github.com/joho/godotenv"
|
|
)
|
|
|
|
func main() {
|
|
// Load environment variables
|
|
if err := godotenv.Load(); err != nil {
|
|
log.Println("No .env file found")
|
|
}
|
|
|
|
// Load configuration
|
|
cfg, err := config.Load()
|
|
if err != nil {
|
|
log.Fatalf("Failed to load configuration: %v", err)
|
|
}
|
|
|
|
// Initialize database
|
|
database, err := db.Init(cfg.Database.Path)
|
|
if err != nil {
|
|
log.Fatalf("Failed to initialize database: %v", err)
|
|
}
|
|
|
|
// Initialize server
|
|
s := server.NewServer(cfg, database)
|
|
|
|
// Run server
|
|
log.Printf("Starting LLM Proxy on %s:%d", cfg.Server.Host, cfg.Server.Port)
|
|
if err := s.Run(); err != nil {
|
|
log.Fatalf("Server failed: %v", err)
|
|
}
|
|
}
|