Swarm Systems Lab Python Simulator
Project description
ssl_simulator
Swarm Systems Lab Python Simulator
⚠️ Warning: This project is a work in progress
Installation
pip install ssl_simulator
Usage
import ssl_simulator
# Example usage
result = ssl_simulator.hello()
print(result)
Development
This project follows the SSL Golden Path for streamlined Python development.
Quick Setup
# Clone the repository
git clone https://github.com/Swarm-Systems-Lab/ssl-simulator
cd ssl_simulator
# One-command setup (installs uv, creates .venv, installs dependencies)
just setup
# Verify everything works
just test
Common Commands
All project tasks are managed via just. Run just --list to see all available commands.
Essential commands:
just setup # Initial environment setup
just test # Run full test suite (what CI runs)
just test-fast # Quick parallel tests (skip slow tests)
just lint # Check code style
just typecheck # Check types
just security # Run security scans
just check-all # Full CI simulation (run before pushing!)
just build # Build package
just docs # Start documentation server
Testing workflows:
just test-one test_name # Run specific test
just test-multi-py # Test on Python 3.10-3.14
uv run pytest -vv # Verbose output
uv run pytest --pdb # Debug on failure
Development Tools
- Package Manager:
uv- Fast Rust-based Python package manager - Task Runner:
just- Command runner for project tasks - Linting:
ruff- Fast linter and formatter - Type Checking:
ty(mypy wrapper) - Static type analysis - Testing:
pytestwith coverage and parallel execution - Security:
semgrep- Security vulnerability scanning
Project Structure
ssl_simulator/
├── src/ssl_simulator/ # Source code (importable package)
├── tests/ # Test files (mirrors src structure)
├── docs/ # Documentation (MkDocs)
├── examples/ # Usage examples
├── pyproject.toml # Project metadata and dependencies
├── justfile # Task definitions
└── uv.lock # Locked dependencies
Documentation
Full documentation is available at https://github.com/Swarm-Systems-Lab/ssl-simulator/blob/main/docs
Build locally:
just docs # Start server at http://localhost:8000 with live reload
just docs-build # Build static documentation
Examples
See the examples/ directory for usage examples.
Run the basic example:
just example
# Or directly:
uv run python examples/basic_usage.py
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
Before submitting a PR:
just check-all # Runs lint, security, test, typecheck, pre-commit
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ssl_simulator-0.4.4.tar.gz.
File metadata
- Download URL: ssl_simulator-0.4.4.tar.gz
- Upload date:
- Size: 63.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e55b0b13db2da4ef822e353c03112ba40cf729656ce449633289635f064e97f
|
|
| MD5 |
53214e50a993fdc54af4995e41a598f4
|
|
| BLAKE2b-256 |
b303e1d3fe5e1674566569d221cb48653b5076e9016d3ca602c7113f958418ab
|
File details
Details for the file ssl_simulator-0.4.4-py3-none-any.whl.
File metadata
- Download URL: ssl_simulator-0.4.4-py3-none-any.whl
- Upload date:
- Size: 90.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48b969b29348a15cc5de795acc18fa69c30027318ba43927e50f70bc9ce513ed
|
|
| MD5 |
260e4b4e956bbaf7dc45e70781316be3
|
|
| BLAKE2b-256 |
4ff0ed00dfbecc1472a9eccf9344ef653f5eeaa88e5a992aa7092aa85fc16283
|