Skip to content

The world's first Narrative RPG Test Framework that transforms the eternal struggle of testing into an epic mythological journey. Instead of dreading test failures, you'll find yourself addicted to the dopamine rush of leveling up, unlocking achievements, and uncovering the dark, beautiful story of Sisyphus and Daedalus building the Labyrinth

Notifications You must be signed in to change notification settings

smattymatty/Sisyphus-test-framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

6 Commits
ย 
ย 

Repository files navigation

๐Ÿชจ Sisyphus Test Framework

License: MIT Greek Mythology Existential Dread Camus Approved

A Narrative RPG Test Framework for Dopamine-Driven Development

"One must imagine Sisyphus coding." - What Camus would say if he were a developer

image

image

What is This Madness?

The Sisyphus Test Framework is the world's first Narrative RPG Test Framework that transforms the eternal struggle of testing into an epic mythological journey. Instead of dreading test failures, you'll find yourself addicted to the dopamine rush of leveling up, unlocking achievements, and uncovering the dark, beautiful story of Sisyphus and Daedalus building the Labyrinth.

Example of Fixing Tests, one test remaining

Does YOUR test framework double as a Narrative RPG? Mine does.

๐ŸŽญ The Philosophy: Dopamine-Driven Development (DDD)

Testing is traditionally the most tedious part of development. But what if we could transform this Sisyphean task into something genuinely fun and rewarding?

The Sisyphus Test Framework gamifies testing through:

  • ๐ŸŽฎ XP and Leveling System: Every test gives you experience points
  • ๐Ÿ† Achievement System: 50+ mythologically-themed achievements to unlock
  • ๐Ÿ“œ Epic Story Mode: A 50-level narrative that unfolds as you level up
  • ๐Ÿ›๏ธ Labyrinth Exploration: Each test is Sisyphus alone, exploring the maze of his own code
  • ๐ŸŒŸ Combo System: Chain successful tests for massive XP multipliers
  • ๐Ÿ“Š Persistent Progress: Your journey is saved across all sessions

๐Ÿ›๏ธ The Epic Story

Hidden within the framework is an untold storyโ€”a 5-act Greek tragedy told through 50 fragments:

  • Act I: The New Curse (Levels 1-10) - Sisyphus meets Daedalus
  • Act II: The Labyrinth's Nature (Levels 11-20) - The true purpose unfolds
  • Act III: The Cracks Appear (Levels 21-30) - Characters break under strain
  • Act IV: Inescapable Truths (Levels 31-40) - Secrets are revealed
  • Act V: The Eternal Cycle (Levels 41-50) - Acceptance of the absurd

Each level unlocks one story fragment. Inspired by Greek Mythology and the works of Albert Camus.

"๐Ÿ›๏ธ THE ARRIVAL - You are brought to a high tower in the palace of Knossos. A man with haunted eyes introduces himself as Daedalus. 'King Minos has a task for us,' he says. 'A glorious, eternal task.'" - The First Line

๐Ÿš€ Features That Will Ruin Your Productivity

๐ŸŽฎ Complete RPG Experience

  • Experience Points: Earn XP for every passing test
  • Leveling System: 50 levels with exponential XP requirements
  • Achievement System: Over 50 achievements with historical significance
  • Combo Multipliers: Chain victories for massive XP bonuses
  • Streak Tracking: Maintain winning streaks across sessions

๐Ÿ“Š Obsessive Progress Tracking

  • Sisyphus Archive: Like .git but for your eternal struggle
  • Historical Analysis: Track improvement trends over time
  • Performance Metrics: Speed optimizations earn bonus XP
  • Lifetime Statistics: Your sisyphus.legend file tracks everything
  • Daily Milestones: Special achievements that reset daily

๐Ÿ›๏ธ Mythological Immersion

  • Time-Aware Greetings: Different messages for dawn, noon, dusk, midnight
  • Seasonal Variations: Story changes with the seasons
  • Greek Historical Events: Special messages on historical dates
  • Character Development: Sisyphus and Daedalus evolve throughout the story
  • Act-Aware Test Narration: Individual test messages change based on story progression

๐ŸŽฏ Smart Test Management

  • Failure Analysis: Detailed breakdowns of what went wrong
  • Motivational Recovery: Inspirational quotes when you fail
  • Smart Retry Logic: Framework learns from your patterns
  • Bulk Test Orchestration: Run entire test suites with epic summaries

๐Ÿ“ฑ Installation (Current Implementation)

Note: This is an early-stage project with ambitious goals! Currently implemented as a C testing framework with extensive mythological theming.

