Main API on customer VPS (user mgmt, creds, login, mail etc ...)
![]() |
hai 1 mes | |
---|---|---|
app | hai 1 mes | |
common | hai 1 mes | |
config | hai 1 mes | |
docs | hai 1 mes | |
errors | hai 1 mes | |
handlers | hai 1 mes | |
hook | hai 1 mes | |
jwtutils | hai 1 mes | |
logger | hai 1 mes | |
middleware | hai 1 mes | |
smtp | hai 1 mes | |
store | hai 1 mes | |
testing | hai 1 mes | |
validation | hai 1 mes | |
.dockerignore | hai 1 mes | |
.gitignore | hai 1 mes | |
Dockerfile | hai 1 mes | |
README.md | hai 1 mes | |
config.sample.yaml | hai 1 mes | |
go.mod | hai 1 mes | |
go.sum | hai 1 mes | |
main.go | hai 1 mes |
A Go-based backend service for workspace and user management with built-in authentication.
.
├── app/ # Core application components
│ ├── server.go # HTTP server setup
│ ├── routes.go # API route definitions
│ └── middleware.go # HTTP middlewares
├── common/ # Shared models and utilities
├── config/ # Configuration management
├── handlers/ # HTTP request handlers
├── hook/ # Webhook integration
├── jwtutils/ # JWT authentication
├── smtp/ # Email service
│ └── templates/ # Email templates
├── store/ # Database operations
└── main.go # Application entry point
Clone the repository:
git clone git@git.linuxforward.com:byom/byom-core.git
cd byom-core
Install dependencies:
go mod download
Copy and configure settings:
cp config.sample.yaml config.yaml
Run the server:
go run main.go serve
The application is configured via config.yaml. Key sections:
server:
listening_port: 8443
tls:
enabled: false
database:
path: "./data/app.db"
log:
level: "info"
jwt:
jwt_secret: "your-jwt-secret"
smtp:
host: "smtp.example.com"
oauth2:
client_id: "your-client-id"
See config.sample.yaml for a complete example.
Run server:
go run main.go serve --config config.yaml
Show version:
go run main.go version
All routes are prefixed with /api/v1/core
Protected routes require JWT authentication via the Authorization header.
Fork the repository Create your feature branch Commit your changes Push to the branch Create a Pull Request
Proprietary - All rights reserved