Skip to main content

โ™ ๏ธ๐ŸŒฟ๐ŸŽธ๐Ÿงต 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

License Python Status

๐ŸŽฏ 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_URL and KV_REST_API_TOKEN for default profile
  • PROFILE_NAME_URL and PROFILE_NAME_TOKEN for 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

We welcome contributions through detailed enhancement requests!

๐ŸŽฏ How to Collaborate

The primary way to contribute to Nyro is by creating detailed enhancement requests as issues in our GitHub repository:

  1. Visit: https://github.com/gerico1007/nyro/issues/new
  2. Use our template: See CONTRIBUTING.md for the comprehensive enhancement request format
  3. Engage: Participate in discussions and help refine ideas

๐ŸŽผ Types of Contributions Welcome

  • Feature Enhancements: New Redis operations, CLI improvements
  • Musical Integration: ABC notation features, rhythmic patterns
  • Documentation: Tutorials, examples, installation guides
  • Testing: Framework improvements, new test scenarios
  • Platform Support: Docker, cloud deployments, mobile optimizations

๐Ÿ“‹ Enhancement Request Template

See CONTRIBUTING.md for our detailed template that includes:

  • Feature description and motivation
  • Musical integration possibilities
  • Impact assessment and testing considerations
  • Assembly perspective alignment (โ™ ๏ธ๐ŸŒฟ๐ŸŽธ๐Ÿงต)

๐ŸŽต Assembly Methodology

Nyro follows the โ™ ๏ธ๐ŸŒฟ๐ŸŽธ๐Ÿงต G.Music Assembly approach:

  • โ™ ๏ธ 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

For detailed contribution guidelines, see CONTRIBUTING.md

๐Ÿ“„ 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

๐ŸŽฏ Getting Help

๐Ÿ“– Documentation

  • Installation Guide: See INSTALLATION.md
  • Contributing: See CONTRIBUTING.md for detailed collaboration guide
  • Assembly Documentation: See CLAUDE.md
  • Testing Ledger: See testing/ASSEMBLY_LEDGER.md
  • Musical Enhancement: See ECHOTHREADS_ENHANCEMENT_PROPOSAL.md

๐Ÿค Community Collaboration

Primary collaboration method: Create detailed enhancement requests as issues in gerico1007/nyro


๐ŸŽผ 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

nyro-0.1.3.tar.gz (38.9 kB view details)

Uploaded Source

Built Distribution

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

nyro-0.1.3-py3-none-any.whl (37.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nyro-0.1.3.tar.gz
  • Upload date:
  • Size: 38.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for nyro-0.1.3.tar.gz
Algorithm Hash digest
SHA256 78353648269423b97a0d970e0e0e212cd790ea704c63919020cb799255b4d1ba
MD5 dab25bc49b47cda4c7d791dc01acccb1
BLAKE2b-256 e8517750931935c2cbedde1982d5372bb348d012e78abee36178432c32ab4147

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nyro-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 37.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for nyro-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c777dd932e04edec6429118d0719f8e04abcdde940b25bf47df26a0aaddc8b91
MD5 efe4811b9f997955d0123bf35a71a368
BLAKE2b-256 2fa2046a77cbe69809ddbe0787efd884add28746e8fb565db98d993e5fd562b2

See more details on using hashes here.

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