Quick Start (C Language)

# Clone the framework
git clone https://github.com/your-org/sisyphus-test-framework.git
cd sisyphus-test-framework

# Copy the header to your project
cp sisyphus.h /path/to/your/project/

# Start your eternal journey
./run_tests.sh

Using in Your Tests

#include "sisyphus.h"

int test_string_operations(void) {
    TEST_SUITE_START("String Operations - Navigating the Labyrinth");
    
    RUN_TEST(test_string_concatenation);
    RUN_TEST(test_string_length);
    RUN_TEST(test_string_comparison);
    
    TEST_SUITE_END();
}

int test_string_concatenation(void) {
    char result[100];
    strcpy(result, "Hello");
    strcat(result, " World");
    
    TEST_ASSERT(strcmp(result, "Hello World") == 0, "Found the correct path through the string maze");
    TEST_ASSERT(strlen(result) == 11, "Measured the corridor's true length");
    
    return 1; // Another passage conquered!
}

๐ŸŽฎ Sample Output

๐Ÿ›๏ธ LABYRINTH EXPLORATION: String Operations - Navigating the Labyrinth
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
๐Ÿ”ฅ Sisyphus ventures deeper into the maze of logic!
๐Ÿ’ญ Each test reveals another secret of the architect's design

๐Ÿšถ SISYPHUS EXPLORES: test_string_concatenation
๐Ÿง  INNER VOICE: Found the correct path through the string maze (+10 XP)
๐Ÿง  REALIZATION: Measured the corridor's true length (+13 XP)
โœจ PASSAGE CONQUERED: test_string_concatenation (0.000023s)
   ๐Ÿ—ฃ๏ธ 'Even in this prison, I find patterns. Beauty. Purpose.' -Sisyphus

๐Ÿ† ACHIEVEMENT UNLOCKED: First Blood! +7 XP
   First understanding of the maze's logic - the mind awakens!

๐ŸŒŸ LEVEL UP! Welcome to Level 2!
โœจ Your comprehension of the Labyrinth deepens!

๐Ÿชจ THE FIRST COMMIT
Daedalus unrolls a vast, impossibly complex blueprint. 'Your curse has been... 
updated, Sisyphus. The gods grew bored of the boulder. Minos, however, has a use for your persistence.'

๐Ÿšง Current Status & TODO

What's Implemented:

  • โœ… Complete C testing framework with gamification
  • โœ… 50-level story progression system
  • โœ… 50+ achievements with historical context
  • โœ… XP system with combo multipliers
  • โœ… Progress tracking and archiving
  • โœ… Time-aware mythological greetings
  • โœ… Seasonal story variations

Major TODOs:

  • Multi-Language Support: Python, JavaScript, Rust adapters
  • Story JSON Extraction: Move hardcoded stories to configurable files
  • Act-Aware Test Messages: Test narration changes based on story progress
  • Modular Architecture: Break monolithic shell script into components
  • Web Dashboard: Visual progress tracking and story viewer
  • Community Features: Shared achievements and leaderboards
  • Educational Content: Enhanced mythology and philosophy integration
  • Template System: Easy test generation and project setup
  • CI/CD Integration: GitHub Actions, GitLab CI support
  • Package Managers: npm, pip, cargo packages

Current Architecture:

ASCIIGame/                    # Current implementation
โ”œโ”€โ”€ run_tests.sh              # 3000-line monolithic orchestrator
โ”œโ”€โ”€ tests.h                   # C testing macros and gamification
โ”œโ”€โ”€ test_*.c                  # Example test files
โ””โ”€โ”€ .sisyphus/                # Progress data and archives

Planned Architecture:

sisyphus-test-framework/      # Future modular design
โ”œโ”€โ”€ sisyphus.sh               # Main orchestrator
โ”œโ”€โ”€ core/                     # Modular shell components
โ”œโ”€โ”€ languages/                # Language-specific adapters
โ”œโ”€โ”€ stories/                  # JSON story data
โ”œโ”€โ”€ themes/                   # Customizable mythological themes
โ””โ”€โ”€ web/                      # Dashboard and visualization

๐Ÿ—๏ธ Architecture Vision

The framework consists of multiple layers:

๐Ÿง  Shell Orchestrator (run_tests.sh)

  • Story progression and narrative management
  • XP calculation and level progression
  • Achievement tracking and unlocking
  • Historical analysis and trend detection
  • Session management and progress archiving

