90 lines
3.0 KiB
Markdown
90 lines
3.0 KiB
Markdown
# NoteGraph
|
|
|
|
A personal knowledge infrastructure for consolidating notes, thoughts, decisions, and contextual information across projects.
|
|
|
|
## Architecture
|
|
|
|
```
|
|
┌─────────────────────────────────────────────────────────────┐
|
|
│ NoteGraph │
|
|
├─────────────────────────────────────────────────────────────┤
|
|
│ UI Layer │ SilverBullet (self-hosted PWA) │
|
|
│ Storage Layer │ Markdown files in Git │
|
|
│ Import Layer │ PDF/OCR/AI ingestion service │
|
|
│ Graph Layer │ Relationship index + search │
|
|
│ Integration Layer │ OrgMyLife API bridge (tasks ↔ notes) │
|
|
│ AI Layer │ Auto-tagging, enrichment, suggestions │
|
|
└─────────────────────────────────────────────────────────────┘
|
|
```
|
|
|
|
## Quick Start
|
|
|
|
### Deploy on VPS (Docker)
|
|
|
|
```bash
|
|
cd NoteGraph
|
|
cp .env.example .env
|
|
# Edit .env with your credentials
|
|
docker compose up -d
|
|
```
|
|
|
|
SilverBullet will be available at `https://notes.andreknie.de` (or whatever domain you configure).
|
|
|
|
### Local Development
|
|
|
|
```bash
|
|
docker compose up -d
|
|
# Access at http://localhost:3000
|
|
```
|
|
|
|
## Structure
|
|
|
|
```
|
|
NoteGraph/
|
|
├── docker-compose.yml # SilverBullet + reverse proxy
|
|
├── notes/ # Markdown knowledge base (git-backed)
|
|
│ ├── inbox/ # Quick captures, unsorted
|
|
│ ├── projects/ # Project-specific notes
|
|
│ ├── people/ # Person-specific context
|
|
│ ├── meetings/ # Meeting notes
|
|
│ ├── decisions/ # Recorded decisions
|
|
│ └── templates/ # Note templates
|
|
├── ingestion/ # Document import service (Phase 2)
|
|
├── graph-service/ # Relationship index (Phase 3)
|
|
└── .github/workflows/ # Auto-commit, backup
|
|
```
|
|
|
|
## Features
|
|
|
|
### Phase 1 (Current)
|
|
- [x] SilverBullet deployment (Docker)
|
|
- [x] Git-backed markdown storage
|
|
- [x] Wiki-links (`[[note title]]`) and backlinks
|
|
- [x] Full-text search
|
|
- [x] Tags and metadata
|
|
- [x] Offline PWA (mobile access)
|
|
- [x] Auto-commit to Git
|
|
|
|
### Phase 2 (Planned)
|
|
- [ ] PDF text extraction
|
|
- [ ] Handwritten note OCR
|
|
- [ ] AI summarization on import
|
|
- [ ] Auto-tagging
|
|
|
|
### Phase 3 (Planned)
|
|
- [ ] Relationship graph index
|
|
- [ ] AI-assisted enrichment
|
|
- [ ] Graph visualization
|
|
- [ ] OrgMyLife deep integration (task ↔ note linking)
|
|
|
|
## Integration with OrgMyLife
|
|
|
|
Notes can be linked to OrgMyLife tasks via tags:
|
|
- Tag a note with `#task/123` to link it to task #123
|
|
- The OrgMyLife dashboard can surface relevant notes for upcoming meetings
|
|
- Tasks created from notes maintain traceability
|
|
|
|
## License
|
|
|
|
MIT
|