Files
portal/README.md
T
NeilClack 91d162c746 Rebuild admin pages around DataTable/AdminModal; restructure categories/groups and v2 groups API
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.
2026-09-10 09:38:01 -05:00

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.