๐Ÿ”ง Language Adapters (Planned)

  • C: sisyphus.h - Macro-based test assertions (Current)
  • Python: sisyphus.py - Decorator-based testing (TODO)
  • JavaScript: sisyphus.js - Framework integration (TODO)
  • Rust: sisyphus.rs - Trait-based testing (TODO)

๐Ÿ’พ Persistence Layer

  • .sisyphus/ - Archive directory (like .git)
  • sisyphus.legend - Lifetime statistics and story progress
  • Session archives with timestamp-based naming
  • Achievement progress and unlock history

๐Ÿ† Achievement Examples

The framework includes over 50 achievements with historical significance:

  • ๐Ÿฅ‡ First Blood (7 XP) - First understanding of the maze's logic
  • โš”๏ธ Spartan Warrior (300 XP) - 500+ XP, 10+ combo, zero defeats
  • ๐Ÿ Hydra Slayer (9 XP) - Overcome failures and still triumph
  • โšก Zeus's Lightning (9 XP) - Complete tests in under 0.5ms
  • ๐Ÿ‘‘ Philosopher King (99 XP) - Ultimate mastery achievement
  • ๐Ÿ”ฅ Divine Perfection (144 XP) - 50+ tests, zero failures, sub-5ms

Each achievement teaches Greek history and mythology while you code.

๐Ÿ“Š Progress Tracking

๐ŸŽฏ 15,847 Project XP [โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘] 3,247/12,500 (Level 8)
๐Ÿ’ฐ Session XP: 2,847 | ๐Ÿงช From Tests: 1,205 | ๐Ÿ”ฅ From Combos: 892 | ๐Ÿ† From Achievements: 750

๐Ÿ“ˆ Recent trend: ๐Ÿš€ ASCENDING TRAJECTORY - 4 consecutive improvements!
๐Ÿ›๏ธ Total Runs: 127 | ๐Ÿ’Ž Perfect Runs: 23 (18.1%) | โšก Peak Efficiency: 1,247x

๐ŸŽญ The MIDAS Toolchain

Sisyphus is the S in the MIDAS Toolchain - a suite of mythologically-themed development tools:

  • M - Metis: Smart code linter (Wisdom) (Planned)
  • I - Ixion: Performance profiler (Watching hubris) (Planned)
  • D - Daedalus: Core utility library (Master builder) (In Development)
  • A - Archimedes: 2D game framework that can compile to WebAssembly (Genius of geometry) (In Development)
  • S - Sisyphus: Gamified test framework (Legend of perseverance) (Current)

"Turns all your C code into gold, so it can run on the web."

๐ŸŽช Community & Goals

This project represents a unique intersection of:

  • Software Testing - Making tests actually enjoyable
  • Greek Mythology - Educational and immersive theming
  • Existential Philosophy - Camus, absurdism, and the meaning of work
  • Game Design - RPG mechanics applied to development tools
  • Developer Education - Getting people excited about programming

Educational Mission

One of the core goals is teaching tech literacy through gamification. By making programming tools feel like RPG adventures, we can:

  • Lower the barrier to entry for new developers
  • Make learning programming addictive instead of tedious
  • Teach mythology, philosophy, and history alongside coding
  • Create positive associations with testing and code quality

Join the Eternal Struggle

  • ๐Ÿ˜ Mastodon: Follow @smattymatty@techhub.social for updates
  • ๐Ÿ› Issues: Report bugs (they're just new challenges to overcome)
  • ๐ŸŽญ Discussions: Share your story progress and achievements
  • ๐Ÿ“– Wiki: Contribute to mythology and philosophy documentation

๐Ÿค” Philosophy & Inspiration

This framework draws inspiration from:

  • Albert Camus - The Myth of Sisyphus and absurdist philosophy
  • Greek Mythology - The eternal struggle and heroic perseverance
  • Game Design - RPG progression systems and narrative rewards
  • Developer Experience - Making necessary tasks genuinely enjoyable
  • Educational Psychology - Dopamine-driven learning and engagement

"The struggle itself toward the heights is enough to fill a man's heart." - Albert Camus

In the Sisyphus Test Framework, we embrace the absurd nature of endless testing and transform it into a source of meaning, growth, and genuine joy.

๐Ÿ“œ License

MIT License - Because even eternal punishment should be open source.


The boulder awaits. Will you push it to legendary status? ๐Ÿชจ

About

The world's first Narrative RPG Test Framework that transforms the eternal struggle of testing into an epic mythological journey. Instead of dreading test failures, you'll find yourself addicted to the dopamine rush of leveling up, unlocking achievements, and uncovering the dark, beautiful story of Sisyphus and Daedalus building the Labyrinth

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published