Skip to content

mrpunkdasilva/bytebabe-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

186 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation


ByteBabe CLI

A cyberpunk-themed developer toolkit for supercharged workflows πŸš€

Installation β€’ Features β€’ Usage β€’ Contributing β€’ Support

⚑ Overview

ByteBabe is a modular CLI toolkit that brings cyberpunk aesthetics to your development workflow. It provides a unified interface for managing development environments, containers, Git operations, databases, and more - all with a unique cyberpunk twist.

🎯 Key Features

🐳 Docker Management (Poseidon Module)

  • Container/image/volume management
  • Compose stack handling
  • Visual container stats
  • Resource monitoring
  • Supports both verbose and short command styles

πŸ—„οΈ Database Operations (Oracle Module)

  • Support for MySQL, PostgreSQL, MongoDB, Redis
  • Backup/restore operations
  • Migration tools
  • GUI tool integration (TablePlus, DBeaver, etc.)

πŸ”§ Git & GitHub Operations (Neo Module)

  • Interactive Git interface
  • Repository management
  • Branch operations
  • Semantic commit handling
  • GitHub CLI integration
  • Pull requests and issues management

πŸ› οΈ Development Tools (Matrix Module)

  • Terminal tools (Zsh + plugins)
  • Database management GUIs
  • API testing tools
  • Browser tools
  • IDE configuration and management

βš™οΈ System Management (Prime Module)

  • Package management (install, upgrade, remove)
  • Security tools (firewall, scan, quarantine)
  • System utilities (clean, backup, network)
  • Service control and monitoring
  • System information and stats

🌐 Backend Development

  • Multi-language runtime support (Node.js, Python, Java, Go, Rust, PHP)
  • Framework installation (Spring Boot, Express, Django, Flask, NestJS, Laravel)
  • Universal package manager detection
  • Development environment setup

🎨 Frontend Development

  • Framework support (React, Vue, Angular, Next.js)
  • Package manager installation (npm, yarn, pnpm, bun)
  • Project scaffolding and generation
  • Development server management

πŸ”Œ API Development (Flux Module)

  • REST API client with HTTP verbs (GET, POST, PUT, DELETE)
  • JSON server integration
  • Request history and management
  • Interactive API testing

πŸ’» IDE Management

  • Multiple IDE support (VS Code, Zed, Sublime, JetBrains)
  • Installation and configuration
  • Status monitoring
  • Quick launch capabilities

πŸš€ Server Management

  • Docker-based server orchestration
  • Multi-service management
  • Status monitoring
  • Automated setup and configuration

πŸš€ Installation

Prerequisites

  • 🐧 Linux/Unix (sorry Windows-chan)
  • 🐚 Bash 4+
  • πŸ“¦ Git
  • 🌐 curl or wget
  • 🐳 Docker (optional)

Quick Install

# Using curl
curl -fsSL https://raw.githubusercontent.com/mrpunkdasilva/bytebabe/main/install.sh | bash

# Or using wget
wget -qO- https://raw.githubusercontent.com/mrpunkdasilva/bytebabe/main/install.sh | bash

Manual Installation

# Clone the repository
git clone https://github.com/mrpunkdasilva/bytebabe.git
cd bytebabe

# Run the installer
./install.sh

πŸ’» Usage

🐳 Docker Operations

# Verbose style
bytebabe docker containers list --all
bytebabe docker images pull nginx

# Short style (cyberpunk)
bytebabe docker c ls -a
bytebabe docker i p nginx

πŸ—„οΈ Database Operations

# Setup database environment
bytebabe db setup

# Start specific database
bytebabe db start postgres

# Check database status
bytebabe db status

πŸ”§ Git & GitHub Operations

# Interactive git status
bytebabe git status

# GitHub repository operations
bytebabe gh clone username/repo
bytebabe gh create my-new-repo
bytebabe gh pr create

πŸ› οΈ Development Tools

# Install terminal tools
bytebabe devtools terminal all

# Install database tools
bytebabe devtools database dbeaver

# Install API tools
bytebabe devtools api --test

βš™οΈ System Management

# Package management
bytebabe prime install package-name
bytebabe prime upgrade
bytebabe prime remove package-name

# Security tools
bytebabe prime firewall status
bytebabe prime scan system

# System utilities
bytebabe prime clean temp
bytebabe prime backup create

🌐 Backend Development

# Install runtime
bytebabe backend install node
bytebabe backend install python
bytebabe backend install java

# Setup framework
bytebabe backend spring setup
bytebabe backend express setup

🎨 Frontend Development

# Setup frontend environment
bytebabe frontend setup

# Create new project
bytebabe frontend new react my-app
bytebabe frontend new vue my-app

