3.0 KiB
3.0 KiB
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)
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
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)
- SilverBullet deployment (Docker)
- Git-backed markdown storage
- Wiki-links (
[[note title]]) and backlinks - Full-text search
- Tags and metadata
- Offline PWA (mobile access)
- 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/123to link it to task #123 - The OrgMyLife dashboard can surface relevant notes for upcoming meetings
- Tasks created from notes maintain traceability
License
MIT