Releases: developyrs/palmoni
v0.1.3
🚀 Palmoni 0.1.3 — uv‑powered publishing flow
This release introduces a modernized packaging and publishing workflow, replacing the legacy Poetry/Twine setup with a streamlined uv‑based build and deploy process.
✨ What’s new
Switched to uv for builds
Faster, dependency‑light packaging with clean dist/ rebuilds.
Uses pyproject.toml as the single source of truth for versioning and metadata.
Improved publish script
Auto‑detects version from pyproject.toml (no hard‑coded strings).
Targets only freshly built artifacts to avoid stale uploads.
Clearer output with pre‑publish file listing for sanity checks.
CI/CD parity
GitHub Actions workflow updated for consistency with local build steps.
Pre‑release tags (e.g., -beta, -rc) can route to TestPyPI, production tags go to PyPI.
🛠 Developer experience improvements
Safer error handling — friendly messages when required env vars are missing.
Easier release flow: bump version → tag → publish, no manual token handling for PyPI when using trusted publishing in CI.
Upgrade tip: If you’re working locally, remember to pip install uv in your environment before running the new deploy_test.sh or uv build commands.
v0.1.2
Palmoni v0.1.2 - Background Daemon Support
This release adds proper background daemon functionality, allowing Palmoni to run continuously without holding terminal sessions.
On mac if this is the first time it is being run, after you give it permission, you have to stop and start the service for it to work.
New Features
Daemon Mode
- Auto-background execution -
palmoni startnow automatically runs in the background - Process management - New
palmoni stopandpalmoni statuscommands for daemon lifecycle control - Cross-platform support - Works on macOS, Linux, and Windows with platform-specific optimizations
- Session preservation - Maintains accessibility permissions required for keyboard monitoring on macOS
Process Control Commands
palmoni start # Starts in background automatically
palmoni stop # Gracefully stops the daemon
palmoni status # Check if palmoni is running and show PIDEnhanced Reliability
- Duplicate prevention - Prevents multiple instances from running simultaneously
- PID file management - Tracks running processes in
~/.palmoni/palmoni.pid - Graceful shutdown - Proper signal handling and cleanup on exit
- Stale process cleanup - Automatically removes invalid PID files
Technical Improvements
- macOS compatibility - Uses subprocess instead of fork to preserve session context for keyboard access
- Windows support - Leverages
DETACHED_PROCESSfor proper background execution - Signal handling - Responds to SIGTERM and SIGINT for clean shutdowns
- Process lifecycle - Complete daemon management with start/stop/status operations
Usage Changes
Before v0.1.2:
palmoni start # Held terminal session open
# Required Ctrl+C to stop, blocked terminal useAfter v0.1.2:
palmoni start # Returns immediately, runs in background
palmoni status # Check if running
palmoni stop # Clean shutdown when neededCompatibility
- Maintains full backward compatibility with existing snippet functionality
- DuckDB performance characteristics unchanged
- All existing commands (
palmoni list,palmoni config) work identically - Foreground mode still available with
palmoni start --no-daemon
Platform Support
- macOS - Full daemon support with accessibility framework compatibility
- Linux - Standard Unix daemon with proper forking and session management
- Windows - Background process execution via subprocess detachment
Requirements
Same as v0.1.1:
- Python 3.11+
- 10MB disk space for database and configuration
- Accessibility permissions on macOS (system will prompt if needed)
Migration
No migration required. Existing installations will automatically gain daemon functionality on upgrade.
Installation: pip install --upgrade palmoni
Full Documentation: https://github.com/developyrs/palmoni
v0.1.1
Palmoni v0.1.1 - Initial Public Release
Palmoni is a developer productivity tool that delivers instant code snippets and text expansions anywhere you type. Built with DuckDB for lightning-fast performance.
What's New
Core Features
- Instant Text Expansion - Type triggers like
py::classfollowed by space/tab/enter for immediate code snippet expansion - Universal Compatibility - Works in terminal, browser, IDE, any text input field
- 40+ Built-in Snippets - Curated collection covering Python, Git, SQL, Docker, and communication shortcuts
- Zero Configuration - Ready to use immediately after installation
Architecture Highlights
- DuckDB Backend - All snippets stored in high-performance columnar database
- Memory-Optimized - O(1) snippet lookups with sub-millisecond expansion times
- Read-Only Database - Ships with pre-curated snippet collection for reliability
- Cross-Platform - Native support for macOS, Linux, and Windows
Installation
pip install palmoniQuick Start
# Initialize configuration
palmoni config --init
# View available snippets
palmoni list
# Start the text expander
palmoni startPerformance Benchmarks
- Startup: <100ms to load entire snippet database into memory
- Expansion: <1ms trigger recognition and replacement
- Memory: ~10MB footprint for thousands of snippets
- Scalability: Tested with 10,000+ snippets without degradation
Snippet Categories
Development
- Python class/function templates
- Git command shortcuts
- Docker container management
- SQL query patterns
Communication
- Email templates and signatures
- Slack/Teams responses
- Common abbreviations
Productivity
- Package management commands
- Development environment setup
- Documentation templates
Technical Details
- Database: DuckDB for optimal read performance
- Memory Management: Full snippet set loaded at startup for zero-latency access
- Trigger Recognition: Smart word-boundary detection
- Process Architecture: Background daemon with minimal resource usage
Requirements
- Python 3.11+
- 10MB disk space
- 10MB RAM for snippet cache
What's Next
Future releases will focus on:
- Custom snippet management
- Team collaboration features
- Premium curated content packs
- Performance analytics
Installation: pip install palmoni
Documentation: See README.md for complete usage guide
Issues: Report bugs at https://github.com/developyrs/palmoni/issues