πŸ”Œ API Development

# Start JSON server
bytebabe flux server

# Make API requests
bytebabe flux get users
bytebabe flux post users '{"name": "John"}'
bytebabe flux put users/1 '{"name": "Jane"}'
bytebabe flux delete users/1

πŸ’» IDE Management

# Install IDE
bytebabe ide vscode
bytebabe ide zed

# Run IDE
bytebabe ide run code
bytebabe ide status zed

πŸš€ Server Management

# Start servers
bytebabe servers up

# Check status
bytebabe servers status

# Stop servers
bytebabe servers down

πŸ› οΈ Utilities

# Initialize environment
bytebabe init

# Simple text editor
bytebabe edit file.txt

# Greeting message
bytebabe hello

πŸ“¦ Module Overview

Module Description Commands Test Status
docker Container management containers, images, volumes, compose βœ… 10/10
db Database operations setup, start, stop, status βœ… 10/10
git Git operations status, stage, commit, push πŸ”„ Pending
gh GitHub operations clone, create, pr, issues πŸ”„ Pending
devtools Development tools terminal, database, api, browser πŸ”„ Pending
prime System management install, upgrade, firewall, scan πŸ”„ Pending
backend Backend development install, setup, generate ⚠️ 9/10
frontend Frontend development setup, new, generate βœ… 10/10
flux API development get, post, put, delete, server πŸ”„ Pending
ide IDE management vscode, zed, sublime, run πŸ”„ Pending
servers Server management up, down, status, setup πŸ”„ Pending
init Environment setup Complete development environment βœ… 10/10
edit Text editor Simple file editing βœ… 10/10
hello Greeting Cyberpunk welcome message βœ… 10/10

πŸ› οΈ Configuration

ByteBabe can be customized through:

  • ~/.config/bytebabe/config.json - General settings
  • ~/.config/bytebabe/themes/ - Custom themes
  • ~/.config/bytebabe/plugins/ - User plugins

πŸ§ͺ Testing

ByteBabe includes a comprehensive testing framework to ensure code quality and reliability:

Unit Tests

# Run individual command tests
bash tests/unit/commands/hello.test.sh
bash tests/unit/commands/init.test.sh
bash tests/unit/commands/backend.test.sh
bash tests/unit/commands/frontend.test.sh
bash tests/unit/commands/byteedit.test.sh
bash tests/unit/commands/db.test.sh
bash tests/unit/commands/docker.test.sh

# Run all tests
for test_file in tests/unit/commands/*.test.sh; do
    echo "Executando: $test_file"
    bash "$test_file"
    echo "---"
done

Test Coverage

  • βœ… hello - 10/10 tests passing
  • βœ… init - 10/10 tests passing
  • βœ… backend - 9/10 tests passing
  • βœ… frontend - 10/10 tests passing
  • βœ… byteedit - 10/10 tests passing
  • βœ… db - 10/10 tests passing
  • βœ… docker - 10/10 tests passing

Test Structure

Each test follows a consistent pattern:

  • Setup: Creates temporary environment
  • Structural Tests: Verifies file existence, executability, functions, imports
  • Functional Tests: Checks command-specific features
  • Cleanup: Removes temporary files
  • Reporting: Shows pass/fail summary

Testing Documentation

For detailed testing information, see tests/README.md.

🀝 Contributing

Development Setup

# Clone and setup
git clone https://github.com/mrpunkdasilva/bytebabe.git
cd bytebabe

# Run tests before making changes
for test_file in tests/unit/commands/*.test.sh; do
    bash "$test_file"
done

# Make your changes and add tests
# Follow Conventional Commits for commit messages
git commit -m "feat: add new feature"
git commit -m "fix: resolve bug in module"
git commit -m "test: add unit tests for command"

# Run tests again
for test_file in tests/unit/commands/*.test.sh; do
    bash "$test_file"
done

Commit Guidelines

We follow Conventional Commits:

  • feat: - New features
  • fix: - Bug fixes
  • test: - Adding or updating tests
  • docs: - Documentation changes
  • refactor: - Code refactoring
  • style: - Code style changes
  • perf: - Performance improvements

Testing Requirements

  • All new features must include unit tests
  • Maintain test coverage above 80%
  • Run tests before submitting PRs
  • Follow existing test patterns

πŸ“ License

Distributed under the MIT License. See LICENSE for more information.

πŸ’¬ Support

🌟 Acknowledgments

  • Built with cyberpunk aesthetics in mind
  • Powered by the open source community
  • Inspired by modern developer workflows
  • Quality-driven development with comprehensive testing

Built with ❀️ by Mr Punk da Silva

About

ByteBabe: A Linux shell configuration for improved development environments

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages