diff --git a/README.md b/README.md index 5aa501d35e..37e08d2538 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,13 @@ -

📷 PhotoCraft

+

+ + + + ArtCraft + + +

+ +

PhotoCraft

The image editor you already know how to use.
@@ -8,24 +17,44 @@

100% Rust - macOS · Windows · Linux · Web + macOS · Windows · Linux · Web License: MIT or Apache-2.0 Status: early alpha

+

+ Join the ArtCraft community on Discord +

+ +

+ PhotoCraft on getartcraft.com · + ArtCraft · + All Crafting Apps +

+ +
+ +

+ PhotoCraft editing Hokusai's The Great Wave: a caption card with a drop shadow, Title and Credit type layers, Vibrance and Curves adjustment layers, and the Curves editor drawn over the image's histogram +
+ A caption card with a drop shadow, live type, and Vibrance and Curves adjustment layers, with the Curves editor open.
+ The Great Wave off Kanagawa, Katsushika Hokusai, c. 1831
+

+ +> [!NOTE] +> **ArtCraft is a community of artists from all walks of life.** Painters, photographers, +> filmmakers, illustrators, designers, animators, hobbyists, and people who picked up a pencil +> last week. If you make things, you're one of us. **[Come say hi on Discord](https://discord.gg/artcraft).** +

Features · Everything in the box · PSD · Agents · + Under the hood · Get started · - Crafting Apps -

- -

- PhotoCraft editing Hokusai's The Great Wave: a caption card with a drop shadow, type layers, Vibrance and Curves adjustment layers, and the Curves editor with its histogram -
- The Great Wave off Kanagawa, Katsushika Hokusai, c. 1831 + Crafting Apps · + Discord


@@ -55,96 +84,90 @@ ## Features +Every screenshot here is the real app at work on public-domain art, rendered offscreen through its control channel. + - - - - - - - - - - - - - - - - - - - - - - - -
Vibrance and Levels adjustment layers with the Histogram panel -

Edit without regret.

+
+ Monet's Impression, Sunrise with Levels and Vibrance adjustment layers; the Levels editor and the Histogram panel with mean, standard deviation and median are open on the right +
+ Levels and Vibrance adjustment layers, with the live Histogram panel.
Impression, Sunrise, Claude Monet, 1872
+

Edit without regret

Adjustment layers keep every edit live. Stack Levels, Curves, Vibrance, Hue/Saturation and a dozen more, mask them to an area, reorder them, or turn them off, and your original pixels never change.

16 adjustment layers that also apply directly to pixels, including Curves with per-channel editing, Levels with a live histogram, Black & White, Channel Mixer, Gradient Map, Photo Filter, Selective Color and Color Lookup (.cube, .3dl, .look). Plus Shadows/Highlights, Replace Color, Match Color, HDR Toning, Desaturate and Equalize. -

- Impression, Sunrise, Claude Monet, 1872
-

Styles that sell the shot.

+
+ The Layer Style dialog editing an Outer Glow on the EARTHRISE type layer, with Stroke also enabled, over the Apollo 8 Earthrise photograph +
+ Outer Glow and Stroke on a live type layer, in the Layer Style dialog.
Earthrise, William Anders / NASA, 1968
+

Styles that sell the shot

Drop Shadow, Inner Shadow, Outer and Inner Glow, Bevel & Emboss, Satin, Stroke, and Color, Gradient and Pattern Overlay, live on any layer, including type. Patterns come from a library (built-ins, Edit › Define Pattern, .pat import/export) and PSD Patt blocks.

Copy and paste styles between layers, hide all effects at once, and open styles straight from your PSDs, rendered to match Photoshop. -

- Earthrise, William Anders / NASA, 1968
Outer Glow and Stroke on live type, in the Layer Style dialog
A feathered elliptical selection used as the mask of a Hue/Saturation layer -

Selections that understand your image.

