PyBitrum v1.0.0
PyBitrum is a state-of-the-art, high-fidelity Web3 IDE designed for the Arbitrum ecosystem. It enables developers to write smart contracts using a Pythonic syntax, which is automatically transformed into both Solidity and Vyper, compiled, and verified via a massive industrial-grade test suite.
🚀 Key Features
- Dual-Compiler Pipeline: Write once in Python, compile simultaneously to Solidity and Vyper.
- 100% Validation: Verified against 100 industrial-grade smart contracts (DeFi, Governance, NFTs).
- Cloud-Synced Workspace: Persistent file storage and user profiles powered by Supabase.
- Pitch Black UI: A premium, industrial-grade interface designed for maximum focus and aesthetics.
- Integrated Terminal: Live logs, deployment feedback, and real-time compilation details.
📚 Documentation
For detailed technical information, please refer to the following:
- System Architecture: High-level overview of the IDE components.
- Compiler Engine: Deep dive into the Python-to-Solidity/Vyper transformation logic.
- Backend Services: Documentation for the Express API and Supabase integration.
- Frontend IDE: Details on the "Pitch Black" UI and Monaco Editor configuration.
- Testing & Validation: Information on the 100-contract test suite and runner.
🏗 Project Architecture
graph TD
User((Developer)) -->|Writes Code| Frontend[Next.js Frontend]
Frontend -->|Auth / Sync| Supabase[(Supabase Cloud)]
Frontend -->|Compile Request| Backend[Node.js / Express Backend]
Backend -->|Transform Logic| Compiler[Python / Flask Service]
Compiler -->|Solidity Code| Backend
Compiler -->|Vyper Code| Backend
Backend -->|Compiled Artifacts| Frontend
Frontend -->|Transaction| Arbitrum[Arbitrum Sepolia Testnet]
System Components
- Frontend (Next.js 15): The user interface, built with React and Tailwind CSS. Handles file management, authentication via GitHub, and wallet interactions.
- Backend (Node.js/Express): The orchestration layer. Manages API routes, user-scoped Supabase clients, and coordinates with the compiler service.
- Compiler Service (Python/Flask): The dual-engine that translates Pythonic syntax into valid Solidity and Vyper code using an AST-based transformer.
- Testing Suite (Python): A comprehensive suite of 100 contracts used to validate the compiler's output parity.
📂 Directory Structure
/frontend: Next.js web application./backend: Express.js API server./compiler: Python transformation and compilation service./deployment: Smart contract deployment scripts and configurations./docs: Detailed documentation and architecture guides./tests: The 100-contract industrial test suite.
🛠 Setup & Installation
1. Prerequisites
- Node.js (v18+)
- Python (v3.9+)
- Solidity Compiler (
solc) - Vyper Compiler (
vyper0.4.0+)
2. Quick Start
From the root directory:
# Install dependencies
npm install
# Start all services (Frontend, Backend, Compiler)
npm run dev
3. Running the Test Suite
# Activate compiler environment
cd compiler
source venv/bin/activate
# Run the 100-contract validation
python ../tests/runner.py
📜 License
MIT License - PyBitrum 1.0.0
Release files for pybitrum 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pybitrum-1.0.0.tar.gz | 26.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pybitrum-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 54.8 kB
Release files / pybitrum-1.0.0.tar.gz
| Download URL | pybitrum-1.0.0.tar.gz |
|---|---|
| Size | 26.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f485acb7311ddbfe56a784ebfb4313c12a3e1a39938d135b8a1f1ff5906b69a3
|
|
BLAKE2b-256 checksum How to use checksums |
fe21d7fa9513429d9f67f0dca7a79a06d088d0563d4795592586a7df5469c749
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|
Release files / pybitrum-1.0.0-py3-none-any.whl
| Download URL | pybitrum-1.0.0-py3-none-any.whl |
|---|---|
| Size | 28.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ae4903594831cf86981f76dfd9a1f81b97851ee51a70d9f00e476da5e72ed5db
|
|
BLAKE2b-256 checksum How to use checksums |
568b14bfdf042b738d0ec709db0b43d47c5ffecb1990784db6ec226adf162b40
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|