Skip to content

Commit

Permalink
Blog post: Graphite progress report (Q3 2024) (#2013)
Browse files Browse the repository at this point in the history
* Q3 blog

* WIP

---------

Co-authored-by: Keavon Chambers <[email protected]>
  • Loading branch information
0HyperCube and Keavon committed Oct 15, 2024
1 parent e09f5ec commit 47a5cc5
Show file tree
Hide file tree
Showing 8 changed files with 430 additions and 25 deletions.
2 changes: 2 additions & 0 deletions website/content/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -329,6 +329,8 @@ Nondestructive editing means every decision is tied to a parameter you can adjus

Blend across color schemes. Morph shapes before they're scattered around the canvas. The possibilities are endless.

<a href="https://editor.graphite.rs/#demo/changing-seasons">Open this artwork</a> and give it a try yourself.

</div>

<div class="block video-background">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ This is the second of our quarterly progress report blog posts. If you missed th
All Q2 2024 commits may be [viewed in this list](https://github.com/GraphiteEditor/Graphite/commits/master/?since=2024-04-01&until=2024-06-30) and all noteworthy changes are detailed below. To showcase the much anticipated introduction of boolean path operations, the new *Painted Dreams* artwork shown here extensively utilizes nondestructive booleans.

<div class="demo-artwork">
<a href="https://editor.graphite.rs/#demo/isometric-fountain">
<a href="https://editor.graphite.rs/#demo/painted-dreams">
<img src="https://static.graphite.rs/content/blog/2024-07-31-graphite-progress-report-q2-2024.avif" onerror="this.onerror = null; this.src = this.src.replace('.avif', '.png')" alt="Vector art of Painted Dreams" />
</a>
<p>
Expand Down Expand Up @@ -152,7 +152,7 @@ EDITOR'S NOTE: The grammatical structure of each bullet point should follow the

- [Weekly updates](https://github.com/GraphiteEditor/Graphite/discussions/1773) are being posted while the project is ongoing

- [Elbert Ronnie](https://github.com/elbertronnie)'s Google Summer of Code project has begun building the Raw-rs library for decoding raw image formats, with the goal of supporting photo processing in Graphite once the project is completed — to date this has included:
- [Elbert Ronnie](https://github.com/elbertronnie)'s Google Summer of Code project has begun building a library for decoding raw image formats, with the goal of supporting photo processing in Graphite once the project is completed — to date this has included:

- Initial code foundations including a basic custom TIFF decoder <small>([#1757](https://github.com/GraphiteEditor/Graphite/pull/1757))</small>

Expand Down Expand Up @@ -216,7 +216,7 @@ EDITOR'S NOTE: The grammatical structure of each bullet point should follow the

- Fixed bugs where the *Poisson-Disk Points*, *Repeat*, *Circular Repeat*, and *Bounding Box* node input shapes weren't using their transform <small>([#1784](https://github.com/GraphiteEditor/Graphite/pull/1784), [#1792](https://github.com/GraphiteEditor/Graphite/pull/1792))</small>

- Improved the Path tool's point selection behavior so clicking a selected anchor deselects all other selected points <small>([#1782](https://github.com/GraphiteEditor/Graphite/pull/1782))</small>
- Improvements to the Path tool's point selection behavior so clicking a selected anchor deselects all other selected points <small>([#1782](https://github.com/GraphiteEditor/Graphite/pull/1782))</small>

- Regression fix for being unable to arrange layers with no artboard present <small>([#1786](https://github.com/GraphiteEditor/Graphite/pull/1786))</small>

Expand Down
389 changes: 389 additions & 0 deletions website/content/blog/2024-10-15-graphite-progress-report-q3-2024.md

Large diffs are not rendered by default.

36 changes: 18 additions & 18 deletions website/content/features.md
Original file line number Diff line number Diff line change
Expand Up @@ -141,10 +141,6 @@ Always on the bleeding edge and built to last— Graphite is written on a robust
<img class="atlas" style="--atlas-index: 0" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Imaginate (Stable Diffusion node/tool)</span>
</div>
<div class="feature-icon ongoing" title="Development Ongoing">
<img class="atlas" style="--atlas-index: 12" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>GPU-accelerated raster rendering</span>
</div>
<div class="feature-icon ongoing" title="Development Ongoing">
<img class="atlas" style="--atlas-index: 14" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Infinitely zoomable/panable content</span>
Expand All @@ -153,22 +149,26 @@ Always on the bleeding edge and built to last— Graphite is written on a robust
<img class="atlas" style="--atlas-index: 19" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Raw photo processing</span>
</div>
<div class="feature-icon">
<div class="feature-icon ongoing" title="Development Ongoing">
<img class="atlas" style="--atlas-index: 12" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>GPU-accelerated raster rendering</span>
</div>
<div class="feature-icon ongoing" title="Development Ongoing">
<img class="atlas" style="--atlas-index: 9" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Graph data attribute spreadsheets</span>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 41" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Timeline with animation channels</span>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 57" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Signed distance fields</span>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 7" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Lightweight desktop app (with <a target="_blank" href="https://tauri.app/">Tauri</a>)</span>
</div>
<!-- Alpha 4 -->
<div class="feature-icon heading" title="Expected to begin February 2025" data-year="2025">
<h3>— Alpha 4 —</h3>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 54" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Local file browser for saving/loading</span>
Expand All @@ -178,12 +178,12 @@ Always on the bleeding edge and built to last— Graphite is written on a robust
<span>Local fonts access</span>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 5" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Rewrite of the basic brush tool</span>
<img class="atlas" style="--atlas-index: 57" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Signed distance fields</span>
</div>
<!-- Alpha 4 -->
<div class="feature-icon heading" title="Expected to begin February 2025" data-year="2025">
<h3>— Alpha 4 —</h3>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 5" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Brush tool rewrite</span>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 56" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
Expand Down Expand Up @@ -213,10 +213,6 @@ Always on the bleeding edge and built to last— Graphite is written on a robust
<img class="atlas" style="--atlas-index: 50" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Shape builder tool</span>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 48" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Mesh vector format</span>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 28" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Guide mode (construction geometry)</span>
Expand Down Expand Up @@ -253,6 +249,10 @@ Always on the bleeding edge and built to last— Graphite is written on a robust
<img class="atlas" style="--atlas-index: 27" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Automation and batch processing</span>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 48" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>NURBS and mesh vector formats</span>
</div>
<div class="feature-icon">
<img class="atlas" style="--atlas-index: 25" src="https://static.graphite.rs/icons/icon-atlas-roadmap__3.png" alt="" />
<span>Liquify and non-affine transforms</span>
Expand Down
9 changes: 5 additions & 4 deletions website/content/volunteer/guide/projects/student-projects.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,14 @@ When it comes to writing the proposal, which you will submit to the GSoC applica

In addition to the detailed projects below, here are some loose ideas that may be developed into full project options before the next GSoC application period:
- Color management for HDR/WCG
- Sophisticated text layout system
- Sophisticated text layout and advanced typography features
- Traditional brush engine
- [Procedural brush engine](https://github.com/Keavon/Brush-Nodes)
- Image processing algorithms for photography
- Snapping system overhaul
- [Node equivalence rewriting](https://github.com/GraphiteEditor/Graphite/issues/2021)
<!-- PDF import/export -->
<!-- ONNX model embedding to run in WebGPU and native (Tauri) and server -->

<!--
TODO: Add to the completed projects list after successful completion.
Expand Down Expand Up @@ -187,9 +191,6 @@ If none of the projects above suit your interests or experience, we are very ope

As is the case with all projects, please discuss this with us on Discord to flesh out your idea. Unsolicited proposals that have not been discussed with us will almost certainly be rejected.

<!-- ### PDF import/export -->
<!-- ### ONNX model embedding to run in WebGPU and native (Tauri) and server -->

## Successful past projects

### 2024: Node graph auto layout
Expand Down
5 changes: 5 additions & 0 deletions website/sass/base.scss
Original file line number Diff line number Diff line change
Expand Up @@ -375,6 +375,7 @@ body > .page {
// =====================

:is(h1, h2, h3, h4, article > :first-child) ~ :is(p, ul, ol, ol li p, img, a:has(> img:only-child)),
:is(h1, h2, h3, h4, article > :first-child) ~ :is(ul, ol) li p + img,
:is(h1, h2, h3, h4, p) ~ .feature-icons,
p ~ :is(h1, h2, h3, h4, details summary, blockquote, .image-comparison, .video-background, .video-embed),
.video-embed + :is(p, .link, .button),
Expand Down Expand Up @@ -446,6 +447,10 @@ p {
text-justify: inter-character; // Only supported in Firefox
-webkit-hyphens: auto;
hyphens: auto;

code {
text-justify: auto;
}
}

h1,
Expand Down
4 changes: 4 additions & 0 deletions website/sass/blog.scss
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,10 @@
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;

code {
text-justify: auto;
}

// Safari workaround: https://stackoverflow.com/a/72170897/775283
// But there remains an issue where the ellipsis is rendered inside the text. There doesn't appear to be a fix, or even a way to disable the ellipsis in Safari.
p {
Expand Down
4 changes: 4 additions & 0 deletions website/sass/index.scss
Original file line number Diff line number Diff line change
Expand Up @@ -445,6 +445,10 @@
-webkit-box-orient: vertical;
-webkit-line-clamp: 6;

code {
text-justify: auto;
}

// Safari workaround: https://stackoverflow.com/a/72170897/775283
// But there remains an issue where the ellipsis is rendered inside the text. There doesn't appear to be a fix, or even a way to disable the ellipsis in Safari.
p {
Expand Down

0 comments on commit 47a5cc5

Please sign in to comment.