Skip to main content

No project description provided

Project description

Palmoni

A developer productivity tool that delivers instant code snippets and text expansions anywhere you type. Built with DuckDB for lightning-fast performance and powered by a curated snippet database.

Why Palmoni?

Stop context-switching to look up syntax. Type py::class and instantly get a Python class template. Type git::cm and get git commit -m. Works everywhere - terminal, browser, IDE, anywhere you type.

Performance-first architecture: DuckDB backend loads all snippets into memory at startup for O(1) expansion times. No file I/O during text expansion means zero latency.

Installation

pip install palmoni

Quick Start

# Initialize configuration
palmoni config --init

# List available snippets  
palmoni list

# Start the text expander (runs in background)
palmoni start

Now type any trigger followed by a space, tab, or enter:

  • pip::rpip install -r requirements.txt
  • py::main → Complete Python main function
  • git::stgit status
  • ::tyThank you

Features

  • 40+ Built-in Snippets - Python, Git, SQL, Docker, communication shortcuts
  • Works Everywhere - Terminal, browser, any text field
  • Zero Configuration - Ships with curated snippet database
  • Smart Expansion - Triggers on word boundaries (space, tab, enter)
  • Cross-platform - macOS, Linux, Windows support

Architecture

Palmoni uses DuckDB to store and manage snippets efficiently:

  • Startup: All snippets loaded from database into memory hash table
  • Runtime: O(1) snippet lookups with no database queries during expansion
  • Database: Read-only DuckDB file ships with the package
  • Memory: Optimized for thousands of snippets without performance degradation

Snippet Categories

Python & Development

  • py::main - Main function template
  • py::class - Class template
  • pip::r - Install requirements
  • doc::run - Docker run command

Git Shortcuts

  • git::st - Status
  • git::add - Add all files
  • git::cm - Commit with message

Communication

  • ::ty - Thank you
  • ::lmk - Let me know
  • email::meeting - Meeting follow-up template

And many more... Run palmoni list to see all snippets.

Usage

Initialize Configuration

palmoni config --init

Sets up configuration directory and verifies database access.

Start the Expander

palmoni start

Runs in the background, listening for snippet triggers. Loads all snippets into memory for instant access.

List All Snippets

palmoni list

Shows all available snippets and their expansions from the DuckDB database.

Show Configuration

palmoni config --show

Displays current configuration including database path and performance settings.

Stop the Expander

Press Ctrl+C in the terminal where it's running.

How It Works

  1. Database Loading: At startup, all snippets are loaded from DuckDB into a memory hash table
  2. Keystroke Monitoring: Background process monitors all keystrokes across applications
  3. Pattern Matching: When you type a trigger (like pip::r), it's recognized instantly
  4. Smart Expansion: On word boundary (space, tab, enter), trigger is replaced with expansion
  5. Zero Latency: All lookups happen in memory - no file or database I/O during expansion

Performance

  • Startup time: <100ms to load entire snippet database thanks to DuckDB's efficient columnar storage
  • Expansion time: <1ms lookup and replacement
  • Memory usage: ~10MB for thousands of snippets
  • Scalability: Tested with 10,000+ snippets without performance impact

Requirements

  • Python 3.11+
  • DuckDB (automatically installed)
  • Works on macOS, Linux, Windows

Database Technology

Palmoni leverages DuckDB for optimal performance:

  • Fast startup: Columnar storage enables rapid full-table scans
  • Memory efficiency: Only active data loaded into Python memory
  • Reliability: ACID transactions prevent data corruption
  • Portability: Single file database ships with package

Coming Soon

  • Custom snippet management via CLI
  • Team snippet sharing capabilities
  • Premium snippet packs for specialized domains
  • Performance analytics and usage tracking
  • More programming languages and frameworks

License

MIT License - see LICENSE file for details.

Support

Having issues? Open an issue or email daniel@developyr.com

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

palmoni-0.1.3.tar.gz (35.2 kB view details)

Uploaded Source

Built Distribution

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

palmoni-0.1.3-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

Details for the file palmoni-0.1.3.tar.gz.

File metadata

  • Download URL: palmoni-0.1.3.tar.gz
  • Upload date:
  • Size: 35.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for palmoni-0.1.3.tar.gz
Algorithm Hash digest
SHA256 3252beee5aad7a52123c8959f2150d578d2dfbc58dfb6d8dfa39b0cd1c6cc025
MD5 aa008c26d8e3bd3d305fdeb38605d9db
BLAKE2b-256 84c9d43285013a01434158c738ccc4437f4e2babb48bdd405a913d93774d38db

See more details on using hashes here.

Provenance

The following attestation bundles were made for palmoni-0.1.3.tar.gz:

Publisher: publish.yml on developyrs/palmoni

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

File details

Details for the file palmoni-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: palmoni-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 21.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for palmoni-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 afc49f3067ebe139198cc26ef20f886857d84a625e3e8dfca6999a84e234a235
MD5 e735e78d8385243b5fe9d8f0ba163034
BLAKE2b-256 47bb9e37852fb50fc0b12c16258ede523f06721ab0fbfce1d56bebc859164ca9

See more details on using hashes here.

Provenance

The following attestation bundles were made for palmoni-0.1.3-py3-none-any.whl:

Publisher: publish.yml on developyrs/palmoni

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