PyCrust
PyCrust copied to clipboard
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...
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 🚀
- Install Docker and Docker Compose
- Clone this repository:
git clone https://github.com/JediRhymeTrix/pycrust.git
-
cd pycrust
- Create a
.env
file with your ChatGPT API key:echo "API_KEY=<your-api-key>" > .env
- Give the runner shell script the appropriate permission to run:
chmod +x scripts/pycrust.sh
- 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.