Thanks to visit codestin.com
Credit goes to github.com

Skip to content

zorak1103/notebook

Repository files navigation

Notebook

CI Release GitHub Release Docker Image Version Docker Pulls Go Report Card License: MIT Go Version TypeScript React Vite i18n

Meeting and Notes Management Application with Tailscale Integration and optional LLM-powered summaries.

Features

  • Internationalization: Support for German, English, French, Spanish (react-i18next)
  • Meeting Management: Create, edit, and organize meetings with metadata
  • Notes System: Attach numbered notes to meetings with automatic numbering and manual reordering (▲/▼)
  • Full-Text Search: Search across meeting subjects, summaries, participants, and keywords
  • Configuration Management: Web UI for LLM provider settings with masked API keys and customizable prompts
  • Tailscale Integration: Seamless authentication and secure network access via tsnet with user information display
  • LLM Integration: Optional AI-powered meeting summaries and note enhancement with undo functionality (OpenAI, Anthropic, Ollama, LM Studio, vLLM)
  • Single Binary: Frontend embedded using go:embed
  • Dev Mode: Run without Tailscale for local development
  • Responsive UI: React + Vite + TypeScript frontend

Tech Stack

  • Backend: Go 1.26+ with stdlib HTTP routing
  • Frontend: React + Vite + TypeScript
  • Internationalization: react-i18next (German, English, French, Spanish)
  • Database: SQLite with modernc.org/sqlite (Pure Go, no CGO)
  • Auth: Tailscale tsnet integration
  • Embedding: go:embed for single binary deployment

Quick Start

Docker (Recommended)

Dev Mode:

docker run -d -p 8080:8080 -v $(pwd)/data:/data --name notebook zorak1103/notebook:latest

Open http://localhost:8080

Tailscale Mode:

docker run -d --network host -v $(pwd)/data:/data --name notebook \
  zorak1103/notebook:latest --hostname notebook --state-dir /data/tsnet-state --db /data/notebook.db

Access at https://notebook.your-tailnet.ts.net

Docker Compose: docker compose up -d notebook-dev (see docker-compose.yml)

Binary Download

Download the latest release from Releases:

# Linux / macOS
tar xzf notebook_Linux_x86_64.tar.gz
./notebook --dev-listen :8080

Windows: download notebook_Windows_x86_64.zip.

From Source

Prerequisites: Go 1.26+, Node.js 20+

git clone https://github.com/zorak1103/notebook.git
cd notebook
task build
./notebook --dev-listen :8080

Usage

# Dev mode (no Tailscale)
notebook --dev-listen :8080 --db notebook.db

# Tailscale mode (production)
notebook --hostname notebook --state-dir ./tsnet-state --db notebook.db

For CLI flags, LLM configuration, and AI feature details see docs/configuration.md.

Development

Command Description
task build Build frontend + backend
task test Run tests
task lint Run linter
task verify Run lint + lint:frontend + test
task test:coverage Tests with per-file 80% coverage enforcement
task --list List all tasks

For project structure, build system details, and frontend dev setup see docs/development.md.

Documentation

Architecture

See .docs/api.md for the full API reference and database schema.

Request flow: Browser → HTTP → Server → Handler → Repository → SQLite

Multi-Platform Support

Binaries for Linux/macOS/Windows (amd64 + arm64) and Docker image zorak1103/notebook:latest (multi-arch).

Security

  • Authentication: Automatic via Tailscale WhoIs API
  • Network Isolation: Only accessible on your Tailnet (Tailscale mode)
  • Database: SQLite file-based, no network exposure
  • API Keys: Masked in UI, stored in database (encryption optional)
  • Non-root Docker: Runs as user notebook (UID 1000)

License

MIT License - see LICENSE for details

Acknowledgments

About

Meeting and Notes Management Application with Tailscale Integration and optional LLM-powered summaries.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors