First commit
This commit is contained in:
69
README.md
Normal file
69
README.md
Normal file
@@ -0,0 +1,69 @@
|
||||
# Daily Form
|
||||
|
||||
Shared daily check-in form. Answers are global (no per-session state). Auto-snapshots to MongoDB at 10:00 AM Riga time.
|
||||
|
||||
## Setup
|
||||
|
||||
### 1. MongoDB Atlas (free)
|
||||
|
||||
1. Go to https://cloud.mongodb.com → create account → create a free M0 cluster
|
||||
2. Create a database user (Database Access → Add New User)
|
||||
3. Allow access from anywhere (Network Access → Add IP Address → `0.0.0.0/0`)
|
||||
4. Get connection string (Connect → Drivers) — looks like:
|
||||
`mongodb+srv://user:pass@cluster.mongodb.net/`
|
||||
|
||||
### 2. Configure
|
||||
|
||||
```bash
|
||||
cp .env.example .env
|
||||
# Edit .env and paste your MongoDB URI
|
||||
```
|
||||
|
||||
### 3. Run on saturn
|
||||
|
||||
```bash
|
||||
# Copy files to saturn
|
||||
scp -r . armandins@saturn:/opt/dailyform
|
||||
|
||||
# SSH in
|
||||
ssh armandins@saturn
|
||||
cd /opt/dailyform
|
||||
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
Then add to Nginx Proxy Manager pointing to port 5000.
|
||||
|
||||
### 4. Editing questions
|
||||
|
||||
Edit `questions.yaml` and restart the container:
|
||||
|
||||
```bash
|
||||
docker compose restart
|
||||
```
|
||||
|
||||
The `questions.yaml` is mounted as a read-only volume so you edit it on the host, no rebuild needed.
|
||||
|
||||
## Question types
|
||||
|
||||
| Type | Description | Extra fields |
|
||||
|---|---|---|
|
||||
| `yesno` | Yes / No buttons | — |
|
||||
| `scale` | Slider | `min`, `max`, `step` |
|
||||
| `number` | Number input | `min`, `max` |
|
||||
| `duration` | H : MM input (stored as minutes) | — |
|
||||
| `counter` | Big − / + buttons | `min`, `max`, `step` |
|
||||
| `text` | Single line | — |
|
||||
| `textarea` | Multi-line | — |
|
||||
| `choice` | Single select pills | `options: [...]` |
|
||||
| `multichoice` | Multi select pills | `options: [...]` |
|
||||
|
||||
## Snapshots
|
||||
|
||||
Snapshots are stored in the `snapshots` MongoDB collection. View last 30:
|
||||
|
||||
```
|
||||
GET /api/snapshots
|
||||
```
|
||||
|
||||
Or browse directly in MongoDB Atlas UI → Collections → `dailyform` → `snapshots`.
|
||||
Reference in New Issue
Block a user