44 lines
1.3 KiB
Markdown
44 lines
1.3 KiB
Markdown
# RenewCMS
|
|
|
|
A small self-hosted CMS: a Go API and a Vue 3 admin/front SPA, shipped as **a single executable** backed by a SQLite file.
|
|
|
|
> 🚧 **Under development.** Features are incomplete, not fully tested and subject to change.
|
|
|
|
## Quick start
|
|
|
|
### Run a release binary
|
|
|
|
```sh
|
|
cp .env.example .env # fill in PUBLIC_URL, JWT_SECRET and SMTP_*
|
|
./renewcms # → http://localhost:8080
|
|
```
|
|
|
|
Data is stored in `./data/` by default. For a real server (systemd, HTTPS, backups), see **[docs/deployment.md](docs/deployment.md)**.
|
|
|
|
### Develop
|
|
|
|
Requires Go 1.27+, Node.js 22, [Bun](https://bun.sh) and [Task](https://taskfile.dev).
|
|
|
|
```sh
|
|
cp .env.example .env
|
|
task setup
|
|
task dev # API with hot reload + Vite HMR → http://localhost:5173
|
|
```
|
|
|
|
## Documentation
|
|
|
|
| Doc | Contents |
|
|
|---|---|
|
|
| [docs/development.md](docs/development.md) | Dev setup, how Vite and the API fit together, tests, lint, `task` commands |
|
|
| [docs/deployment.md](docs/deployment.md) | Building release binaries, running as a service, HTTPS, backups, upgrades |
|
|
| [docs/configuration.md](docs/configuration.md) | Every environment variable |
|
|
| [docs/architecture.md](docs/architecture.md) | Backend layering and how the SPA is embedded |
|
|
|
|
## API Usage
|
|
|
|
TODO
|
|
|
|
## TODOs
|
|
|
|
- Cancel button when email validation pending or expired
|