GimelStudio
GimelStudio copied to clipboard
Non-destructive, node based 2D image editor with an API for custom nodes
Gimel Studio
Non-destructive, node-based 2D graphics editor, focused on simplicity, speed, elegance, and usability
Official Website | Community Chat | Official Manual

About Gimel Studio
This repository tracks the next step of Gimel Studio to become a truly usable and serious node-based, non-destructive image/vector editor. It is currently in initial development stage, working towards a usable MVP application. Things will probably change a lot from what is currently here.
You’re welcome to ask questions, give feedback, and suggest ideas and improvements.
Join our Zulip chat organization here
Project Vision
The main goal is to expand on and greatly improve upon the concepts from the previous version of Gimel Studio to create a serious (yet fun!) 2D graphics editor.
This includes:
- Re-designed UI (inspired by Blender and Sketch)
- Improved file-type support (.tiff, .exr files, etc)
- 16-bit workflow support
- CPU and GPU based processing
- Highly improved node-graph and overall workflow for image editing
- Greater emphasis on re-usabilty of node graph setups via templates, etc
- User preferences for customizabilty
- UI translations
- Gizmos for the viewport to allow for WYSIWYG-like interaction for transforms, etc. (e.g. crop, rotate, etc)
- Continued improvement and additions to the Python API for scripting custom nodes
- And more...
Nodes can be used to composite, edit and create new effects and/or composite raster and vector graphics on-demand and visually with node thumbnails showing each step of the process (where applicable). Helpful gizmos in the interactive viewport can be used to do various editing tasks and speed up the workflow. Preset node graph templates can be created, used and re-used to save time setting up common node-setups.
Custom nodes can be scripted with the built-in Python API for maximum flexibility. Integrations with other software are planned.
With a fully non-destructive workflow that uses both GPU and CPU processing (via GLSL + OpenGL) while being seamlessly cross-platform on Windows, Linux and macOS (for 64-bit systems), Gimel Studio aims to be a simple, yet powerful 2D graphics editing tool for anyone with an image to edit.
Current Status
There are alpha pre-releases available for those wanting to test the current functionality.
The status of the next generation of Gimel Studio as of 1/10/2022
Contributing
Take a look at the GitHub Issues for details on immediate and future tasks to be done. Issues labeled “Good first issue” will be the best for new contributors. We are willing to mentor any contributors as needed.
Pull requests are always welcome! :)
Please see the CONTRIBUTING.md for some details on contributing.
Running the code
Please note: At this stage of development, the code is highly WIP and likely to change a lot. Many things are not implemented and not stable. Please don't expect too much at this point...
Python 3.10 support is not available quite yet as we are waiting for upstream packages to update
Windows
- Make sure you have Python 3.8 or 3.9 installed on your system.
- Run
pip install -r requirements.txt - You can get an older release of OIIO (OpenImageIO) here and install it with
pip install <the_path_to_the_whl_here>. Or, to use the latest version of OIIO, follow the build instructions here. - Run
cd srcthenpython main.pyto navigate to the src directory and run Gimel Studio. - To build an executable, make sure you are in the root directory and run
python build.py. The executable will be generated in thedistfolder.
Linux
This has been tested on Debian-based systems (Ubuntu, Linux Mint). Other distros may require extra configuration.
- Make sure you have Python 3.9 installed on your system.
- Navigate to the root folder and in your terminal, run
python3 build.py. This will begin a process to install all of the neccesary libraries and will give you the option to create a standalone executable or just run the code with Python.
macOS
- Make sure you have Python 3.8 or 3.9 installed on your system.
- Navigate to the root folder and in your terminal, run
python3 build.py. This will install all of the neccesary libraries and will give you the option to create a standalone executable or just run the code with Python.