2D vector & raster editor that melds traditional layers & tools with a modern node-based, non-destructive, procedural workflow. https://graphite.rs
Find a file
timblah 48dcc2774b Fix file paths mentioned in website's Contribute page (#1052)
* Updated paths for frontend / backend communication section of contribute page to reflect current project structure

* Added starting / for consistency with other paths on the page

* Mapping actually happens in subscription router

* Changed path to show code that dispatches FrontendMessage rather than the type def

* Missing / at start of path

* Fix files

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2023-02-23 02:40:28 -05:00
.deploy Fix build scripts so a failure returns a nonzero exit code 2023-01-02 22:04:13 -08:00
.github Use cargo nextest and sccache in ci (#1011) 2023-02-08 00:15:41 +01:00
.vscode Fix error spam from Rust-Analyzer due to build scripts 2023-02-03 13:00:55 -08:00
docs Rename the legacy Graphene crate to document-legacy (#899) 2022-12-22 02:12:05 -08:00
document-legacy Selecting an individual anchor point deselects each of the other points (#963) 2023-02-19 23:26:02 -08:00
editor Fix default type for Identity node (#1051) 2023-02-22 23:22:31 +01:00
frontend Change tauri build directory back to ../dist (#1033) 2023-02-16 15:43:21 +01:00
frontend-svelte Fix Svelte regressions related to some input widgets 2023-02-19 22:57:11 -08:00
libraries Bezier-rs: Add self_intersection to subpath (#1035) 2023-02-21 17:08:55 -05:00
node-graph Restore handle length when Shift is released while dragging opposite handle with Path tool (#1009) 2023-02-22 05:21:46 +05:30
proc-macros Update Imaginate to output bitmap data to the graph via Image Frame node (#1001) 2023-02-11 08:56:31 +00:00
website Fix file paths mentioned in website's Contribute page (#1052) 2023-02-23 02:40:28 -05:00
.editorconfig Move .editorconfig to root for GitHub tab rendering 2021-03-24 14:02:26 -07:00
.gitattributes Add npm start script alias for npm run serve 2022-01-12 06:14:32 -08:00
.gitignore Restructure GPU compilation execution pipeline (#903) 2022-12-31 02:52:04 +01:00
.gitmodules Add dyn-any as a submodule 2022-08-02 11:52:08 +02:00
.nvmrc Switch to Node.js 16 LTS, upgrade TypeScript, ESLint, and other dependencies (#395) 2021-11-29 03:32:09 -08:00
about.hbs Do not silently install cargo-about. (#377) 2021-09-19 16:58:04 +02:00
about.toml Fix build scripts so a failure returns a nonzero exit code 2023-01-02 22:04:13 -08:00
Cargo.lock Add type checking to the node graph (#1025) 2023-02-15 23:31:30 +01:00
Cargo.toml Groundwork for integrating Specta (#949) 2023-01-28 22:29:38 -08:00
deny.toml Restructure GPU compilation execution pipeline (#903) 2022-12-31 02:52:04 +01:00
LICENSE.txt Add Apache 2 license 2020-07-12 13:58:50 -07:00
package.json Port frontend from Vue to Svelte (WIP in separate folder, many bugs) (#964) 2023-01-13 01:05:20 -08:00
README.md Update project readme and MSRV 2023-01-24 01:33:30 -08:00
rustfmt.toml Upgrade rustfmt to 2021 edition 2021-11-02 20:08:39 -07:00

Graphite logo

Redefining state-of-the-art graphics editing.

Graphite is an in-development raster and vector 2D graphics editor that is free and open source. It is powered by a node graph compositing engine that supercharges your layer stack, providing a completely non-destructive editing experience.

Graphite is a lightweight vector graphics editor that runs in your browser. Its nascent node-based compositor lets you apply raster effects and co-create amazing art with AI in a non-destructive workflow. Fully-featured raster image editing, and a native desktop application, are current high-level development goals.

Launch the latest alpha version and learn more on the project website.

Please star this GitHub repository to help build momentum.

Discord

Join our Discord community to chat with the community and development team. Feel free to lurk, ask questions, give suggestions, or get involved in the project. We are always seeking new collaborators to help design and develop the software and this is where we communicate.

Building/Contributing

We need Rust and web developers! See instructions here for setting up the project and getting started.

We are also in search of artists to create beautiful sample work in Graphite and illustrations for the website and social media. Please get in touch if you are able to help out.

Design

The #1 priority for the Graphite software is providing a delightful user experience. The UI, UX, and product design is not an afterthought, but is a central guiding light in the software development process.

Below are some mockups demonstrating future goals for the user interface once nodes and raster photo editing is fully available.

Graphite raster UI viewport mockup

Viewport interface mockup showcasing a photo editing project that utilizes Graphite's raster graphics pipeline, one of the upcoming roadmap milestones. Raster editing is not yet supported.

Graphite raster UI node graph mockup

Node graph mockup demonstrating how the layers directly correspond to nodes. Thick vertical (upward) lines represent compositing stacks and horizontal (rightward) links represent data flow connections.

Features/Roadmap

See the web page for this information.