Remove the generic $lib/svelte-admin CRUD layer and AdminTable.svelte; each admin route now owns its own form/modal logic. Add DataTable.svelte, superform-errors.ts, and profile-specific modal/field components. Flatten proclamation categories/groups and drop subscription levels; add the v2 groups API; update v1/v2 endpoints, serializers, auth, and regenerated Prisma client with the new migrations. Document the overhaul plan in docs/ADMIN_OVERHAUL.md.
54 lines
2.2 KiB
Markdown
54 lines
2.2 KiB
Markdown
# Radiant Wave Technologies - User Portal
|
|
|
|
A combination application that combines the main Radiant Wave API with a user-facing account management application,
|
|
and an admin-facing platform management application. An all-in-one management platform for Radiant Wave and Radiant Wave Technologies.
|
|
|
|
SvelteKit 2 + Svelte 5 + Tailwind CSS v4 + Prisma 7 + PostgreSQL + Better-Auth.
|
|
|
|
## Deployment
|
|
|
|
This application runs inside of a Docker container, defined by the Dockerfile found within this repo.
|
|
Codeberg/Gitea actions are triggered on `push` actions to the `main` branch, and build the docker container.
|
|
The docker container is then uploaded to the Digital Ocean Container Registry, where it is pulled into an
|
|
App Platform application and run.
|
|
|
|
To build the Docker container locally (with podman), ensuring builds pass prior to pushing to `main`:
|
|
|
|
```sh
|
|
podman build --platform linux/amd64 -t registry.digitalocean.com/radiantwave-portal-container-registry/portal:latest .
|
|
```
|
|
|
|
To build the Docker container on a Linux machine, such as a Forgejo Action Runner:
|
|
|
|
```sh
|
|
docker build -t registry.digitalocean.com/radiantwave-portal-container-registry/portal:latest .
|
|
```
|
|
|
|
Then push to the container registry:
|
|
|
|
```sh
|
|
podman push registry.digitalocean.com/radiantwave-portal-container-registry/portal:latest
|
|
```
|
|
|
|
---
|
|
|
|
## Development
|
|
|
|
## Admin
|
|
|
|
Admin CRUD pages at `/admin`. 9 models have per-page routes with modals for create/edit:
|
|
|
|
| Included | Excluded |
|
|
| ------------------------ | --------------------------------- |
|
|
| users | Session (Better Auth) |
|
|
| profiles | Account (Better Auth) |
|
|
| addresses | Verification (Better Auth) |
|
|
| user-roles | UserProclamations (composite key) |
|
|
| proclamations | |
|
|
| solfeggio-frequencies | |
|
|
| proclamation-categories | |
|
|
| license-keys (list-only) | |
|
|
| subscription-levels | |
|
|
|
|
See `src/lib/svelte-admin/README.md` for architecture and configuration docs.
|