Skip to main content

The magical Python -> TON Portal

Project description

Rift

PyPI version Telegram Telegram

A magical Python3 -> TON portal

Rift is a full-stack development framework for TON (The Open Network) that makes it easy for developers to use Python to develop, test, and deploy smart contracts on the TON network. With Rift, you can leverage the simplicity and versatility of Python to build and interact with TON, without having to learn the complexities of FunC or Fift. For examples of how Rift simplifies these processes, visit Rift's website.

Features

  • Develop smart contracts using Python syntax and OOP features
  • Interact with the TON network to query data and deploy contracts
  • Test smart contracts with an easy-to-use testing framework
  • Standalone framework that only requires Python 3.10
  • Can be used at any stage of the project, from development to testing to deployment

Quick Start

  1. Install Python 3.10+
  2. Install rift
    pip install rift-framework
    # or from source
    git clone https://github.com/sky-ring/rift
    cd rift
    pip install -e .
    
  3. Initialize your project:
    rift init <project-name>
    
  4. Develop your contracts in <project>/contracts/
  5. Write your tests in <project>/tests/
  6. Place your deploy scripts in <project>/deployers/
  7. Use rift to build, test, or deploy:
    # in project folder
    # builds TARGET
    rift build TARGET
    # tests TARGET
    rift test TARGET
    # deploys TARGET
    rift deploy TARGET
    
  8. For more information, visit the documentation website at docs.skyring.io/rift.

Guides

  • Step-by-step guide on how to use Rift to develop on TON: Coming Soon!
  • Step-by-step guide on integrating Rift into existing FunC projects: Coming Soon!

Standard Contracts Implementation

  • Jetton Implementation (jettons)
  • NFT Implementation
  • DEX Implementation

Roadmap

Milestone 1: Python Framework for Contract Development

  • Semi One-to-One Mapping of Functions and Expressions (Base Compiler, Python -> FunC)
  • First Higher Layer over the Base Mappings to Simplify Type Calls (leveraging OOP Capabilities)
  • Second Higher Layer over the Base, Simplifying Contract Development towards Maximizing Code Reusability and Simplicity (leveraging Meta Programming Capabilities)
  • Providing Standard Smart Contracts Implementation with Rift

Milestone 2: Deploying, Testing, Interaction Capabilities

  • Simple Interaction Interface with TON Blockchain
  • Simple Deploying Options of Developed Contracts
  • Testing Framework for the Contracts Developed with Rift

Milestone 3: What's Next?

  • Stay Tuned! We have extra plans that we will share soon with the community to further develop Rift.

Support the Project

  1. If Rift has been a lifesaver for you, giving it a star on GitHub is the ultimate high five!
  2. You can also show your love by contributing to Rift through code, ideas, or even a kind word.
  3. Feeling extra generous? Treat Rift to a coffee by donating to this TON address: EQAIhZCDT7-pvweWh6c_76X7Dnv6Qlzt7-l1NNP8upZ_Areu
  4. Finally, spreading the word about Rift is a big boost for the project and helps us reach more people.

Contributing

If you're interested in contributing to Rift, please see CONTRIBUTING.md for the necessary specifications and procedures.

Supporters

Special thanks to the TON Society for their support and grant, without which the project would not be feasible.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rift-framework-0.10.0.tar.gz (121.9 kB view hashes)

Uploaded Source

Built Distribution

rift_framework-0.10.0-py3-none-any.whl (165.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page