Scaffold from qbit-backups: CmsQBitConfig and CmsQBitProducer (table prefix cms_, permissions cms.*), Maven wrapper, CircleCI qqq-orb with publish_release on GA tags (vX.Y.Z) only, community pointer files, Apache-2.0 LICENSE and NOTICE, design pointer to QRun-IO/qqq#1083. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
45 lines
1.5 KiB
Markdown
45 lines
1.5 KiB
Markdown
# QBit CMS
|
|
|
|
[](https://www.apache.org/licenses/LICENSE-2.0)
|
|
[](https://adoptium.net/)
|
|
|
|
> QQQ QBit: a headless CMS (sites, pages, menus, blog, media, projects, photos and publishing) as standard QQQ tables.
|
|
|
|
**Status:** design approved: [QRun-IO/qqq#1083](https://github.com/QRun-IO/qqq/pull/1083) (see [docs/DESIGN.md](docs/DESIGN.md)); implementation in progress. Nothing is published yet.
|
|
|
|
## Requirements
|
|
|
|
- Java 21.
|
|
- QQQ 4.1 (built against `4.1.0-RC.4`) with an RDBMS backend (PostgreSQL in production, H2 for tests).
|
|
- QQQ Next UI 1.0 (`1.0.0-RC.14` or later). Material is not supported.
|
|
|
|
## Install
|
|
|
|
Not yet published. Once released, add `com.kingsrook.qbits:qbit-cms` and produce the qbit into your `QInstance`:
|
|
|
|
```java
|
|
new CmsQBitProducer()
|
|
.withQBitConfig(new CmsQBitConfig().withBackendName("rdbms"))
|
|
.produce(qInstance);
|
|
```
|
|
|
|
## Naming
|
|
|
|
Tables are `cms_<name>` (lowercase snake_case, backend name equal to the table name). Permissions are `cms.<table>.<action>` and `cms.<action>`.
|
|
|
|
## Adopting in another app
|
|
|
|
Follow the QQQ [adoption checklist](https://github.com/QRun-IO/qqq/blob/develop/docs/migration/adoption-checklist.adoc) once the first release is published.
|
|
|
|
## Build
|
|
|
|
```bash
|
|
./mvnw verify
|
|
```
|
|
|
|
Always use the Maven wrapper (Maven 3.9.11); Maven 3.10 cannot read the parent POM.
|
|
|
|
## License
|
|
|
|
Apache License 2.0. See [LICENSE](LICENSE) and [NOTICE](NOTICE).
|