Getting Started with Tessera
Tessera is a performant, open-source, clean-room implementation of the JAM protocol as defined in the Gray Paper, developed by Chainscore Labs.
This is under active development. APIs and behavior may change. Not safe for production use until a stable 1.0.0 release is published.
Installation
Download Pre-built Binaries
The easiest way to get started is to download pre-built binaries from the Tessera Releases repository.
| Platform | Download Name |
|---|---|
| Linux x86_64 | tessera-node-Linux-x64.tar.gz |
| macOS Apple Silicon | tessera-node-Darwin-arm64.tar.gz |
| macOS Intel | tessera-node-Darwin-x64.tar.gz |
Extract and Run
# Extract the binary
tar -xzf tessera-node-*.tar.gz
# Make executable (if needed)
chmod +x tessera-node
# Check installation
./tessera-node --help
Running a Node
Basic Usage
# Run with specific environment configuration
./tessera-node --env <environment>
Available Environments
Tessera supports multiple test environments. Check the tessera/envs/ directory in the source code for available environment configurations (e.g., 40000.env, 40001.env, etc.).
Running the Fuzzer
For conformance testing:
./tessera-node --fuzzer --socket /tmp/jam_conformance.sock
This mode is useful for:
- Testing protocol conformance
- Integration with conformance test suites
- Development and debugging
Build Information
- Python Version: 3.12
- Packager: PyInstaller
- Automated Builds: Available via GitHub Actions
- Release Cycle: Check releases page for latest versions
Next Steps
Now that you have Tessera installed, explore the following sections:
- Block - Learn about block import, production, and fork handling
- State Transitions - Understand JAM's state transition functions
- PVM - Explore the Polkadot Virtual Machine integration
- Networking - Understand the JAMNP-S protocol
- Storage - Learn about data sharding and distribution
Support
For issues, questions, or support:
- Email: prasad@chainscore.finance
- Source Code: Chainscore/tessera
- Releases: Chainscore/tessera-releases
Contributing
Tessera is an open-source project. Contributions are welcome! See the main Tessera repository for contribution guidelines.
License
See the LICENSE file in the Tessera repository for details.