semvec/pypi-packages huggingface dataset:
gocharts 0.1.2
A Python charting library with support for pandas, polars, and numpy.
Requires Python: >=3.10

# gocharts

[![CI](https://github.com/EdvinasD/gochart/actions/workflows/ci.yml/badge.svg)](https://github.com/EdvinasD/gochart/actions/workflows/ci.yml)

**gocharts** is a Python library for creating interactive, public facing quality charts using [ECharts](https://echarts.apache.org/) and a grammar of graphics approach inspired by [ggplot2](https://ggplot2.tidyverse.org/).

## Features

- **Grammar of Graphics**: Build complex visualizations by layering components (data, aesthetics, geoms, scales, etc.).
- **Interactive Charts**: Powered by ECharts for rich, interactive visualizations.
- **Flexible API**: Compose plots using a familiar, declarative syntax.
- **Export Options**: Render charts in Jupyter notebooks, web apps, or export as HTML.

## Installation

```bash
pip install gocharts
```

## Quick Start

```python
import gocharts as go
import pandas as pd

df = pd.DataFrame({
    "time": [1, 2, 3, 4],
    "score": [10, 15, 13, 17]
})

gochart = go.Chart(df) \
    .geom('line', map = {'x':'time','y':'score'})

gochart.display()
```

## Documentation

- [User Guide](docs/user_guide.md)
- [API Reference](docs/api.md)
- [Examples](examples/)

## License

TBD

## Acknowledgements

- [ECharts](https://echarts.apache.org/)
- [ggplot2](https://ggplot2.tidyverse.org/)
- Inspired by the grammar of graphics paradigm
pylearn-cli 1.0.0
Interactive Python Learning CLI
Requires Python: >=3.10

# PyLearn - Interactive Python Learning CLI

An interactive, terminal-based Python learning tool covering beginner-to-advanced topics plus interview prep. Navigate lessons, run exercises, take quizzes, and track progress -- all from the command line.

**Zero external dependencies** -- pure Python stdlib.

## Installation

```bash
pip install .          # install from source
pip install -e .       # editable/dev install
```

## Quick Start

```bash
pylearn                # run via installed command
python -m pylearn      # alternative
python run.py          # run without installing
```

## What's Included

| Module | Lessons | Exercises | Quiz |
|--------|---------|-----------|------|
| 01 - Python Basics | 4 | 4 | 5 |
| 02 - Data Types | 7 | 7 | 7 |
| 03 - Control Flow | 5 | 5 | 5 |
| 04 - Functions | 6 | 6 | 6 |
| 05 - OOP (Expanded) | 12 | 8 | 8 |
| 10 - Interview Prep | 3 | 10 | 5 |
| **Total** | **37** | **40** | **36** |

## Features

- **Lessons** with explanations, code examples, and key points
- **Exercises** with validation, hints, and solutions
- **Quizzes** with scoring and explanations
- **Progress tracking** with streaks and per-module stats
- **Interview prep** with classic coding problems (Two Sum, FizzBuzz, Binary Search, etc.)
- **ANSI colors** for a clean terminal UI
- Works on Windows, macOS, and Linux

## Project Structure

```
python/
├── run.py                    # Entry point (dev)
├── pyproject.toml            # Package metadata
├── pylearn/
│   ├── app.py                # Main app loop & routing
│   ├── cli.py                # Menus, prompts, display
│   ├── config.py             # Paths & constants
│   ├── utils/                # Terminal colors, formatting
│   ├── engine/               # Code runner & validator
│   ├── progress/             # JSON-based progress tracking
│   └── curriculum/           # Auto-discovered lesson modules
│       ├── 01_basics/
│       ├── 02_data_types/
│       ├── 03_control_flow/
│       ├── 04_functions/
│       ├── 05_oop/
│       └── 10_interview_prep/
~/.pylearn/
└── progress.json             # Auto-created on first run
```

## Adding New Modules

Create a numbered directory under `pylearn/curriculum/` (e.g., `06_error_handling/`) with an `__init__.py` that exports a `module` variable of type `Module`. The auto-discovery system will pick it up automatically.