72 lines
1.1 KiB
Markdown
72 lines
1.1 KiB
Markdown
# irandom
|
|
|
|
## Setup
|
|
```
|
|
npm install
|
|
```
|
|
|
|
### Dev server
|
|
```
|
|
npm run serve
|
|
```
|
|
or
|
|
```
|
|
npm run dev
|
|
```
|
|
|
|
### Production build
|
|
```
|
|
npm run build
|
|
```
|
|
|
|
### Preview production build
|
|
```
|
|
npm run preview
|
|
```
|
|
|
|
### Lint
|
|
```
|
|
npm run lint
|
|
```
|
|
|
|
### Customization
|
|
Copy `.env.example` to `.env` and set branding / theme variables.
|
|
`npm run serve` / `npm run build` regenerates `public/config.js` automatically.
|
|
|
|
### Docker
|
|
Build and run (config via environment, same keys as `.env.example`):
|
|
|
|
```
|
|
docker compose up --build
|
|
```
|
|
|
|
Open http://localhost:8080
|
|
|
|
Change branding without rebuilding the image — only restart with new env:
|
|
|
|
```
|
|
docker compose up -d
|
|
```
|
|
|
|
Or:
|
|
|
|
```
|
|
docker build -t irandom .
|
|
docker run --rm -p 8080:80 ^
|
|
-e IRANDOM_NAME=LuckyPenguin ^
|
|
-e IRANDOM_COLOR_PRIMARY=#3DDC97 ^
|
|
irandom
|
|
```
|
|
|
|
### Offline (PWA)
|
|
Production build registers a service worker and caches the app shell.
|
|
After opening the site once online:
|
|
|
|
```
|
|
npm run build
|
|
npm run preview
|
|
```
|
|
|
|
you can reload without network — generators keep working.
|
|
`config.js` uses NetworkFirst (fresh when online, cached when offline).
|