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.2.tar.gz (19.0 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.2-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: palmoni-0.1.2.tar.gz
  • Upload date:
  • Size: 19.0 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.2.tar.gz
Algorithm Hash digest
SHA256 6af23c90d12d8985fb92c0a33e4b55d6265f639f1e58b1f29ae00cbfdefe02a8
MD5 95686721fbf2fe62158357b16a781975
BLAKE2b-256 c021ce3ec5e0a48b8d7f70e8762cda93dd69122a86c29fa580f6994344304dc7

See more details on using hashes here.

Provenance

The following attestation bundles were made for palmoni-0.1.2.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.2-py3-none-any.whl.

File metadata

  • Download URL: palmoni-0.1.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 636185837480d73bd69371edf8c786d1d0c9db9cb9d0ad95f0c38ddcf56cbba3
MD5 9b60c5694f1b54eec3b59819009224c1
BLAKE2b-256 9b7b00815e35467bb3d21e48618bf692ea8a3bce83d60721967bd5c7925920fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for palmoni-0.1.2-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