+
+ Vermeer's Girl with a Pearl Earring: an elliptical selection around the face, and a Hue/Saturation layer with an elliptical mask that turns everything outside the face gray +
+ An elliptical selection becomes the mask of a Hue/Saturation layer, so only the face keeps its color.
Girl with a Pearl Earring, Johannes Vermeer, c. 1665
+

Selections that understand your image

Marquees, lassos and the Magic Wand for precision; Quick Selection, Object Selection and Select Subject when you want the computer to do the tracing; Select and Mask to refine hair-fine edges.

Feather, expand, contract, smooth, grow, reselect. Turn any selection into a layer mask, a vector path or a shape. Smart selection runs on your machine, with no cloud and no account. -

- Girl with a Pearl Earring, Johannes Vermeer, c. 1665
-

Type that sets beautifully.

+
+ Bierstadt's Among the Sierra Nevada with the headline SIERRA NEVADA being edited on the canvas in Georgia, a byline, and a paragraph caption; the Character and Paragraph controls are open +
+ A headline edited in place, with a byline and a paragraph of body text.
Among the Sierra Nevada, California, Albert Bierstadt, 1868
+

Type that sets beautifully

Point and paragraph text, edited right on the canvas, with full Character and Paragraph controls: font, weight, size, leading, tracking, alignment and colour.

Type layers stay editable, take layer styles, and round-trip through PSD. -

- Among the Sierra Nevada, California, Albert Bierstadt, 1868
Point and paragraph type edited inline
Shape layers with gradient fills and dashed strokes -

Pixel-perfect vectors.

+
+ A lotus badge built from shape layers (Lotus, Water, Sun, Badge and Dotted Ring) over Monet's Water Lilies, with the lotus path's anchor points selected +
+ A badge made of shape layers: a gradient-filled lotus, a star and a dotted ring.
Water Lilies, Claude Monet, 1906
+

Pixel-perfect vectors

Rectangle, Ellipse, Triangle, Polygon, Line and the Pen tool, with resolution-independent shape layers, gradient fills, and dashed, aligned strokes.

Combine shapes (unite, subtract, intersect, exclude), keep paths in the Paths panel, use them as vector masks, or stroke and fill them. 116 of 116 shape layers in our PSD corpus match Photoshop's pixels. -

- Water Lilies, Claude Monet, 1906
-

See it before you commit.

+
+ The Twirl filter dialog at a 320 degree angle, previewing live inside an elliptical selection on Van Gogh's The Starry Night +
+ Twirl previews live on the canvas, only inside the selection.
The Starry Night, Vincent van Gogh, 1889
+

See it before you commit

Every filter dialog previews live on the canvas, through your selection. Blurs (Gaussian, Box, Motion, Radial, Surface, Smart, Lens, Shape, and the Blur Gallery: Tilt-Shift, Iris, Field, Spin, Path), sharpening, Reduce Noise, distortions (Twirl, Wave, Ripple, Displace, Shear, Zig Zag…), Pixelate, Stylize (Oil Paint, Wind, Extrude…), Render (Clouds, Fibers, Lens Flare, Lighting Effects) and more.

Run filters on a smart object and they stay editable: change, hide, reorder or mask them at any time.

Large-radius blurs use running-sum box passes across all cores: a radius-180 Gaussian on 3.6 MP takes under a second. -

- The Starry Night, Vincent van Gogh, 1889
The Twirl filter previewed live on the canvas
Free Transform handles and the History panel -

Shape it any way you like.

+
+ Free Transform handles around a rotated copy of Ansel Adams' The Tetons and the Snake River, with the History panel listing Open, Duplicate Layer, Free Transform and other steps +
+ Free Transform on a rotated print, with every step listed in History.
The Tetons and the Snake River, Ansel Adams, 1942
+

Shape it any way you like

Free Transform with scale, rotate, skew, distort and perspective; exact 90° and 180° rotations and flips; Transform Again. Layers, type, shapes, masks and selections all transform together.

Full history, Toggle Last State and the History Brush mean every step can be undone, even one brush stroke at a time. -

