โ ๏ธ๐ฟ๐ธ๐งต Unified Redis Operations Package - Consolidating 13+ bash scripts
Project description
Nyro - Unified Redis Operations Package
โ ๏ธ๐ฟ๐ธ๐งต G.Music Assembly Consolidation
Transforming 13+ scattered bash scripts into unified Python harmony
๐ฏ What is Nyro?
Nyro is a complete Python package that consolidates 13+ bash Redis scripts into a unified, musical, and intuitive interface. Born from Jerry's โก G.Music Assembly vision, it replaces fragmented workflows with harmonic development experiences.
๐ Before vs After
Before: 13+ separate bash scripts
./menu.sh # Interactive menu
./set-key.sh key val # Set operations
./get-key.sh key # Get operations
./del-key.sh key # Delete operations
./scan-garden.sh "*" # Key scanning
./stream-add.sh ... # Stream operations
./redis-mobile.sh # Mobile interface
# ... and 6 more scripts
After: One unified Python package
nyro interactive # All menus unified
nyro set key val # All operations unified
nyro get key # Clean, consistent interface
nyro scan --garden # Enhanced with categories
nyro stream diary add # Logical grouping
# + Musical session tracking!
๐ Quick Start
One-Command Installation
curl -sSL https://raw.githubusercontent.com/gerico1007/nyro/main/QUICK_SETUP.sh | bash
Manual Installation
git clone https://github.com/gerico1007/nyro.git
cd nyro
pip install -e .
nyro init
# Edit .env with your Redis credentials
nyro test
nyro interactive
โจ Key Features
๐ง Unified Operations
- Multi-database support - Route operations across multiple Upstash Redis instances
- Profile management - Seamless credential switching
- Both REST & CLI - Works with Upstash REST API and direct Redis CLI
- Interactive menus - All bash menus consolidated into one interface
๐ผ Musical Integration
- Session tracking - Development sessions become musical compositions
- ABC notation export - Generate playable music from your work
- Team harmonics - Different roles create distinct musical voices
- Rhythmic patterns - Code patterns translate to musical motifs
๐๏ธ Architecture
- Profile-based - Easy switching between Redis instances
- Massive data handling - Chunked operations for large payloads
- Security synthesis - Proper authentication and validation
- Four-perspective testing - โ ๏ธ๐ฟ๐ธ๐งต Assembly validation
๐ฆ Package Structure
nyro/
โโโ core/ # Redis operations
โ โโโ client.py # Unified Redis client
โ โโโ profiles.py # Multi-database management
โ โโโ operations.py # Advanced operations
โโโ cli/ # Command interface
โ โโโ main.py # CLI entry point
โ โโโ interactive.py # Interactive menus
โโโ musical/ # Musical integration
โ โโโ ledger.py # Session tracking
โ โโโ composer.py # Harmonic generation
โโโ testing/ # Validation framework
๐ฏ Commands Reference
Basic Operations
nyro set key value # Set Redis key
nyro get key # Get Redis key
nyro del key # Delete Redis key
nyro scan "pattern*" # Scan keys with pattern
nyro test # Test connection
Advanced Features
nyro interactive # Interactive CLI mode
nyro scan --garden # Categorized key scanning
nyro list push mylist item # List operations
nyro stream diary add # Stream operations
nyro profiles list # Profile management
nyro music summary # Musical session summary
Profile Management
nyro profiles list # List all profiles
nyro profiles switch secondary # Switch to profile
nyro --profile test interactive # Use specific profile
๐ง Configuration
Environment Setup
# Primary Redis database
KV_REST_API_URL=https://your-redis.upstash.io
KV_REST_API_TOKEN=your_token_here
# Additional profiles
PROFILE_SECONDARY_URL=https://secondary-redis.upstash.io
PROFILE_SECONDARY_TOKEN=secondary_token
# Alternative: Redis CLI
REDIS_URL=rediss://user:pass@host:6380
Multiple Profiles
Nyro supports unlimited Redis databases through profile configuration:
# List available profiles
nyro profiles list
# Switch between databases
nyro profiles switch production
nyro profiles switch testing
# Use temporary profile
nyro --profile staging interactive
๐ผ Musical Features
Nyro includes unique musical session tracking:
# Enable musical logging
nyro --musical interactive
# View session compositions
nyro music summary
# Export ABC notation
nyro music export
# Musical patterns for team members:
# โ ๏ธ Nyro: Structural patterns (X-x-X-x-)
# ๐ฟ Aureon: Flowing patterns (~~o~~o~~)
# ๐ธ JamAI: Harmonic patterns (G-D-A-E-)
# ๐งต Synth: Terminal patterns (|-|-|-|-)
๐งช Testing
Quick Test
nyro test # Test connection
Comprehensive Testing
python -m testing.test_framework # Full Assembly tests
Interactive Testing
nyro interactive
# Choose option 9: "Quick Scan & Test"
๐ Migration Guide
From Bash Scripts
Replace your existing bash scripts with Nyro commands:
| Old Bash Script | New Nyro Command |
|---|---|
./menu.sh |
nyro interactive |
./set-key.sh key val |
nyro set key val |
./get-key.sh key |
nyro get key |
./del-key.sh key |
nyro del key |
./scan-garden.sh "*" |
nyro scan --garden |
./stream-add.sh stream field val |
nyro stream diary add |
./push-list.sh list item |
nyro list push list item |
./redis-mobile.sh |
nyro interactive |
Environment Migration
Your existing .env files work with Nyro! Just ensure variables follow the pattern:
KV_REST_API_URLandKV_REST_API_TOKENfor default profilePROFILE_NAME_URLandPROFILE_NAME_TOKENfor additional profiles
๐ Benefits
For Developers
- 80% less code - 13+ scripts โ 1 package
- Consistent interface - No more remembering different script syntaxes
- Better error handling - Clear messages and guidance
- Type safety - Python types vs bash string handling
- Testing support - Comprehensive test framework
For Teams
- Musical collaboration - Sessions become shared compositions
- Profile sharing - Easy credential management
- Garden metaphors - Redis operations as botanical exploration
- Assembly methodology - Four-perspective development validation
For Operations
- Cross-platform - Works on Linux, macOS, Windows
- Docker support - Container-ready installation
- Security synthesis - Proper authentication handling
- Massive data support - Chunked operations for large payloads
๐ค Contributing
Nyro follows the โ ๏ธ๐ฟ๐ธ๐งต G.Music Assembly methodology:
- โ ๏ธ Nyro: Structural analysis and architecture
- ๐ฟ Aureon: Emotional flow and user experience
- ๐ธ JamAI: Creative solutions and musical integration
- ๐งต Synth: Terminal orchestration and security
Development Setup
git clone https://github.com/gerico1007/nyro.git
cd nyro
pip install -e .[dev]
python -m testing.test_framework
๐ License
MIT License - See LICENSE file for details.
๐ต Musical Innovation
Nyro pioneered musical development documentation - the first package to transform coding sessions into musical compositions. Each development activity becomes a note, each team member a voice, each session a melody.
"Every line of code is a note, every function a phrase, every feature a movement. Together, development teams create symphonies of software."
๐ Support
- Installation Guide: See
INSTALLATION.md - Assembly Documentation: See
CLAUDE.md - Testing Ledger: See
testing/ASSEMBLY_LEDGER.md - Musical Enhancement: See
ECHOTHREADS_ENHANCEMENT_PROPOSAL.md
๐ผ Transform your Redis operations into musical harmony
Built with โ ๏ธ๐ฟ๐ธ๐งต G.Music Assembly methodology
Jerry's โก vision of unified development experiences
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nyro-0.1.1.tar.gz.
File metadata
- Download URL: nyro-0.1.1.tar.gz
- Upload date:
- Size: 37.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f02f219cdaa165e201e0f742b9c11fd0762b72d95d03c76cc76701cec6ea4aa8
|
|
| MD5 |
ec6f00be12b34e467766a47bcb72da65
|
|
| BLAKE2b-256 |
097d0c159cdebe339b74255f6bb4d0c772d6a72c809c2e8cc57f09019d7273a4
|
File details
Details for the file nyro-0.1.1-py3-none-any.whl.
File metadata
- Download URL: nyro-0.1.1-py3-none-any.whl
- Upload date:
- Size: 36.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aede7f380783f5f82414ed1ba5883615ef3bfc2b7739aa1765489855646818d8
|
|
| MD5 |
21117c33fbc4f1175fbfce0a279d20b4
|
|
| BLAKE2b-256 |
4136acedbde603fc3a5656630eb6297b413a0d622423a0fc21549e4d744321e4
|