Metadata-Version: 2.4
Name: blockch
Version: 1.0.0
Summary: a
Author: ABC
License: MIT
Keywords: blockchain,ethereum,truffle,ganache,practicals,education
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Education
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Education
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Provides-Extra: dev
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"

# blockchain-practicals

Blockchain lab practicals as a Python package. Each function prints the full step-by-step instructions and creates a workspace folder with an `INSTRUCTIONS.md` file.

## Install

```bash
pip install blockchain-practicals
```

Or install locally from source:

```bash
cd block-package
pip install .
```

## Usage

```python
import block

# Prints practical 1 instructions and creates ./practical1/
block.practical1()

# Create folder in a custom location
block.practical2(output_dir="/home/user/labs")
```

### CLI

```bash
# After pip install
block-practical practical1

# Or
python -m block practical3 -o ~/labs
```

## Available practicals

| Function | Topic |
|----------|-------|
| `block.practical1()` | Install Ethereum, Truffle, Ganache |
| `block.practical2()` | Smart contract with Truffle + Ganache |
| `block.practical3()` | Hyperledger Fabric setup |
| `block.practical4()` | IPFS storage and retrieval |
| `block.practical5()` | Model integrity verification |
| `block.practical6()` | Data provenance system |
| `block.practical7()` | Supply chain management |
| `block.practical8()` | Hyperledger chaincode |
| `block.practical9()` | Voting system |
| `block.practical10()` | IoT data on blockchain |

## Publish to PyPI

```bash
cd block-package
pip install build twine
python -m build
twine upload dist/*
```

You need a [PyPI account](https://pypi.org/account/register/) and an API token.

## License

MIT
