Skip to content

sunilkumarvalmiki/polynote

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

72 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

๐Ÿ‡ฎ๐Ÿ‡ณ PolyNote

Universal Note Synchronization Platform

Made with โค๏ธ in India, for knowledge workers everywhere

License: MIT Node.js Version pnpm

Features โ€ข Quick Start โ€ข Documentation โ€ข Contributing


๐ŸŒŸ What is PolyNote?

PolyNote is an open-source, privacy-first note synchronization platform built in India. It seamlessly connects your favorite note-taking apps while keeping your data secure and under your control.

Why PolyNote?

  • ๐Ÿ”’ Privacy First: Your notes stay on your device. End-to-end encryption for everything.
  • ๐ŸŒ Universal Sync: Works with Obsidian, Notion, Joplin, OneNote, and Apple Notes
  • ๐Ÿค– Local AI: Summarize, translate, and enhance notes using local AI models
  • ๐Ÿ‡ฎ๐Ÿ‡ณ Multilingual: Full support for English, Telugu (เฐคเฑ†เฐฒเฑเฐ—เฑ), and Hindi (เคนเคฟเค‚เคฆเฅ€)
  • ๐Ÿ’ป Cross-Platform: Linux, macOS, and Windows support

โœจ Features

๐Ÿ”„ Bidirectional Sync

  • Automatic synchronization across all your note-taking platforms
  • Smart conflict resolution with visual merge tools
  • Preserves formatting, tags, and metadata

๐Ÿง  AI-Powered Tools

  • Local-first AI: Run AI models on your own computer
  • Summarization: Get quick summaries of long notes
  • Translation: Translate between English, Telugu, and Hindi
  • Content Enhancement: Rewrite and improve your notes

๐Ÿ” Security & Privacy

  • End-to-end encryption for all data
  • Secure sharing with encrypted bundles
  • No cloud storage required (unless you choose)
  • Open-source and auditable

๐ŸŒˆ For Indian Users

  • Full support for Indian languages (Telugu, Hindi)
  • RTL text support where needed
  • Localized date and number formats
  • Built by Indian developers who understand your needs

๐Ÿš€ Quick Start

Prerequisites

Before you begin, make sure you have these installed:

  • Node.js (version 22 or higher) - Download here
  • pnpm (version 9 or higher) - Install with: npm install -g pnpm
  • Podman or Docker (for development) - Podman Install Guide

Installation

# 1. Clone the repository
git clone https://github.com/sunilkumarvalmiki/polynote.git
cd polynote

# 2. Install dependencies
pnpm install

# 3. Start the development environment
make dev-up

# 4. Run the application
pnpm dev

That's it! PolyNote should now be running on your computer.

First Steps

  1. Connect Your First App: Start with Obsidian (easiest) or Notion
  2. Configure Sync: Choose which folders to sync
  3. Try AI Features: Summarize a note using local AI
  4. Explore: Check out the graph view and search features

๐Ÿ“– Documentation


๐Ÿ› ๏ธ Development

Project Structure

polynote/
โ”œโ”€โ”€ apps/
โ”‚   โ”œโ”€โ”€ desktop/          # Electron desktop app
โ”‚   โ””โ”€โ”€ server/           # Backend API server
โ”œโ”€โ”€ packages/
โ”‚   โ”œโ”€โ”€ connectors/       # Platform connectors (Obsidian, Notion, etc.)
โ”‚   โ”œโ”€โ”€ ai/              # AI provider integrations
โ”‚   โ”œโ”€โ”€ security/        # Encryption and security
โ”‚   โ””โ”€โ”€ shared/          # Shared utilities and types
โ”œโ”€โ”€ infra/               # Infrastructure and deployment
โ””โ”€โ”€ docs/                # Documentation

Available Commands

# Development
pnpm dev              # Start development server
pnpm dev:desktop      # Start desktop app in dev mode

# Testing
pnpm test             # Run all tests
pnpm test:watch       # Run tests in watch mode
pnpm test:coverage    # Generate coverage report

# Code Quality
pnpm lint             # Lint code
pnpm format           # Format code with Prettier
pnpm type-check       # TypeScript type checking

# Building
pnpm build            # Build for production
pnpm build:desktop    # Build desktop app

Running Tests

We maintain high code quality with comprehensive testing:

# Run all tests
pnpm test

# Run specific test suite
pnpm test packages/ai

# Watch mode for development
pnpm test:watch

# Generate coverage report
pnpm test:coverage

๐Ÿค Contributing

We welcome contributions from developers across India and around the world!

How to Contribute

  1. Fork the repository
  2. Create a feature branch (git checkout -b feat/amazing-feature)
  3. Make your changes
  4. Test your changes (pnpm test)
  5. Commit using conventional commits (git commit -m 'feat: add amazing feature')
  6. Push to your branch (git push origin feat/amazing-feature)
  7. Create a Pull Request

Contribution Guidelines

  • Follow our Code of Conduct
  • Write tests for new features
  • Update documentation when needed
  • Use conventional commit messages
  • Ensure all tests pass before submitting

๐ŸŒ Supported Platforms

Note-Taking Apps

  • โœ… Obsidian - Full bidirectional sync
  • โœ… Notion - Read and write support
  • โœ… Joplin - Full sync with attachments
  • โณ OneNote - Read-only (write coming soon)
  • โณ Apple Notes - Read-only (macOS only)

Operating Systems

  • โœ… Linux - Full support (AppImage, DEB, RPM)
  • โœ… macOS - Intel and Apple Silicon (DMG, PKG)
  • โœ… Windows - Full support (EXE, NSIS installer)

AI Providers

  • โœ… Ollama - Local AI (recommended)
  • โœ… GPT4All - Local AI
  • โœ… llama.cpp - Local AI
  • โœ… OpenAI - Cloud AI (optional)
  • โœ… Claude - Cloud AI (optional)

๐Ÿ“Š Project Status

๐Ÿšง Currently in Active Development

  • Version: v0.9.0 (Beta)
  • Target Release: v1.0.0 in Q1 2025
  • Test Coverage: 85%+
  • Contributors: Growing community of Indian developers

Roadmap

  • Core sync engine
  • Obsidian connector
  • Notion connector
  • Local AI integration
  • Mobile apps (Android first)
  • Cloud sync option
  • Team collaboration features

๐Ÿ‡ฎ๐Ÿ‡ณ Made in India

PolyNote is proudly developed in India by Indian developers who understand the unique needs of Indian knowledge workers and students.

Why This Matters

  • Local Language Support: First-class support for Telugu and Hindi
  • Performance Optimization: Works on modest hardware common in India
  • Offline-First: Reliable even with unstable internet connections
  • Privacy Focused: Your data stays in India if you want it to
  • Community: Join a growing community of Indian open-source contributors

Indian Contributors

We're building a community of talented Indian developers. Want to join us? Check out our Contributing Guide.


๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


๐Ÿ™ Acknowledgments

  • Built with โค๏ธ by developers in India
  • Inspired by the Indian open-source community
  • Special thanks to all our contributors
  • Powered by amazing open-source projects

๐Ÿ“ž Support & Community


๐Ÿ‡ฎ๐Ÿ‡ณ Made with โค๏ธ in India

Empowering knowledge workers, one note at a time

โฌ† Back to Top

About

Universal note synchronization and AI-powered knowledge management for local-first workflows

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors