diff --git a/README.md b/README.md index 29e76ca..0081555 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ -# jama 💬 +# rosterchirp 💬 ### *just another messaging app* -A modern, self-hosted team messaging Progressive Web App (PWA) built for small to medium teams. jama runs entirely in a single Docker container with no external database dependencies — all data is stored locally using SQLite. +A modern, self-hosted team messaging Progressive Web App (PWA) built for small to medium teams. rosterchirp runs entirely in a single Docker container with no external database dependencies — all data is stored locally using SQLite. --- @@ -112,8 +112,8 @@ All builds use `build.sh`. No host Node.js installation is required. ### 1. Clone the repository ```bash -git clone https://your-gitea/youruser/jama.git -cd jama +git clone https://your-gitea/youruser/rosterchirp.git +cd rosterchirp ``` ### 2. Build the Docker image @@ -135,7 +135,7 @@ At minimum, change `ADMIN_EMAIL`, `ADMIN_PASS`, and `JWT_SECRET`. ```bash docker compose up -d -docker compose logs -f jama +docker compose logs -f rosterchirp ``` ### 5. Log in @@ -146,13 +146,13 @@ Open `http://your-server:3000`, log in with your `ADMIN_EMAIL` and `ADMIN_PASS`, ## HTTPS & SSL -jama does not manage SSL itself. Use **Caddy** as a reverse proxy. +rosterchirp does not manage SSL itself. Use **Caddy** as a reverse proxy. ### Caddyfile ``` chat.yourdomain.com { - reverse_proxy jama:3000 + reverse_proxy rosterchirp:3000 } ``` @@ -161,25 +161,25 @@ chat.yourdomain.com { ```yaml version: '3.8' services: - jama: - image: jama:${JAMA_VERSION:-latest} - container_name: jama + rosterchirp: + image: rosterchirp:${rosterchirp_VERSION:-latest} + container_name: rosterchirp restart: unless-stopped expose: - "3000" environment: - NODE_ENV=production - ADMIN_NAME=${ADMIN_NAME:-Admin User} - - ADMIN_EMAIL=${ADMIN_EMAIL:-admin@jama.local} + - ADMIN_EMAIL=${ADMIN_EMAIL:-admin@rosterchirp.local} - ADMIN_PASS=${ADMIN_PASS:-Admin@1234} - USER_PASS=${USER_PASS:-user@1234} - ADMPW_RESET=${ADMPW_RESET:-false} - JWT_SECRET=${JWT_SECRET:-changeme} - - APP_NAME=${APP_NAME:-jama} - - JAMA_VERSION=${JAMA_VERSION:-latest} + - APP_NAME=${APP_NAME:-rosterchirp} + - rosterchirp_VERSION=${rosterchirp_VERSION:-latest} volumes: - - jama_db:/app/data - - jama_uploads:/app/uploads + - rosterchirp_db:/app/data + - rosterchirp_uploads:/app/uploads caddy: image: caddy:alpine @@ -194,11 +194,11 @@ services: - caddy_data:/data - caddy_certs:/config depends_on: - - jama + - rosterchirp volumes: - jama_db: - jama_uploads: + rosterchirp_db: + rosterchirp_uploads: caddy_data: caddy_certs: ``` @@ -209,16 +209,16 @@ volumes: | Variable | Default | Description | |---|---|---| -| `JAMA_VERSION` | `latest` | Docker image tag to run | +| `rosterchirp_VERSION` | `latest` | Docker image tag to run | | `TZ` | `UTC` | Container timezone (e.g. `America/Toronto`) | | `ADMIN_NAME` | `Admin User` | Display name of the default admin account | -| `ADMIN_EMAIL` | `admin@jama.local` | Login email for the default admin account | +| `ADMIN_EMAIL` | `admin@rosterchirp.local` | Login email for the default admin account | | `ADMIN_PASS` | `Admin@1234` | Initial password for the default admin account | | `USER_PASS` | `user@1234` | Default temporary password for bulk-imported users when no password is specified in CSV | | `ADMPW_RESET` | `false` | If `true`, resets the **admin** password to `ADMIN_PASS` on every restart. Emergency access recovery only. Shows a warning banner when active. | | `JWT_SECRET` | *(insecure default)* | Secret used to sign auth tokens. **Must be changed in production.** | | `PORT` | `3000` | Host port to bind (without Caddy) | -| `APP_NAME` | `jama` | Initial application name (can also be changed in Settings UI) | +| `APP_NAME` | `rosterchirp` | Initial application name (can also be changed in Settings UI) | | `DEFCHAT_NAME` | `General Chat` | Name of the default public group created on first run | > `ADMIN_EMAIL` and `ADMIN_PASS` are only used on the **first run**. Once the database exists they are ignored — unless `ADMPW_RESET=true`. @@ -226,7 +226,7 @@ volumes: ### Example `.env` ```env -JAMA_VERSION=1.0.0 +rosterchirp_VERSION=1.0.0 TZ=America/Toronto ADMIN_NAME=Your Name @@ -239,7 +239,7 @@ ADMPW_RESET=false JWT_SECRET=replace-this-with-a-long-random-string-at-least-32-chars PORT=3000 -APP_NAME=jama +APP_NAME=rosterchirp DEFCHAT_NAME=General Chat ``` @@ -330,23 +330,23 @@ Users can access the guide at any time via **User menu → Help**. | Volume | Container path | Contents | |---|---|---| -| `jama_db` | `/app/data` | SQLite database (`jama.db`), `help.md` | -| `jama_uploads` | `/app/uploads` | Avatars, logos, PWA icons, message images | +| `rosterchirp_db` | `/app/data` | SQLite database (`rosterchirp.db`), `help.md` | +| `rosterchirp_uploads` | `/app/uploads` | Avatars, logos, PWA icons, message images | ### Backup ```bash # Backup database docker run --rm \ - -v jama_db:/data \ + -v rosterchirp_db:/data \ -v $(pwd):/backup alpine \ - tar czf /backup/jama_db_$(date +%Y%m%d).tar.gz -C /data . + tar czf /backup/rosterchirp_db_$(date +%Y%m%d).tar.gz -C /data . # Backup uploads docker run --rm \ - -v jama_uploads:/data \ + -v rosterchirp_uploads:/data \ -v $(pwd):/backup alpine \ - tar czf /backup/jama_uploads_$(date +%Y%m%d).tar.gz -C /data . + tar czf /backup/rosterchirp_uploads_$(date +%Y%m%d).tar.gz -C /data . ``` --- @@ -356,11 +356,11 @@ docker run --rm \ ```bash # Upgrade ./build.sh 1.1.0 -# Set JAMA_VERSION=1.1.0 in .env +# Set rosterchirp_VERSION=1.1.0 in .env docker compose up -d # Rollback -# Set JAMA_VERSION=1.0.0 in .env +# Set rosterchirp_VERSION=1.0.0 in .env docker compose up -d ```