You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Merge pull request #15 from gamosoft/features/authentication
Features/authentication
- added authentication
- possible breaking change. simplified data folder
- creation of releases on tag
- removed search_index for now
- 💰 **Zero Cost** - No subscriptions, no hidden fees
36
37
- 🚀 **Fast & Lightweight** - Instant search and navigation
37
38
- 🎨 **Beautiful Themes** - Multiple themes, easy to customize
@@ -47,20 +48,21 @@ NoteDiscovery is a **lightweight, self-hosted note-taking application** that put
47
48
48
49
Use the pre-built image directly from GHCR - no building required!
49
50
50
-
> **💡 Tip**: Always use `ghcr.io/gamosoft/notediscovery:latest` to get the newest features and fixes. Images are automatically built when PRs are merged to main.
51
+
> **💡 Tip**: Always use `ghcr.io/gamosoft/notediscovery:latest` to get the newest features and fixes.
51
52
52
53
> **📁 Important - Volume Mapping**: The container needs local folders/files to work:
53
-
> -**Required**: `data` folder (your notes will be stored here)
54
-
> -**Required**: `themes` folder with theme `.css` files (at least light.css and dark.css)
54
+
> -**Required**: `data` folder - **Your personal notes** will be stored here (create an empty folder)
55
+
> -**Required**: `themes` folder with theme `.css` files (at least a single theme must exist)
55
56
> -**Required**: `plugins` folder (can be empty for basic functionality)
56
57
> -**Required**: `config.yaml` file (needed for the app to run)
58
+
> -**Optional**: `documentation` folder - If you cloned the repo, mount this to view app docs inside NoteDiscovery
57
59
>
58
60
> **Setup Options:**
59
61
>
60
62
> 1.**Minimal** (quick test - download just the essentials):
61
63
> ```bash
62
64
># Linux/macOS
63
-
> mkdir -p data plugins themes
65
+
> mkdir -p data plugins themes# data/ is for YOUR notes
># Now you have everything - run docker-compose below
85
+
># The data/ folder is empty - for your personal notes
86
+
># The documentation/ folder has app docs you can optionally mount
84
87
>```
85
88
89
+
>**🔐 Security Note**: Authentication is **disabled by default** with password `admin`. For testing/local use, this is fine. If exposing to a network, **change the password immediately** - see [AUTHENTICATION.md](documentation/AUTHENTICATION.md) for instructions on how to enable it.
90
+
86
91
**Option 1: Docker Compose (Recommended)**
87
92
88
93
> 💡 **Multi-Architecture Support**: Docker images are available for both `x86_64` and `ARM64` (Raspberry Pi, Apple Silicon, etc.)
Want to learn more? **The full documentation lives inside the app as interactive notes!**
198
204
199
205
Once you've started NoteDiscovery, you'll find comprehensive guides on:
200
-
- 🎨 **THEMES.md** - Theme customization and creating custom themes
201
-
- ✨ **FEATURES.md** - Complete feature list and keyboard shortcuts
202
-
- 🧮 **MATHJAX.md** - LaTeX/Math notation examples and syntax reference
203
-
- 🔌 **PLUGINS.md** - Plugin system and available plugins
204
-
- 🌐 **API.md** - REST API documentation and examples
205
-
206
-
**Can't wait to start the app?** Browse the documentation notes directly on GitHub in the [`data/notes/`](data/notes/) folder!
206
+
- 🎨 **[THEMES.md](documentation/THEMES.md)** - Theme customization and creating custom themes
207
+
- ✨ **[FEATURES.md](documentation/FEATURES.md)** - Complete feature list and keyboard shortcuts
208
+
- 🧮 **[MATHJAX.md](documentation/MATHJAX.md)** - LaTeX/Math notation examples and syntax reference
209
+
- 🔌 **[PLUGINS.md](documentation/PLUGINS.md)** - Plugin system and available plugins
210
+
- 🌐 **[API.md](documentation/API.md)** - REST API documentation and examples
211
+
- 🔐 **[AUTHENTICATION.md](documentation/AUTHENTICATION.md)** - Enable password protection for your instance
212
+
213
+
**Can't wait to start the app?** Browse the documentation notes directly on GitHub in the [`documentation/`](documentation/) folder!
214
+
215
+
💡 **Pro Tip:** If you clone this repository, you can mount the `documentation/` folder to view these docs inside the app:
216
+
217
+
```yaml
218
+
# In your docker-compose.yml
219
+
volumes:
220
+
- ./data:/app/data # Your personal notes
221
+
- ./documentation:/app/data/docs:ro # Mount docs subfolder inside the data folder (read-only)
222
+
```
207
223
208
-
💡 **Tip:** These documentation files are regular markdown notes—edit them, add your own notes, or use them as templates. It's your knowledge base!
224
+
Then access them at `http://localhost:8000` - the docs will appear as a `docs/` folder in the file browser!
209
225
210
226
## 💖 Support Development
211
227
@@ -217,18 +233,21 @@ NoteDiscovery is designed for **self-hosted, private use**. Please keep these se
217
233
218
234
### Network Security
219
235
- ⚠️ **Do NOT expose directly to the internet** without additional security measures
220
-
- Run behind a reverse proxy (nginx, Caddy) with HTTPS and authentication if needed
236
+
- Run behind a reverse proxy (nginx, Caddy) with HTTPS for production use
221
237
- Keep it on your local network or use a VPN for remote access
222
238
- By default, the app listens on `0.0.0.0:8000` (all network interfaces)
223
239
224
-
### No Built-in Authentication
225
-
- The app has **no authentication by design** (single-user, self-hosted)
226
-
- Anyone with network access can read and modify your notes
227
-
- Use network-level security (firewall, VPN) for access control
228
-
- Consider adding authentication via reverse proxy if needed
240
+
### Authentication
241
+
- **Password protection is ENABLED by default** with password: `admin`
242
+
- ⚠️ **CHANGE THE DEFAULT PASSWORD IMMEDIATELY** if exposing to a network!
243
+
- See **[AUTHENTICATION.md](documentation/AUTHENTICATION.md)** for complete setup instructions
244
+
- To disable auth, set `security.enabled: false` in `config.yaml`
245
+
- Change password with Docker: `docker-compose exec notediscovery python generate_password.py`
246
+
- Perfect for single-user or small team deployments
247
+
- For multi-user setups, consider a reverse proxy with OAuth/SSO
229
248
230
249
### Data Privacy
231
-
- Your notes are stored as **plain text markdown files** in `data/notes/`
250
+
- Your notes are stored as **plain text markdown files** in the `data/` folder
232
251
- No data is sent to external services
233
252
- Regular backups are recommended
234
253
@@ -239,7 +258,7 @@ NoteDiscovery is designed for **self-hosted, private use**. Please keep these se
239
258
- Review and audit any plugins you install
240
259
- Set appropriate file permissions on the `data/` directory
241
260
242
-
**TL;DR**: Perfect for personal use on your local machine or home network. Add a reverse proxy with authentication if exposing to wider networks.
261
+
**TL;DR**: Perfect for personal use on your local machine or home network. Enable built-in password protection if needed, or use a reverse proxy with authentication if exposing to wider networks.
0 commit comments