- The Tetons and the Snake River, Ansel Adams, 1942
-

Ship it anywhere.

+
+ The Export As dialog in the light theme over Klimt's The Kiss: JPG at quality 90, scaled to 50 percent, with a preview and an estimated size of about 684K +
+ Export As in the light theme, with a preview and a file-size estimate.
The Kiss, Gustav Klimt, 1907–1908
+

Ship it anywhere

Export As with format, quality, transparency and scale, plus a preview and an instant file-size estimate. Quick Export to PNG in one click.

Choose a dark Pro theme, the airy Studio themes, or a Classic look. -

- The Kiss, Gustav Klimt, 1907–1908
Export As in the light theme
@@ -237,41 +260,62 @@ New contributors and AI agents: start with [`AGENTS.md`](AGENTS.md), then [`docs Installers for macOS, Windows, Linux and the web are attached to each [GitHub release](https://github.com/storytold/photocraft/releases). Maintainers: [`docs/releasing.md`](docs/releasing.md) explains how releases are built, signed and published. -> **Status:** PhotoCraft is in early alpha. The core editing workflow is here, and we're working toward full Photoshop parity milestone by milestone (see [`docs/roadmap.md`](docs/roadmap.md)). Progress is measured, not guessed: `cargo xtask parity` checks every item in Photoshop's menu tree against the live command registry and writes [`docs/parity.md`](docs/parity.md). Expect rough edges, and please file issues. +> [!IMPORTANT] +> **Status:** PhotoCraft is in early alpha. The core editing workflow is here, and we're working toward full Photoshop parity milestone by milestone (see [`docs/roadmap.md`](docs/roadmap.md)). Progress is measured, not guessed: `cargo xtask parity` checks every item in Photoshop's menu tree against the live command registry and writes [`docs/parity.md`](docs/parity.md). Expect rough edges, and please file issues. You can also tell us what broke on [Discord](https://discord.gg/artcraft). -## Crafting Apps +## The Crafting Apps -Open-source, clean-room, pure-Rust creative apps that share the same conventions: native on macOS, Windows and Linux, in the browser via WebAssembly, and fully drivable by agents. +PhotoCraft is one of the **Crafting Apps**: free, open-source creative tools from the +[ArtCraft](https://getartcraft.com/) team, each written from scratch in Rust and each able to +stand on its own. - - - - - - - - -
-

📷 PhotoCraft

- Layered image editing and compositing: the Photoshop workflow. -
-

✏️ DrawCraft

- Vector illustration: the Illustrator workflow. -
-

🎬 FilmCraft

- Non-linear video editing: the Premiere Pro workflow. -
-

🌄 LightCraft

- Photo library and non-destructive raw developer: the Lightroom workflow. -
-

📄 PrintCraft

- PDF viewing and editing: the Acrobat Pro workflow. -
+| App | What it's for | Code | Learn more | +|---|---|---|---| +| PhotoCraft | **Image editing: layers, masks, type and real PSD files · you are here** | [GitHub](https://github.com/storytold/photocraft) | [getartcraft.com](https://getartcraft.com/apps/photocraft) | +| VectorCraft | Vector illustration (formerly DrawCraft) | [GitHub](https://github.com/storytold/vectorcraft) | [getartcraft.com](https://getartcraft.com/apps/drawcraft) | +| FilmCraft | Video editing, color and sound | [GitHub](https://github.com/storytold/filmcraft) | [getartcraft.com](https://getartcraft.com/apps/filmcraft) | +| LightCraft | Photo library and raw development | [GitHub](https://github.com/storytold/lightcraft) | [getartcraft.com](https://getartcraft.com/apps/lightcraft) | +| PrintCraft | Reading, organizing and protecting PDFs | [GitHub](https://github.com/storytold/printcraft) | [getartcraft.com](https://getartcraft.com/apps/printcraft) | +| EffectCraft | Motion graphics and visual effects | [GitHub](https://github.com/storytold/effectcraft) | [getartcraft.com](https://getartcraft.com/apps/effectcraft) | +| DesignCraft | Page layout and publishing | [GitHub](https://github.com/storytold/designcraft) | [getartcraft.com](https://getartcraft.com/apps/designcraft) | + +And [**ArtCraft**](https://getartcraft.com/) itself, our AI image and video studio for artists who want real control. + +The Crafting Apps share the same conventions: clean-room and pure Rust, native on macOS, Windows and Linux, in the browser via WebAssembly, and fully drivable by agents. + +
+ +

+ Join the ArtCraft community on Discord +

+ +

Come make things with us

+ +

+ Our Discord is where artists of every kind hang out: people who paint, shoot, draw, cut film, + set type, and people still figuring out what they like to make. Share what you're working on, + ask for help, tell us what's broken, or tell us what you wish these tools could do. + Whatever your medium and however long you've been at it, you're welcome here. +

+ +

+ discord.gg/artcraft · + getartcraft.com · + The Crafting Apps · + PhotoCraft +

--- -

- Built by the artcraft team. Licensed under MIT or Apache-2.0.
- Every artwork shown is in the public domain (Wikimedia Commons, NASA, U.S. National Archives); sources are listed in docs/images/SOURCES.md.
- Photoshop is a trademark of Adobe Inc. PhotoCraft is an independent project, not affiliated with or endorsed by Adobe. -

+## License and credits + +PhotoCraft is licensed under MIT or Apache-2.0. + +Every artwork shown is in the public domain (Wikimedia Commons, NASA, U.S. National Archives); sources are listed in [`docs/images/SOURCES.md`](docs/images/SOURCES.md). + +Photoshop is a trademark of Adobe Inc. PhotoCraft is an independent project, not affiliated with or endorsed by Adobe. + +

+ ArtCraft
+ Made by the ArtCraft team and community. +

diff --git a/docs/brand/artcraft-logo-white.png b/docs/brand/artcraft-logo-white.png new file mode 100644 index 0000000000..8cfb31d940 Binary files /dev/null and b/docs/brand/artcraft-logo-white.png differ diff --git a/docs/brand/artcraft-logo-white.svg b/docs/brand/artcraft-logo-white.svg new file mode 100644 index 0000000000..4af80f7570 --- /dev/null +++ b/docs/brand/artcraft-logo-white.svg @@ -0,0 +1,7 @@ + + ArtCraft + + + + + diff --git a/docs/brand/artcraft-logo.png b/docs/brand/artcraft-logo.png new file mode 100644 index 0000000000..a4d1544caa Binary files /dev/null and b/docs/brand/artcraft-logo.png differ diff --git a/docs/brand/artcraft-logo.svg b/docs/brand/artcraft-logo.svg new file mode 100644 index 0000000000..d63f3eae1b --- /dev/null +++ b/docs/brand/artcraft-logo.svg @@ -0,0 +1,7 @@ + + ArtCraft + + + + + diff --git a/docs/brand/artcraft-mark-black.png b/docs/brand/artcraft-mark-black.png new file mode 100644 index 0000000000..27664bc119 Binary files /dev/null and b/docs/brand/artcraft-mark-black.png differ diff --git a/docs/brand/artcraft-mark-black.svg b/docs/brand/artcraft-mark-black.svg new file mode 100644 index 0000000000..6394353783 --- /dev/null +++ b/docs/brand/artcraft-mark-black.svg @@ -0,0 +1,4 @@ + + ArtCraft + + diff --git a/docs/brand/artcraft-mark.png b/docs/brand/artcraft-mark.png new file mode 100644 index 0000000000..dbb3dc0895 Binary files /dev/null and b/docs/brand/artcraft-mark.png differ diff --git a/docs/brand/artcraft-mark.svg b/docs/brand/artcraft-mark.svg new file mode 100644 index 0000000000..72e191f8ab --- /dev/null +++ b/docs/brand/artcraft-mark.svg @@ -0,0 +1,4 @@ + + ArtCraft + +