Skip to content

Harery/OCTALUM-PYLAB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

74 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

OCTALUM-PYLAB

  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ•—   β–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—      β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β•β•
β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•  β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•  β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•
β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β•šβ•β• β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
 β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β•β•β•šβ•β•  β•šβ•β•β•šβ•β•     β•šβ•β•β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β•β•
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•—   β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•—
β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘
β–ˆβ–ˆβ•”β•β•β•β• β–ˆβ–ˆβ•‘   β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘
β–ˆβ–ˆβ•‘     β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
β•šβ•β•      β•šβ•β•β•β•β•β• β•šβ•β•  β•šβ•β•β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β•β•
  

Master Python Data Structures & Algorithms Through Guided Experimentation

Python Version Ruff Pytest License GitHub Stars CI Status

Features β€’ Quick Start β€’ Learning Path β€’ Structure β€’ Contributing β€’ License


✨ Features

🎯 8-Phase Learning Path

Structured progression from Python basics to advanced algorithms. Each phase builds on the previous, ensuring solid foundations before moving to complex topics.

🧩 Pattern-Based Learning

Master 15+ coding patterns (Sliding Window, Two Pointers, Fast & Slow, etc.) that solve 80% of LeetCode problems.

πŸ“Š Progress Tracking

Gamified learning with XP points, streaks, achievements, and visual progress indicators. Track your journey from beginner to expert.

🎬 Visual Algorithm Animations

Watch algorithms come to life with Manim-powered visualizations. Perfect for understanding complex concepts.

πŸ† LeetCode Integration

Structured challenges organized by difficulty with hints, solutions, and optimal approaches for 300+ problems.

πŸš€ One-Click Setup

Start coding in seconds with GitHub Codespaces. Fully configured dev environment with all tools pre-installed.


πŸš€ Quick Start

Option 1: GitHub Codespaces (Recommended)

Open in GitHub Codespaces

Click the button above to launch a fully configured development environment in your browser. No installation required!

Option 2: Local Development

# Clone the repository
git clone https://github.com/Harery/OCTALUM-PYLAB.git
cd OCTALUM-PYLAB

# Install uv (fast Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Create virtual environment and install dependencies
uv sync --all-extras

# Install pre-commit hooks
uv run pre-commit install --install-hooks

# Run the learning tracker
uv run python -m pylab.track

# Start coding!
uv run python build/foundations/01-python-basics/hello.py

Verify Installation

# Run tests
uv run pytest verify/tests -v

# Run linter
uv run ruff check .

# Run type checker
uv run pyright build/

πŸ“š Learning Path

╔══════════════════════════════════════════════════════════════════════════════╗
β•‘                         OCTALUM-PYLAB 8-PHASE JOURNEY                        β•‘
╠══════════════════════════════════════════════════════════════════════════════╣
β•‘                                                                              β•‘
β•‘  Phase 1: FOUNDATIONS          Phase 5: PATTERNS                             β•‘
β•‘  β”œβ”€β”€ Python Basics            β”œβ”€β”€ Sliding Window                             β•‘
β•‘  β”œβ”€β”€ Control Flow             β”œβ”€β”€ Two Pointers                               β•‘
β•‘  └── Functions                β”œβ”€β”€ Fast & Slow Pointers                       β•‘
β•‘       ↓                            β”œβ”€β”€ Merge Intervals                        β•‘
β•‘                                    └── Cyclic Sort                            β•‘
β•‘  Phase 2: DATA STRUCTURES           ↓                                         β•‘
β•‘  β”œβ”€β”€ Arrays & Lists                                                     β•‘
β•‘  β”œβ”€β”€ Strings                  Phase 6: ALGORITHMS                            β•‘
β•‘  β”œβ”€β”€ Hash Tables              β”œβ”€β”€ Searching                                  β•‘
β•‘  β”œβ”€β”€ Linked Lists             β”œβ”€β”€ Sorting                                    β•‘
β•‘  β”œβ”€β”€ Stacks & Queues          β”œβ”€β”€ Recursion                                  β•‘
β•‘  β”œβ”€β”€ Trees                    └── Dynamic Programming                        β•‘
β•‘  └── Graphs                        ↓                                         β•‘
β•‘       ↓                                                                   β•‘
β•‘                                Phase 7: CHALLENGES                           β•‘
β•‘  Phase 3: ALGORITHMS           β”œβ”€β”€ LeetCode Easy                             β•‘
β•‘  β”œβ”€β”€ Searching                 β”œβ”€β”€ LeetCode Medium                           β•‘
β•‘  β”œβ”€β”€ Sorting                   β”œβ”€β”€ LeetCode Hard                             β•‘
β•‘  └── Recursion                 └── System Design                             β•‘
β•‘       ↓                            ↓                                         β•‘
β•‘                                                                              β•‘
β•‘  Phase 4: ADVANCED DS          Phase 8: MASTERY                              β•‘
β•‘  β”œβ”€β”€ Heaps                    β”œβ”€β”€ Optimize Solutions                         β•‘
β•‘  β”œβ”€β”€ Trie                     β”œβ”€β”€ Mock Interviews                           β•‘
β•‘  β”œβ”€β”€ Segment Trees             └── Real-world Projects                       β•‘
β•‘  └── Disjoint Sets                                                           β•‘
β•‘                                                                              β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

Phase Details

Phase Focus Topics Est. Time
1 Foundations Python basics, control flow, functions 2 weeks
2 Data Structures Arrays, strings, hash tables, linked lists, trees, graphs 4 weeks
3 Basic Algorithms Searching, sorting, recursion 3 weeks
4 Advanced DS Heaps, trie, segment trees, disjoint sets 3 weeks
5 Patterns 15+ coding patterns for interviews 4 weeks
6 Advanced Algorithms DP, graph algorithms, greedy 4 weeks
7 Challenges 300+ LeetCode problems Ongoing
8 Mastery Optimization, mock interviews, projects Ongoing

