Files
Курнат Андрей 2315f25754 Initial QSfera import
2026-06-07 10:20:04 +03:00

64 lines
1.9 KiB
Markdown

# КуСфера Server Backend
> [!TIP]
> This repository is branded for КуСфера.
This is the main repository of the КуСфера server.
It contains the golang codebase for the backend services.
## Getting Involved
The КуСфера server is released under [Apache 2.0](LICENSE).
The project is thrilled to receive contributions in all forms.
Start hacking now, there are many ways to get involved such as:
- Reporting issues or bugs
- Requesting features
- Writing documentation
- Writing code or extending tests
- Reviewing code
Every contribution is meaningful and appreciated!
Please refer to [CONTRIBUTING.md](CONTRIBUTING.md) if you want to get started.
## Build КуСфера
To build the backend, follow these instructions:
Generate the assets needed by e.g., the web UI and the builtin IDP
``` console
make generate
```
Then compile the runtime binary
``` console
make -C qsfera build
```
That will produce the runtime binary. It can be started as a local test instance right away with a two step command:
```bash
qsfera/bin/qsfera init && qsfera/bin/qsfera server
```
This creates a server configuration (by default in `$HOME/.qsfera`) and starts the server.
For more setup and installation options consult the project documentation.
## Technology
Important information for contributors about the technology in use.
### Authentication
The КуСфера backend authenticates users via [OpenID Connect](https://openid.net/connect/) using either an external IdP like [Keycloak](https://www.keycloak.org/) or the embedded [LibreGraph Connect](https://github.com/libregraph/lico) identity provider.
### Database
The КуСфера backend does not use a database. It stores all data in the filesystem. By default, the root directory of the backend is `$HOME/.qsfera/`.
## Security
If you find a security-related issue, contact the project maintainers immediately.