Python implementation of SPL (Structured Process Language) - a grid-based data processing language.
backend/
├── packages/
│ ├── spl_core/ # DataSet class and core operations
│ ├── spl_expression/ # Expression parser/evaluator
│ ├── spl_flow/ # Flow executor (if/for/goto/func/result/end)
│ ├── spl_web_server/ # FastAPI web server
│ └── spl_web_shared/ # Shared types and API routes
├── pyproject.toml # Workspace root config
└── README.md
Requires Python 3.10+ and uv.
# Install uv (if not installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install dependencies
uv sync
# Run tests
uv run pytest
# Run server
uv run python -m spl_web_serverspl_web_server
├── spl_flow
│ ├── spl_expression
│ └── spl_core
└── spl_web_shared
# Format code
uv run ruff format .
# Lint
uv run ruff check .
# Type check
uv run pyright