Timon
324b9e664c
Desktop: Update CEF ( #4048 )
...
* Update CEF to version 147
* Fix fmt
* Move CEF package
* Fix nix package
* Improve
* Cleanup
* Fix
2026-04-28 02:25:39 +02:00
Firestar99
824d1162eb
Update rust-gpu to 0.10.0-alpha.1 ( #4033 )
...
* rust-gpu alpha.1: update nix flake
* rust-gpu alpha.1: disable non-working mold shell hook
* rust-gpu alpha.1: update rust-gpu to `0.10.0-alpha.1` on crates
* Review
* Fix gpu nodes
* Reduce wasm size
---------
Co-authored-by: Timon <me@timon.zip >
2026-04-27 23:53:49 +00:00
Dennis Kobert
3d84e63ef9
Migrate usage of the Hash trait for cache invalidation to the dedicated CacheHash trait ( #4051 )
...
* WIP start migrating usages of hash for cache invalidadion to dedicated trait
* Finish migrating usages
* Code review
* Add comments clearifying the reasoning for using random ids in the VectorModification cach hash impl
* Fix some remaining hash violations
* Finish migration and fix compilation
* Fix import ordering
* Cleanup
* Fix code review stuff
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2026-04-27 05:18:47 +00:00
Keavon Chambers
c9c76df40c
New nodes: 'Regex Contains', 'Regex Replace', 'Regex Find', 'Regex Find All', and 'Regex Split' ( #4045 )
...
* Add a family of 5 regex nodes for string processing
* Fix unstaged change
2026-04-24 00:55:24 -07:00
Keavon Chambers
328c4f272b
New node: 'String Capitalization' ( #4043 )
...
* New node: 'String Capitalization'
* Clarify comment
2026-04-23 19:12:00 -07:00
Timon
661e8bc569
Remove surface and window from ApplicationIo ( #3941 )
...
* Remove surface and window from ApplicationIo
* Seperate Wasm and Native ApplicationIo
* Fix warnings
* Fix tests
* Remove redundant PlatformApplicationIo::new_offscreen
* Fixup
* Remove unused From implementaitions for ApplicationIo
2026-04-09 20:12:53 +00:00
Timon
211111a01f
Desktop: Fix document tab reorder not being persisted ( #4002 )
...
* Desktop: Fix reorder not beeing persisted
* Desktop: Use rfd fork to support starting_directory with zenity dialog backend
2026-04-08 01:13:30 +02:00
Keavon Chambers
d5d10fe548
Rename /frontend/wasm -> /frontend/wrapper ( #3927 )
2026-03-21 03:46:47 -07:00
Keavon Chambers
6d0357bbcf
Fix Vello rendering blurry images with a half-pixel offset
2026-03-11 04:48:08 -07:00
Dennis Kobert
90533e656f
Remove the path-bool library ( #3882 )
2026-03-11 08:55:03 +01:00
jneem
58aae4f87b
Replace the Boolean Operations node's algorithm with the Linesweeper library ( #2670 )
...
* Attempt one-shot n-ary ops
* Make it not crash
* Try to remove more path_bool
* Add quantization
* Update to latest
* Nits
* Code review
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2026-03-10 22:00:49 -07:00
Keavon Chambers
52d2b38a82
Refactor the TypeScript data flow for full type safety and auto-generation of Rust types ( #3865 )
...
* Migrate Specta to Tsify to auto-generate messages.ts, working except colors and widgets
* Adopt the generated FillColor/Color/GradientStops
* Fix widget typing
* Separate WidgetGroup enum variants into wrapper structs
* Small rename
* Simplify widgets further
* Clean up message type references
* Switch type imports to the auto-generated file
* Remove lowercase serde rename
* Fix FillChoice deserialization
* Fix small regression from #3837
* Improve type safety
* Make WidgetSpan type-safe
* More cleanup and type safety
* More type safety
* More type safety
* Get the rest to type-check without errors; improve widget builder macro to have optional icons; improve Svelte 5 configs
* Cargo fmt
* Fix imports
* Update outdated readme info
* Fix lint command rename references
* Fix typos
* One more typos fix
* Remove unnecessary dep: prefix from the edited Cargo.toml files
* Remove excess parts from Cargo.toml
* Fix compiling on desktop
* Revert "Remove excess parts from Cargo.toml"
This reverts commit 6b711117b3a5d5d8a3ee20f36a43bc74930b7c82.
* Update dev docs with simpler, more accurate instructions
2026-03-09 16:35:04 -07:00
Dennis Kobert
3d1491ce92
Add animated GIF file export to Graphene CLI ( #3846 )
...
* Add gif file export via graphene cli
* Add check for negative fps numbers
2026-03-08 10:33:40 +00:00
Timon
5d22292072
Replace npm build script with new cargo run tool ( #3832 )
...
* move nix flake to root
* cargo run tool
* use thiserror in third-party-licenses tool
* prefere panic over exit
* Add automatic dependency check to cargo run tool
* Skip dependecies that are not needed for the current task
* Fixup
* Fixup
* fix windows
* Fixup
* improve usage text
* Fix linux bundle
* add graphen-cli
* fix build profile
* fix
* release profile should not include debug infos
* Review
* remove profiling profile
was redundent with release
* rename to cargo-run tool
* improve consistency
* rename deps to requirements
* fix
* return success when showing usage
2026-03-07 13:26:19 +00:00
Dennis Kobert
50ef6e15cb
Use glob syntax for Cargo.toml ( #3489 )
...
* Use glob syntax for Cargo.toml
* Readd nested crates to workspace members and reduce the list of default members
2026-03-05 10:20:41 +00:00
Timon
da7437c023
Reimplement notice file generation for third-party licenses through Rust, now with CEF credits ( #3808 )
2026-02-26 11:12:28 +00:00
Keavon Chambers
82cf8eb369
Upgrade Linebender and related dependencies ( #3819 )
...
Co-authored-by: Timon <me@timon.zip >
2026-02-25 19:10:57 +00:00
Keavon Chambers
7ca6470656
Rename the repeat nodes to replace "Instance" terminology with "Repeat" ( #3794 )
...
* WIP
* Move the Mirror node from the module 'vector' to 'graphic'
* Update demo art
* Fix failing tests
Fix tests
2026-02-20 22:10:59 -08:00
Sahil Gupta
6c10364c8c
Introduce QR Code node ( #3565 )
...
Co-authored-by: Timon <me@timon.zip >
2026-02-14 17:50:43 +00:00
Timon
5ace2c9660
Desktop: Use tokio async runtime ( #3704 )
...
Use tokio because hyper needs it
2026-02-02 12:49:15 +01:00
Keavon Chambers
781fa7ae95
Move contributor docs editor message structure tree generator from test to tools directory ( #3663 )
2026-01-20 23:53:15 -08:00
Keavon Chambers
7af60e02a3
Add the auto-generated node catalog to the website's user manual ( #3662 )
...
* Generate the MVP node catalog in the manual (with some placeholders)
* Implement nearly the rest of everything
* Move to the tools directory and make it generate nicer default values
* Add category descriptions
* Organize file structure and improve type naming
* Improve book table of contents code
* Add collapsing chapter navigation to the book template
* Add to build workflow
* Clean up site structure
2026-01-20 22:52:03 -08:00
Keavon Chambers
fb0fab0622
Update links from graphite.rs to graphite.art
2025-12-06 18:10:27 -08:00
Timon
3fd0460d03
Desktop: Update CEF to 142 ( #3431 )
...
* update CEF to 142
* fix win
* fixup
* post merge fix
* use getter instead
2025-11-30 23:23:31 +00:00
Dennis Kobert
406f3d93f3
Add tool for visualizing crate hierarchy ( #3315 )
...
* Add tool for visualizing crate hierarchy
* Update crate structure
* Restructure crate viz and integrate crate into workspace
* Remove transitive dependency edges
* Move png / svg creation into the rust binary
2025-11-28 15:34:45 +00:00
Timon
548e0df1a1
Desktop: Mac menu workaround ( #3398 )
2025-11-19 17:13:35 +00:00
Dennis Kobert
57b0b9c7ed
Restructure node crates ( #3384 )
...
* Restructure node-graph folder
* Fix wasm compilation
* Move node definitions out of *-types crates
* Cleanup
* Fix warnings
* Fix warnings
* Start adding migrations
* Add migrations and move memo nodes to gcore
* Move nodes/gsvg-render -> rendering
* Replace some hard coded identifiers and fix automatic conversion
* Fix Vec2Value node migration
* Fix formatting
* Add more migrations
* Cleanup features
* Fix core_types::raster import
* Update demo artwork (to make profile ci work)
* Move *-types to node-graph/libraries folder
* Add missing node migrations
* Migrate more nodes
* Remove impure memo node
* More fixes and remove warning
* Migrate context and add a few missing migrations
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com >
2025-11-18 10:21:54 +00:00
Timon
e751979e5c
Desktop: Mac fix keyboard input ( #3371 )
...
* add browser debug port env
* mac use option as alt
* fix cef texture double sRGB conversion by using cef-rs fork with fix
* fix keyboard input on mac
* add missing frontend messages
* fixup
* fix keyboard input mac
* dbg
* re implement keyboard mapping
Co-authored-by: csmoe <csmoe@msn.com >
* Fix double arrow keys
* try fix for non mac
* test
* Revert "test"
This reverts commit c7cde9c597 .
* fix mac
* some cleanup
* fix zoom in shortcut on mac introduced in #3377
* disable menu shortcut display
* fixup
2025-11-17 11:51:59 +00:00
Timon
9be207f4c5
Desktop: Update CEF to 141 ( #3352 )
...
update cef to 141
2025-11-08 11:59:02 +00:00
Dennis Kobert
68e67055d8
Update Linebender-related dependencies ( #3349 )
...
* Updates crates from linebender ecosystem
* Remove usages of decprecated Clip mix mode
2025-11-08 08:59:00 +01:00
Timon
5be9b1fabc
Desktop: Mac native menu bar ( #3301 )
...
* macos native menu bar
* fix nix build
* Add shortcut symbols to menu
* fix fmt
* fix vendoring
* cleanup intercept frontend message
* accept into editor message in queue function
2025-10-27 14:11:24 +00:00
Timon
52e98ea8a3
Desktop: Remove winit fork, fix nix package, and improve rendering ( #3307 )
...
* reduce triangle count
* switch to winit repo after changes where upstreamed
* fix nix pkg
2025-10-25 00:47:36 +00:00
jneem
3a80560a68
Move from poly-cool to polycool ( #3309 )
2025-10-24 22:12:01 +00:00
Timon
7fbe440e73
Desktop: Bundle for Mac and Windows ( #3297 )
...
* add bundle for mac os and windows
* Fix bundle name
This name gets used as the display name of the app on mac os, shorter name looks better and is more consistent.
* preserve std out by running bin directly
* bundle placeholder on linux
* fix linux
2025-10-23 10:39:08 +00:00
Dennis Kobert
37bf2ade11
Improve profiling CI ( #3296 )
...
* Imporve profiling CI
* Disable optimizations for graphene core in dev builds
2025-10-21 13:01:41 +00:00
Timon
39f4ccf8e0
Desktop: Fixup MacOS build ( #3295 )
...
desktop mac os fixup
Co-authored-by: Dennis Kobert <dennis@kobert.dev >
2025-10-20 13:31:36 +00:00
blue linden
5acf50c1ef
Reduce Nix flake maintanace by eliminating need for cargoHash bumps ( #3292 )
...
* prepare nix for hashless cargo builds, update rust-gpu to non-orphaned
commit
* match commit hashes to repos, update packages to make nix flake build
properly
* add nix build dir to gitignore
* Add npm TODO to flake.nix
* Update Cargo.lock
* Update TODO comment
2025-10-18 22:56:26 +00:00
Timon
e366e4d64e
Desktop: Update CEF to v140 ( #3277 )
...
* update cef to v140
* fix build
* update flake
2025-10-13 04:56:56 +00:00
Firestar99
5df3196b58
Update cargo-gpu, Increase resilience towards partial cache clears ( #3270 )
2025-10-08 16:18:20 +00:00
Firestar99
bfba632100
Update cargo-gpu, remove legacy-target-specs to fix nix builds ( #3257 )
...
update cargo-gpu, remove legacy-target-specs to fix nix builds
2025-10-06 08:56:56 +00:00
Timon
21f34ab19a
Desktop: Enable window resize controls on Wayland compositors ( #3183 )
...
wayland client side decorations
2025-09-21 12:17:05 +00:00
Timon
3fe7c477e9
Desktop: Switch to the latest unreleased version of Winit ( #3177 )
...
* Use unstable winit
* Improve
* Remove unnecessary heap indirection
2025-09-17 16:40:43 +02:00
Dennis Kobert
ad5d8fcd37
Optimize rendering by caching intermediate render results when panning/zooming ( #3147 )
...
* Add svg render node
WIP
Fix error in context nullificaton node insertion
Correctly translate metadata
Fix warning
* Cleanup
* Remove color / gradient check and fix svg defs
* Implement viewport filling transform modification for vello
* Cleanup and comments
* Code review
2025-09-11 11:35:33 +02:00
Timon
9411612d7f
Move shader entrypoints to separate crate ( #3157 )
2025-09-10 10:20:45 +00:00
Firestar99
f12b4da549
Shaders: add BufferStruct to support bool and enums ( #3109 )
...
* node-macro: modernize `node` macro
* node-macro: add `CrateIdent` struct containing resolved crate paths
* shaders: add trait `BufferStruct` and derive macro
* shaders: `gamma_correction` and `channel_mixer` gpu nodes
* shaders: `selective_color` gpu node
* shaders: `brightness_contrast_classic` gpu node
* shaders: append GPU to display name
* node-macro: fixup doc links
* shaders: consistently append " GPU" to all shader node names
2025-09-05 16:32:41 +00:00
Firestar99
a10103311e
Shaders: rust-gpu integration to compile shader nodes to WGSL ( #3097 )
...
* shaders: shader compilation setup
* nix: use rustc_codegen_spirv.so from nix
* shaders: codegen for per_pixel_adjust shader nodes
* shaders: disable nodes needing bool
* shaders: `#[repr(u32)]` some enums
* shaders: add lint ignores from rust-gpu
* shaders: fix node-macro tests
* gcore-shaders: toml cleanup
* shader-nodes feature: put rust-gpu to wgsl compile behind feature gate
* shaders: fix use TokenStream2
* shaders: allow providing shader externally
* Update iai runner in workflow
---------
Co-authored-by: Timon Schelling <me@timon.zip >
Co-authored-by: Dennis Kobert <dennis@kobert.dev >
2025-09-02 14:10:32 +00:00
Firestar99
be3de511f2
Desktop: Pin CEF version ( #3113 )
...
Fixed CEF cargo dependency so `cargo update` does not update it
2025-08-31 10:22:34 +00:00
Keavon Chambers
29684dde45
Update Rust dependencies ( #3112 )
...
* Update Rust dependencies
* Bump versions
* Try older ctor
2025-08-30 20:06:56 -07:00
Firestar99
ce1cd1706b
Disable proc-macros crate from being tested due to cargo bug ( #3103 )
...
* cargo: remove unused `editor/ron` feature
* cargo: add wgpu-executor as a member, sort list
* cargo: test every crate by default
* cargo: disable testing of `graphite-proc-macros`
2025-08-29 12:25:35 +02:00
Timon
1d4d1026d4
Desktop: Make embedded resources optional ( #3094 )
...
* Make embedding resources optional
* Move remaining cef rc to internal module
* Move embedded resources to separate crate
* Review fixup
* Fix
* Fix read
* Add read error
2025-08-28 17:18:18 +00:00