Interactive 3D molecular builder for hydrocarbon derivatives, powered by Ursina, RDKit, and PubChem.
This project is open source and currently in pre-release.
CarbonCraft is a visual molecule builder that lets you assemble structures in a live 3D scene, inspect atom and bond behavior, and generate chemically meaningful output such as SMILES and IUPAC names.
- Drag atoms onto existing atoms to grow a molecule
- Click bonds to cycle bond order
- Generate SMILES from the current structure
- Fetch IUPAC names from PubChem when online
- Render atoms and bonds in a stylized 3D interface
- Controls, visuals, and behavior may change before a stable release
- Some molecules may fail sanitization or 3D embedding depending on valency and geometry constraints
- Error handling and test coverage are still evolving
git clone https://github.com/<your-org-or-user>/CarbonCraft.git
cd CarbonCraft- Open this repository on GitHub.
- Click Code > Download ZIP.
- Extract the archive.
- Open the extracted folder in your terminal.
- Python 3.10+ (3.11 recommended)
pip
python -m venv .venv
.venv\Scripts\Activate.ps1
pip install -r requirements.txt
python main.pypython3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python main.pyIf launch is successful, a window titled CarbonCraft should appear.
- Fork the repository on GitHub.
- Clone your fork locally.
- Create and activate a virtual environment.
- Install dependencies from requirements.txt.
- Run the app with
python main.py.
Contributions are welcome during pre-release.
- Create a branch from
main.
git checkout -b feature/short-description- Make focused changes. One feature or fix per pull request is preferred.
- Verify the app still runs.
python main.py- Include or update tests where practical.
- Commit with a clear message.
git commit -m "feat: add <short feature description>"- Push your branch and open a pull request against
main.
- Code runs locally without errors
- Changes are scoped and documented
- UI changes include screenshots when relevant
- README or docs are updated when behavior changes
Please open a GitHub issue and include:
- Operating system
- Python version
- Full error message or traceback
- Steps to reproduce
- Screenshot or short recording if the issue is visual
You can build a Windows executable using PyInstaller. This repository includes helper scripts in scripts/ to run the exact command we use for packaging.
PowerShell
Open PowerShell in the repository root and run:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned -Force # only if scripts are blocked
.\scripts\build_pyinstaller.ps1Command Prompt (cmd)
Open a Command Prompt in the repository root and run:
scripts\build_pyinstaller.batNotes and troubleshooting
- If PowerShell refuses to run scripts, setting the
CurrentUserpolicy toRemoteSigned(as shown above) is a common, user-scoped solution. - If PyInstaller fails to include a dependency at runtime, add it to the
--hidden-importlist in the build scripts. - After a successful build, the executable will be under the
dist\CarbonCraftfolder.
This project is licensed under the MIT License. See LICENSE for the full text.