Within the cloned repository, install the pip requirements.
pip install -r requirements.txt
You should now be able to run the script. If you wish to build an executable, run the Python file in the build/ directory.
python3 build/build.py
The executable can be found in the newly created 'dist' directory in build/.
Usage
When you open the program, the New Project UI will appear. From here, you have a few options:
Create
Project Name. Must only contain alphanumeric characters.
Canvas size. The width and height of the canvas in pixels.
Background colour.
Fullscreen. Makes the canvas the size of your display.
Grid Mode
Grid mode. Turns the canvas into a grid of squares, and uses pixels instead of brushes.
Pixel size. The visual size of each pixel in the grid.
Grid colour. The colour of the grid, can be turned off after creation.
Larger pixel size to canvas size ratios result in poor performance, this feature is not optimized!
Install
Install brush. Select a .frdgbrush file and it'll be installed!
For more information, hover over any of the options in the UI.
In the canvas, you can press CTRL + Z to undo the last action, and Right Click to erase. All of the options in your project are self-explanatory.
Custom Brushes
Custom brushes (.frdgbrush) are zip archives that contain a properties.json file and any textures. With the custom brushes provided, you can see the structure of the properties.json file.
Here's the full properties.json file structure, with explanations:
{
"name": "Charcoal",
"author": "fridge",
"description": "A charcoal stick brush.",
textureAmount is the amount of textures for the brush. If there's 1 texture, the texture should be called texture.png, otherwise they're numbered (texture1.png, texture2.png, etc.) The texture is randomly chosen on each stroke.
useColour is whether the brush uses the colour of the brush or not. If false, the brush will use the colour of the texture. When true, use a white texture for best results.
rotate is whether the brush rotates randomly on each stroke.
drawLine is whether the brush draws a line between the last and current position.
lineSize is the size of the line drawn if drawLine is true. Values are relative to the brush size.
If this seems confusing, you can refer to the brushes I've made.
To create a .frdgbrush file, simply zip the properties.json file and any textures together, and rename the file to the name of the brush as stated in properties.txt (IMPORTANT!). Change the file extension to .frdgbrush.