Graphite
Graphite copied to clipboard
An open source graphics editor for 2025: comprehensive 2D content creation tool suite for graphic design, digital art, and interactive real-time motion graphics — featuring node-based procedural editi...
History states (undo/redo) are implemented, but many tools and actions and messages don't save history states when they need to. The resulting experience is quite unpleasant since it's easy to...
Add tests for the Bezier functions that do not have any yet.
```[tasklist] # Post-MVP engineering - [ ] #1510 - [ ] #1172 - [ ] #1162 - [ ] #134 - [ ] https://github.com/GraphiteEditor/Graphite/issues/1552 - [ ] https://github.com/GraphiteEditor/Graphite/issues/1881 - [...
https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API https://developer.chrome.com/articles/file-system-access/ https://developer.chrome.com/articles/file-handling/ Supported on Chromium and Firefox, but Safari seems to not support writing (or it doesn't support the async version of the API, but it does support the...
This PR implements some tests for the select tool, particularly to test for the correct behavior when using the undo/redo functionalities. This PR additionally improves the testing utilities: - The...
This aims to reduce the time spent in the "Recalculate Style" part of the "Rendering" slice of the page framerate performance in the Chome DevTools profiler. However it does seem...
Move the concept of `shortcut_requires_lock` to the input mapper as an alternate keybinding for Mac and standard platforms. This should also, therefore, apply to all keymappings not just the menu...
This lets us avoid redundantly specifying both the presently available actions (which are currently valid hotkeys) and curated hints (which are drawn for the user). By combining them, it forces...
From [here](https://github.com/GraphiteEditor/Graphite/pull/621#issuecomment-1119205774): > When dragging an anchor point, can we ~~possibly (without too much effort or blockage before merging #617)~~ skip the own anchor + both handles from being candidate...
Click the start point to create a closed path.