chore: update TypeScript to 6.0.1-rc and adjust package dependencies

- Removed duplicate @typescript-eslint/utils dependency in frontend/package.json
- Updated TypeScript version from 5.9.3 to 6.0.1-rc in frontend/package.json and package.json
- Adjusted ResizeObserver mock to use globalThis in tests
- Modified tsconfig.json and tsconfig.node.json to include empty types array
- Cleaned up package-lock.json to reflect TypeScript version change and updated dev dependencies
This commit is contained in:
GitHub Actions
2026-03-11 22:19:35 +00:00
parent 0c2a9d0ee8
commit 2969eb58e4
13 changed files with 1525 additions and 485 deletions

View File

@@ -21,6 +21,24 @@ Imagine you have several apps running on your computer. Maybe a blog, a file sto
## Step 1: Install Charon
### Required Secrets (Generate Before Installing)
Two secrets must be set before starting Charon. Omitting them will cause **sessions to reset on every container restart**, locking users out.
Generate both values now and keep them somewhere safe:
```bash
# JWT secret — signs and validates login sessions
openssl rand -hex 32
# Encryption key — protects stored credentials at rest
openssl rand -base64 32
```
> **Why this matters:** If `CHARON_JWT_SECRET` is not set, Charon generates a random key on each boot. Any active login session becomes invalid the moment the container restarts, producing a "Session validation failed" error.
---
### Option A: Docker Compose (Easiest)
Create a file called `docker-compose.yml`:
@@ -43,6 +61,8 @@ services:
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
- CHARON_ENV=production
- CHARON_JWT_SECRET=<output of: openssl rand -hex 32>
- CHARON_ENCRYPTION_KEY=<output of: openssl rand -base64 32>
```
Then run:
@@ -64,6 +84,8 @@ docker run -d \
-v ./charon-data:/app/data \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-e CHARON_ENV=production \
-e CHARON_JWT_SECRET=<output of: openssl rand -hex 32> \
-e CHARON_ENCRYPTION_KEY=<output of: openssl rand -base64 32> \
wikid82/charon:latest
```
@@ -78,6 +100,8 @@ docker run -d \
-v ./charon-data:/app/data \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-e CHARON_ENV=production \
-e CHARON_JWT_SECRET=<output of: openssl rand -hex 32> \
-e CHARON_ENCRYPTION_KEY=<output of: openssl rand -base64 32> \
ghcr.io/wikid82/charon:latest
```