Skip to content

PyCrust is a CLI tool that converts Python code to Rust using OpenAI's GPT-3.5 language model for code generation. It provides an easy-to-use interface for converting Python code to Rust code, making it easier for Python developers to leverage Rust's performance benefits.

Notifications You must be signed in to change notification settings

JediRhymeTrix/PyCrust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyCrust 🥧 [WIP] 🚧

Pie-crust / Py(c)Rust

PyCrust is a command-line tool that transpiles Python code to Rust code, replacing Python libraries with equivalent Rust libraries wherever possible. It uses the OpenAI ChatGPT API to perform the transpilation.

Usage 🚀

  1. Install Docker and Docker Compose
  2. Clone this repository: git clone https://github.com/JediRhymeTrix/pycrust.git
  3. cd pycrust
  4. Create a .env file with your ChatGPT API key: echo "API_KEY=<your-api-key>" > .env
  5. Give the runner shell script the appropriate permission to run: chmod +x scripts/pycrust.sh
  6. Run the Docker container and transpile your code using the command ./pycrust.sh /path/to/input.py to transpile the Python code to Rust code. The output will be saved in a file with the same name as the input file, but with the .rs extension.

Dependencies 📦

  • Docker
  • Docker Compose
  • OpenAI ChatGPT API key

Directory Structure 📁

pycrust/
├── docker-compose.yml
├── Dockerfile
├── scripts/
│   ├── download_dependencies.sh
│   └── pycrust.sh
├── src/
│   ├── __init__.py
│   └── pycrust.py
├── tests/
│   └── test_pycrust.py
└── requirements.txt

Notes 📝

  • This tool is still in development and may not work with all Python code.
  • The Rust code generated by PyCrust may require additional work to compile and run.
  • If a Rust equivalent library for a Python library does not exist, PyCrust will generate a list of missing dependencies.

About

PyCrust is a CLI tool that converts Python code to Rust using OpenAI's GPT-3.5 language model for code generation. It provides an easy-to-use interface for converting Python code to Rust code, making it easier for Python developers to leverage Rust's performance benefits.

Topics

Resources

Stars

Watchers

Forks