Skip to main content

All-in-one toolkit for Supernote devices: parse notebooks, self-host services, access services

Project description

supernote

Personal Knowledge Management Hub for Supernote: parse notebooks, self-host services, and unlock AI insights.

This content is shared between the documentation and github repository at github.com/allenporter/supernote-lite.

Features

  • Notebook Parsing: Convert .note files to PDF, PNG, SVG, or text
  • AI-Powered Insights: OCR, automated summarization, and key metadata extraction via Gemini API
  • Supernote Private Server: Self-hosted Supernote Private Cloud with robust background processing
  • Developer API: Interact with Supernote Cloud and local data through a modern async Python client
  • System Maintenance: Background polling, auto-recovery for stalled tasks, and storage quota management

AI & Automation

Supernote-Lite transforms your handwritten notes into structured knowledge. When configured with a Gemini API key, the server automatically:

  • OCR: Transcribes handwriting with high accuracy.
  • Summarization: Generates concise summaries of your note journals.
  • Entity Extraction: Identifies dates, tasks, and key themes.
  • Retrieval Support: Chunks and indexes notes for efficient search (Experimental).

Installation

# Install specific components
pip install supernote              # Notebook parsing only
pip install supernote[server]      # + Private server & AI features
pip install supernote[client]      # + API Client

# Full installation (recommended for server users)
pip install supernote[all]

Local Development Setup

To set up the project for development, please refer to the Contributing Guide.

Quick Start

Start the AI-Powered Server

  1. Bootstrap with Gemini:

    export SUPERNOTE_GEMINI_API_KEY="your-api-key"
    supernote serve
    
  2. Register & Login:

    # Add your first user (System Admin)
    supernote admin --url http://localhost:8080 user add email@example.com
    
    # Login via CLI
    supernote cloud login email@example.com --url http://localhost:8080
    supernote cloud ls
    

See the Bootstrap Guide for detailed deployment and security instructions.

Parse a Notebook

from supernote.notebook import parse_notebook

notebook = parse_notebook("mynote.note")
notebook.to_pdf("output.pdf")

The notebook parser is a fork and slightly lighter dependency version of supernote-tool. All credit goes to the original authors for providing an amazing low-level utility.

Run with Docker

# Build & Run server
docker build -t supernote .
docker run -d -p 8080:8080 -v $(pwd)/storage:/storage supernote serve

See Server Documentation for details.

Developer API

Integrate Supernote into your own Python applications:

from supernote.client import Supernote
# See library docstrings for usage examples

CLI Usage

# Server & Admin
supernote serve
supernote admin user list

# Notebook operations
supernote notebook convert input.note output.pdf
supernote notebook analyze input.note

# Cloud operations
supernote cloud login --url http://localhost:8080 email@example.com
supernote cloud ls

Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • Local development setup
  • Project architecture
  • Using Ephemeral Mode for fast testing
  • AI Skills for agentic interaction

Acknowledgments

This project is in support of the amazing Ratta Supernote product and community. It aims to be a complementary, unofficial offering that is compatible with the Private Cloud feature.

Comparison with Official Private Cloud

Feature Official Private Cloud Supernote-Lite (This Project)
Core AI No (Basic Sync) Yes (OCR, Summaries, Insights)
System Java / Spring Python (Asyncio)
Source Closed Source Open Source
Flexibility Set-and-forget High (Developer-friendly, CLI)
Hardware Docker Required Python 3.13+ (Low resource)
Status Stable Product Community Innovation

Use the Official Private Cloud if:

  • You want a supported, "set-and-forget" solution.
  • You prefer using Docker containers.

Use Supernote-Lite if:

  • You want AI insights and OCR for your notes.
  • You want to integrate Supernote data into your local scripts or knowledge workflows.
  • You want to run on low-power hardware without Docker overhead.
  • You want full control over how your data is processed.

Community Projects

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

supernote-0.13.6.tar.gz (176.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

supernote-0.13.6-py3-none-any.whl (226.8 kB view details)

Uploaded Python 3

File details

Details for the file supernote-0.13.6.tar.gz.

File metadata

  • Download URL: supernote-0.13.6.tar.gz
  • Upload date:
  • Size: 176.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for supernote-0.13.6.tar.gz
Algorithm Hash digest
SHA256 bf510dc72c63f23e6a68d47f1e579d37f8b6ddd9d879af0538d43956a96ea18c
MD5 6e4a2a6e4d8836606e5665d53aa779c2
BLAKE2b-256 9edbc0805cd388fdedc8c9b49ac6725eeb84b032d3e89b42bb2138b2b4680a36

See more details on using hashes here.

Provenance

The following attestation bundles were made for supernote-0.13.6.tar.gz:

Publisher: publish.yaml on allenporter/supernote-lite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file supernote-0.13.6-py3-none-any.whl.

File metadata

  • Download URL: supernote-0.13.6-py3-none-any.whl
  • Upload date:
  • Size: 226.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for supernote-0.13.6-py3-none-any.whl
Algorithm Hash digest
SHA256 172a215ff47c2d702d81ddbbc8db075f41692ddbd0a0ccc282e7e0f16fe04bdb
MD5 589720783837fd9a8a5061c04821b543
BLAKE2b-256 9d08d99e287cc3ca322552139a4e41c2f38672b6a8c63e4ab056c6dcac93e073

See more details on using hashes here.

Provenance

The following attestation bundles were made for supernote-0.13.6-py3-none-any.whl:

Publisher: publish.yaml on allenporter/supernote-lite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page