πŸ“ Directory Structure

OCTALUM-PYLAB/
β”œβ”€β”€ πŸ“₯ intake/                 # Getting started & onboarding
β”‚   └── README.md
β”‚
β”œβ”€β”€ πŸ—οΈ build/                  # Core learning content
β”‚   β”œβ”€β”€ foundations/           # Phase 1: Python fundamentals
β”‚   β”‚   β”œβ”€β”€ 01-python-basics/
β”‚   β”‚   β”œβ”€β”€ 02-control-flow/
β”‚   β”‚   └── 03-functions/
β”‚   β”œβ”€β”€ data-structures/       # Phase 2-4: DS implementations
β”‚   β”‚   β”œβ”€β”€ 01-arrays-lists/
β”‚   β”‚   β”œβ”€β”€ 02-strings/
β”‚   β”‚   β”œβ”€β”€ 03-hash-tables/
β”‚   β”‚   β”œβ”€β”€ 04-linked-lists/
β”‚   β”‚   β”œβ”€β”€ 05-stacks-queues/
β”‚   β”‚   β”œβ”€β”€ 06-trees/
β”‚   β”‚   β”œβ”€β”€ 07-graphs/
β”‚   β”‚   └── 08-advanced/
β”‚   β”œβ”€β”€ algorithms/            # Phase 3, 6: Algorithm implementations
β”‚   β”‚   β”œβ”€β”€ 01-searching/
β”‚   β”‚   β”œβ”€β”€ 02-sorting/
β”‚   β”‚   β”œβ”€β”€ 03-recursion/
β”‚   β”‚   β”œβ”€β”€ 04-dynamic-programming/
β”‚   β”‚   β”œβ”€β”€ 05-graph-algorithms/
β”‚   β”‚   β”œβ”€β”€ 06-greedy/
β”‚   β”‚   └── 07-string-algorithms/
β”‚   β”œβ”€β”€ patterns/              # Phase 5: Coding patterns
β”‚   β”‚   β”œβ”€β”€ sliding-window/
β”‚   β”‚   β”œβ”€β”€ two-pointers/
β”‚   β”‚   β”œβ”€β”€ fast-slow-pointers/
β”‚   β”‚   β”œβ”€β”€ merge-intervals/
β”‚   β”‚   β”œβ”€β”€ cyclic-sort/
β”‚   β”‚   └── ... (10+ more)
β”‚   └── challenges/            # Phase 7: LeetCode problems
β”‚       β”œβ”€β”€ leetcode-easy/
β”‚       β”œβ”€β”€ leetcode-medium/
β”‚       β”œβ”€β”€ leetcode-hard/
β”‚       └── system-design/
β”‚
β”œβ”€β”€ πŸ”¬ verify/                 # Testing & quality assurance
β”‚   β”œβ”€β”€ tests/                 # Test suites
β”‚   └── coverage/              # Coverage reports
β”‚
β”œβ”€β”€ πŸš€ ship/                   # Deployment & tooling
β”‚   β”œβ”€β”€ .devcontainer/         # GitHub Codespaces config
β”‚   β”œβ”€β”€ docker/                # Docker configurations
β”‚   └── scripts/               # Utility scripts
β”‚
β”œβ”€β”€ πŸ“š learn/                  # Resources & visualizations
β”‚   β”œβ”€β”€ cheatsheets/           # Quick reference guides
β”‚   β”œβ”€β”€ notebooks/             # Jupyter notebooks
β”‚   └── visualizations/        # Algorithm animations
β”‚
β”œβ”€β”€ πŸ“œ record/                 # Documentation
β”‚   └── docs/                  # MkDocs source
β”‚
β”œβ”€β”€ πŸ” govern/                 # Security & compliance
β”‚
β”œβ”€β”€ .github/                   # GitHub configurations
β”‚   β”œβ”€β”€ workflows/             # CI/CD pipelines
β”‚   β”œβ”€β”€ ISSUE_TEMPLATE/
β”‚   └── PULL_REQUEST_TEMPLATE.md
β”‚
β”œβ”€β”€ pyproject.toml             # Project configuration
β”œβ”€β”€ .python-version            # Python version (3.12)
└── README.md                  # This file

🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

Quick Contribution Steps

  1. Fork the repository
  2. Create a feature branch (git checkout -b feat/amazing-feature)
  3. Commit your changes using conventional commits
  4. Push to your branch
  5. Open a Pull Request

Code Style

This project uses:

  • Ruff for linting and formatting
  • Pyright for type checking
  • Pytest for testing
# Format code
uv run ruff format .

# Check linting
uv run ruff check .

# Type check
uv run pyright build/

# Run tests
uv run pytest verify/tests -v

πŸ“ˆ Progress & Stats

Metric Count
πŸ“ Learning Modules 50+
🧩 Coding Patterns 15+
πŸ† LeetCode Problems 300+
πŸ“Š Visual Animations 100+
βœ… Test Coverage Growing

πŸ“œ License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

OCTALUM-PYLAB - Master Python Data Structures & Algorithms
Copyright (C) 2026 OCTALUME

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

πŸ™ Acknowledgments

  • Python Software Foundation for the amazing language
  • LeetCode for the problem platform
  • Design Gurus for pattern-based learning inspiration
  • The Open Source Community for continuous support

Powered by OCTALUME

Bringing Light to Every Phase of Development

Report Bug β€’ Request Feature β€’ Discussions


Made with ❀️ by OCTALUME

Releases

No releases published

Packages

 
 
 

Contributors