Mojave Paint
Layer-based image editor
Only for Mac
Free · In‑App Purchases
Mojave paint is a new image editor for macOS exclusively, with modern GPU-accelerated internals and a clean, uncluttered UI reminiscent of the best image editing software of the 1990's.
Try every feature free for 14 days. After that, a single one-time purchase unlocks Mojave Paint for good.
Layer features:
• Layer masks
• Effects/Styles
• Blend modes
• Arrange layers into folders
Tools:
• Painting tools: Brush, pencil, eraser, paint bucket, fill/clear selection, gradient
• Selection tools: Marquee, lasso, magic wand
• Transform tools: Move tool, Free Transform tool, rotate, flip
• Type tool: Font, size, color, leading, kerning, stretching
Filters/adjustments:
• Levels and Curves
• Brightness and contrast
• Blur and Sharpen
• Halftone, Mosaic, Crystallize
• Gradient Map
• Colorize
Input/output:
• Open/export as: PNG, JPEG, WEBP, HEIC, TIFF, GIF, BMP, and (for macOS 26+ users), AVIF
• Paste pixels off the clipboard
• macOS drag and drop
Free trial:
• Every feature is unlocked for 14 days, including exporting your work as flat files you can use or send to people
• After the trial ends, Mojave Paint can't open or create documents until you buy the full version
• Files you've already made stay on your Mac, and purchasing allows you to open them again
• One-time purchase, not a subscription
more It’s very easy to navigate! love how it completely skips the annoying ai trends and just gives me a beautifully clean workspace with clear buttons so I can get my edits done fast.
Developer Response Thank you! A lot of work went into the little details, just little things but they all add up. Like "click through" working, where your click actually actives the controls when the application is inactive (no wasted click just to activate the window.) Even Apple's own Numbers application doesn't do that.
It’s very easy to navigate! love how it completely skips the annoying ai trends and just gives me a beautifully clean workspace with clear buttons so I can get my edits done fast.
Thank you! A lot of work went into the little details, just little things but they all add up. Like "click through" working, where your click actually actives the controls when the application is inactive (no wasted click just to activate the window.) Even Apple's own Numbers application doesn't do that.
I’ve only just started playing with this, and I’m into it—but I have to ask, what is with the icon? I don’t understand how the name and what the app does and what the icon have to do with each other, to such a level that I’ll have to paste in a replacement icon as I’ll never get that this bland rock means old-school but modernized editing app. Is it a temporary icon?
Developer Response Thanks for the review, yeah that icon, it is a placeholder. I suspect you're on Tahoe where it looks quite bad, it's a little better on Sequoia where the ragged edge is more identifiable. There is a long history of icons being arbitrary (like VLC having a traffic cone) but the issue is just that it's bland looking. I was thinking it evokes the piles of boulders you see in like Joshua Tree National Park, and thought about doing a "graffiti'ed rock face" theme across the board including in the app icon, but now I'm not so sure. I'll give it some thought.
I’ve only just started playing with this, and I’m into it—but I have to ask, what is with the icon? I don’t understand how the name and what the app does and what the icon have to do with each other, to such a level that I’ll have to paste in a replacement icon as I’ll never get that this bland rock means old-school but modernized editing app. Is it a temporary icon?
Thanks for the review, yeah that icon, it is a placeholder. I suspect you're on Tahoe where it looks quite bad, it's a little better on Sequoia where the ragged edge is more identifiable. There is a long history of icons being arbitrary (like VLC having a traffic cone) but the issue is just that it's bland looking. I was thinking it evokes the piles of boulders you see in like Joshua Tree National Park, and thought about doing a "graffiti'ed rock face" theme across the board including in the app icon, but now I'm not so sure. I'll give it some thought.
New:
• Smart Folders. Similar to Smart Objects except you can view and edit the contents inline, no jumping to another document. Create with the "Group with Smart Folder" command (Control+Command+G).
• Use "Open from Photos" to open directly from your Photos library
• The threshold adjustment lets you threshold the alpha channel, for pixelating things
Changed:
• Placing large images in an existing document now positions them at the top left corner instead of centered (which might have put the corners way out of view)
• Use the Enter key to open all selected recent documents on the welcome screen
Fixed:
• The brush resize gesture (Control+Option+drag) now maxes out at 5000px (the typeable max) instead of 500px (the slider max)
• Click Through works on the layer panel area when an accessory window has focus, so you can e.g. hide and show layers with a single click after opening a filter window
• Moving a layer while a single color channel is selected under Channel correctly pulls the channels apart, for a chromatic aberration effect
• Float error accumulation could cause slight color variations when using a soft brush, i.e. you painted solid red and got a mix of #FF0000 and #FE0000 colors on the canvas
1.9.0 4h ago
New:
• Dodge and burn tools
• Layered TIFF export for better Photoshop interoperability. Only supports pixel layers currently (other layers types get rasterized).
• Tab key toggles "preview mode" on and off, which hides most of the UI
• When the Move tool is active, use raw number keys to change layer opacity (and shift+numbers to change layer fill)
Changed:
• The font size in a Type layer's properties gets a label, so you can scrub it sideways
• The leading row in a Type layer's properties was redesigned — now the word "Leading" is scrubbable (and double-clickable to reset to default)
• The Crop tool lets you rotate by mouse gesture, using Shift+Mouse Wheel
• Halftone filter upgrades. Make either the foreground or background transparent (such as if you want white ink that would go on a black t-shirt), and it lets you "consume" any opacity in the input image as density in the halftone pattern output.
• Added the Shift variants of the Foreground/Background fill keyboard shortcuts, which preserve transparency, e.g. Shift+Option+Backspace to fill with the foreground color in "Preserve Transparency" mode.
• Added the layer movement keyboard shortcuts. Command+Square Bracket to move the selected layer(s) up and down, and Shift+Command+Square Bracket to move them to the top or bottom.
• Added Shift+Command+G to ungroup layers (dissolve the folder)
• The opacity and fill sliders now work correctly with multiple layers selected
• With multiple contiguous layers selected, Command+E becomes "Merge Layers" instead of "Merge Down", merging the set in place
• With the brush tool, hold Option to temporarily activate the Eyedropper tool and sample colors from the canvas
Fixed:
• Brush strokes and freehand lasso strokes now process every mouse event, so quick strokes with a mouse or stylus are much smoother. High-end Wacom tablets sample at 200 Hz so the effect is especially noticeable there.
• Now showing the brush cursor on the canvas even when an accessory window (such as the color picker) is in focus
1.8.3 6d ago
New:
• Stylus pressure options in the Brush/Pencil tools. Let it shape the brush width or the opacity.
Changed:
• Double-tapping shift to cycle the current tool was too cumbersome in practice. Changed it to single tap of Shift.
• No more separate mode on the Recent Documents screen to do multi-select. Just Commad+click away or drag a rectangle, then single click any of the selected set to open them all.
• The last release added Option + Square Bracket shortcuts to navigate the layer list. This release also adds Shift + Option + Square Bracket to grow and shrink the set of selected layers. Works really nice with Command+G to make groups using only the keyboard.
Fixed:
• Much better emoji support. Insert while editing with the standard Control+Command+Space shortcut, and fixed several bugs related to the double width conjugate pairs while cursoring around in a type layer that has emojis.
1.8.2 Oct 24
Changed:
• Hue/Saturation adjustment gets a Lightness slider
• The Move tool now highlights the candidate Autoselect match when you hold Command
• Momentarily turn on the move tool's "Show Transform Controls" by holding the backtick key. Quickly tap backtick to toggle that setting on and off.
• Layer management: Added Option+Square Bracket shortcuts to cycle the selected layer up or down, plus Option+Backslash to expand/contract the selected folder(s)
• When using the Brush tool you can now hold the left/right Square Bracket keys for continuous size increase/decrease, and it now maxes out at the brush size's "typeable" max (5000px) instead of its "draggable" max (500px). Also added some Shift+Square Bracket shortcuts to adjust brush hardness.
• Shape tool gets a submenu for specific shapes
• Stacked tool dialogs move together when you move the topmost one around
• You can double-click the Opacity and Fill labels to reset them to 100% (unless they're already 100% in which case they go to 0%)
1.8.1 Oct 21
New:
• Real clipping masks. Access in multiple ways: The "Clip to Layer Below" command (Command+Option+G), cut/copy a layer and do "Paste Inside" (Shift+Command+V) on another layer, command-drag a layer onto another layer, or command-drag with the Move tool to put one layer inside another layer directly from the canvas. This sets up a parent/child clipping relationship as opposed to the sibling relationship you may be used to.
Changed:
• Shift+Backspace opens the Advanced Fill dialog to choose your fill options
• Better-looking grid lines in the Crop tool
1.8.0 Oct 15
New:
• Fill slider. Lets you hide the layer content while still showing the styles, for e.g. hollowed out text effects
• Gradient Map adjustment layer
Changed:
• More explicit handling of overflow pixels when you shrink the canvas via the Crop tool or with the Canvas Size… menu item. Trim them or keep them.
• The drop shadow effect now knocks out the interior part of the shadow when using non-normal blend modes
• Any missing fonts are indicated on the properties panel of the type layers, and with a different color layer name
• Drag a rectangle on the Recent Documents area to multiselect, like in the Finder
• Layers have Cut/Copy/Paste added to their context menu
Fixed:
• Possible crash when you get two main windows and close the first main window, and fixed a situation that would erroneously spawn a second main window
• Copying a Type layer was failing to override the last copied pixel content
1.7.5 Oct 13
New:
• Motion Blur filter
• You can now rotate while cropping with the crop tool
Changed:
• Squircle shape is now a more general "Superellipse" shape. A superellipse of power 4 is a squircle.
• Placing the cursor on type layers now favors the selected layer, making it easier to edit text that's covered by other text
Fixed:
• Some of the Command shortcuts weren't working when the keyboard mode is set to "Dvorak - QWERTY ⌘" mode. Thanks to u/cgocrht for the report.
1.7.4 Sep 30
Changed:
• You can hold space to translate the gradient line while you're dragging it, like you can with any box you'd drag
• The External Services tool was removed
• When making a selection by hue, you can double-click the slider to reset it
• Command+J to duplicate the layer now respects the selection. Related: Shift+Command+J cuts the selection and places it in a new layer. See the new commands under the Layer menu.
• With crop tool, Shift was already constraining to the original aspect ratio. Now we add Shift+Option to constrain to a square.
• When using the Move tool in Autoselect mode, you can hold Shift to grow the set of selected layers
Fixed:
• Adjustments now work on all-black layer masks
1.7.3 Sep 23
Changed:
• You can now apply up to 10 drop shadow styles on the same layer
• Typography frames and crop rectangles now snap to guides
Fixed:
• Click-through no longer reaches to the canvas, which could have caused unwanted gradient fills and paint dabs when activating the window
• Click-through wasn't working on color swatches, so trying to load a swatch into an active color picker window was requiring two clicks
• Various premultiplied alpha fixes, which could cause dark fringes on soft edged shapes
1.7.2 Sep 20
New:
• "Add Noise" filter
• "Extrude" option on the Drop Shadow layer style — create block shadows
• Pixel layers get a "Resampling" option in their properties, letting you do Nearest Neighbor for resizing hard-edged pixel art
Changed:
• Inverted the tool icons in dark mode
• Cut and Copy of selected pixels now shows a warning message if no opaque pixels were available to copy
• New app icon
• Merging down into a layer with styles on it keeps those styles unrasterized regardless of the top layer's type, unless the top layer also has styles on it
Fixed:
• Pasting pixels from another document now places at the new document's center
• Possible crashing when pasting grayscale clipboard content into a color document
• New layer masks could have a wrongly-shaped thumbnail
1.7.1 Sep 18
New:
• Shape layers: Rectangle, Ellipse, Squircle, Polygon and Star. Shortcut key is U.
• Skew transformation. Hold Command when using the Move or Free Transform tools and the edge control points will turn green; drag those sideways to skew. Or you can type in a number in the Free Transform text box.
• Folders can now have Layer Styles, allowing you easily place the same effect on many small layers
• Image > Transform > Flip Horizontal/Vertical
Changed:
• Move tool's Autoselect feature now expands the selected layer's parent folder(s)
• Default layer thumbnail size dropped from 32pt to 28pt
• Drag and drop from Finder now adds the dropped item as a new layer if there's already a document open. You can open as a separate document by dropping over the document tabs area.
Fixed:
• Performance improvement when dragging out new colors in the color picker
• The logical blend modes (Clear, Clip, Stencil) weren't properly applying to Layer Style rendering
1.7.0 Sep 15
Changed:
• Type layers can now scale non-proportionally and even be flipped, just like pixel layers, all while maintaining their editability. Just hold Shift to unconstrain while dragging a corner.
• File > Place now just places at 100% size instead of offering a resize UI. Easily resize after placing with Command+T.
• Move/Free Transform tool performance optimizations. It should feel much smoother now when moving, scaling or rotating many selected layers. (Just a reminder: You can select multiple layers with Shift+click or Command+click.)
Fixed:
• Vertically scaling type layers that have kerned pairs was scaling that kerning, causing the overall width to change
• Rotating a document was mispositioning center- and right-aligned type
• The hit testing used with the Move tool's "autoselect" mode wasn't respecting layer masks on type layers
1.6.2 Sep 10
New:
• Minimum and Maximum filters under "Filter > Other". These are typically used in masks to get rid of the white fringe when masking out a white background.
Changed:
• Full-sized sliders now have "double-click knob to reset" behavior, like the mini ones
• Halftone filter gains a "Transparent background" option to fill only the foreground ink color
• New "Open Document" button right on the welcome screen, no need to go through the menus to open something anymore
• Improved drag and drop from the Finder. No more goofy dashed line drops zones – now just drop anywhere to open as separate documents, or drop on the layers panel to open as layers in an existing document.
• Improved the dark mode colors in the status bar and layers panel
Fixed:
• Crashing bug when undoing after using any of the blur filters
1.6.1 Sep 9
New:
• Quick Select tool. Make a selection easily by painting rough brush strokes that snap to nearby edges.
• The "Photo Adjust" adjustment layer. Make basic photo editing adjustments non-destructively, including color temperature, exposure, shadows/highlights and vibrancy.
• The "Black and White" adjustment layer. Convert a color image to black and white, choosing how much each color channel contributes.
• Threshold adjustment layer
• Added "Layer Mask > From Alpha" to extract the alpha channel of a pixel layer into a mask, where you can edit it, then optionally bake it back in with "Layer Mask > Apply".
Changed:
• Resizable Properties panel
• Double-click most slider knobs to reset them to default (in addition to the label)
• Added "Duplicate" to the document tab's context menu
• The Marquee tool now shows the coordinates and dimensions of the selection, and allows you to edit them for precise selections
• When you position a Guide it shows the appropriate-axis coordinate in the status bar
• Cycling through the Marquee slot's 4 tools now skips "Row Select" and "Column Select" which are less commonly used. (Cycle using Shift+M or double-tap the M, which works with any of the tool slot's respective shortcuts.)
• Cycle through the tools in whichever slot you have selected with Shift+Shift.
• When dragging an existing selection around, Shift now constrains the movement horizontal or vertical
Fixed:
• The Export quality preview was all messed up with grayscale images
• Pasting into a mask was placing it centered instead of matching the coordinates you cut from
• Pencil dabs were erroneously spaced apart when using larger than 1px brushes
1.6.0 Sep 5
Changed:
• Added Command+G keyboard shortcut to group layers
• Improved dark mode colors. Now even darker!
• When you first open a document it fits the viewport instead of snapping to a discrete zoom level. Get back to this view at any time with Command+0.
• Improved usability with the "click to select all" input boxes. Now subsequent clicks place the cursor instead of repeatedly selecting all.
• The color picker's hex output field now auto-selects when you click it, making it easier to get your color values out.
• Free transform's numeric inputs now auto-select when you click them, making it easier to replace their values by keyboard.
• When you update a Free Transform's numeric input value and hit Enter, it now applies it _and_ it commits all pending transforms. To apply and _not_ commit you can tab away or click outside.
• More tips and tip videos, and gave tips a keyboard shortcut of Command+/ for easier access.
Fixed:
• Pairwise kerning was getting dropped when you duplicated a type layer
• Free transform got into a bad state when dragging a label while you had keyboard focus in the associated input field
1.5.4 Aug 28
New:
• Tips window with helpful tips and tricks you can page through
• Rounding out the blend modes with 10 more of the classic ones, plus the blend mode menu is arranged in two columns now
Changed:
• Added a zoom slider to the status bar
Fixed:
• After a "Merge down" the layer thumbnail would stop updating
1.5.3 Aug 25
New:
• Added all the contrast blend modes: Soft Light, Hard Light, Vivid Light, Linear Light, Pin Light, and Hard Mix
• Pass Through blend mode for folders
• High Pass filter
• There's a shortcut to the most recently used filter at the top of the Filter menu, also accessible with ctrl-cmd-F.
Changed:
• Option-clicking the Layer Mask button creates an inverted layer mask
• Layer cut/copy/paste now works across documents
• You can cmd-click recent documents to select multiple for opening
Fixed:
• Magic wand and paint bucket tools weren't extending out to the full document edge when a pixel layer has transparent margins. Related: Paint bucket tool wasn't working at all on a fully transparent layer.
• Magic wand tool now works correctly on a Type layer. Previously it silently fell back to "Sample all layers" mode.
• Improved memory usage in the undo/redo stack. Now small brush strokes and filters applied to small selected areas use far less memory.
1.5.2 Aug 14
Fixed:
• The Export dialog was showing the first document's preview image even after switching to another document
1.5.1 Aug 12
This release moves away from the "crippled but use forever" model to a "100% functional but with a time-limited trial" model. This means that after this upgrade, non-paid users will only have 14 days to be able to use the app until it requires purchase to keep working. The upside is trial users get all the functionality including Export as PNG and JPEG and any other supported format.
New:
• Enhanced File > Export dialog that includes a quality preview on the main canvas and a navigator view to pan and zoom
Fixed:
• The Curves adjustment was double-applying the RGB curve on top of the selected channel curve
• You could delete the last root node if it was a folder node, leaving you with no layers
• The checkerboard background was fixed in screen coordinates instead of scrolling with the document
• Performance issue with drag-through on the SliderDropdown control that's used everywhere, such as for opacity and brush size
1.5.0 Aug 12
New:
• Dark mode
• Multiple stroke effects on the same layer
Changed:
• Open dialog now allows HEIF, BMP and AVIF. That was just an oversight.
• Grain interpolation is now available in the Gradient Overlay effect and in the Stroke effect's gradient fill
• Type tool picks up the foreground color when you switch into it, like other tools do
• Poly Lasso gains shift key to constrain functionality, which constrains to 90 or 45 degree angles
• Eraser gains an "antialias" checkbox, so you can erase in hard-edged pencil style
• New alpha channels start out hidden
• The text insertion caret now hides while you scrub the kerning controls
• Merging down onto a layer with layer styles preserves those styles instead of rasterizing them. The top layer still rasterizes its styles.
• Curves adjustment moved from cmd-M to shift-cmd-M so you can still use cmd-M for minimize
Fixed:
• Sampling color with the eyedropper wouldn't update the color picker's hex value if that text box was in focus (thanks joelstu for reporting)
• If you have the color picker open and targeted at something specific (like type color, adjustment layer color, etc) and you click the foreground swatch, it now reliably leaves the previous targeting in place and just snaps the picker to the foreground color
• Sizing the pencil tool with the slider was causing fractional pixel sizes, which led to gappiness while dragging or shift-connecting lines
• Attempting to open an adjustment window via keyboard shortcut when an adjustment window was already open would break the future use of those shortcuts, at least until you activated the Image menu.
1.4.3 Aug 7
New:
• Image > Adjustments > Posterize
• Filter > Blur > Surface Blur
• Filter > Sketch > Halftone Pattern (this replaces the old Filter > Pixelate > Monochrome Halftone and is much more configurable, including dots, lines and concentric circles, plus it picks up the foreground/background colors)
Changed:
• Solid Fill and Gradient Fill adjustment layers now have a Rasterize option in their context menu
• Numpad plus and minus keys now zoom in and out without a Command modifier
• The Colorize filter gains YIQ color mode, sometimes useful for the lighter hues such as yellow and teals
Fixed:
• Apply Layer Mask on an overflowing pixel layer was putting the result in the wrong location
• Merge Down wasn't working when the bottom layer was fully transparent
• Merge Down was leaving the bottom layer hidden even when the top layer had visible content
• Fixed some performance issues in the gradient adjustment layer while scrubbing the angle or the color stops
• Rasterizing a type layer was discarding its layer styles
1.4.2 Jul 29
New:
• Conic gradients
Changed:
• The Gradient Fill adjustment layer was missing the "Reverse" checkbox
• Gradient editor UI overhaul, now you can single click to open the color picker among other changes
• Save a gradient to the swatches panel with right clicking or drag-and-drop
• Apply a gradient just by clicking the swatch – it applies to whatever is using gradients
Fixed:
• Rotating a center or left aligned type layer was shifting it unexpectedly
• Gradient overlay effect was spanning the wrong range on center or left align type layers
• Gradient overlay effect wasn't moving with a type layer as you dragged with the Move tool
• Performance issue when dragging color stops around in the gradient overlay UI
1.4.1 Jul 28
This release is all about typography.
New:
• Type layers now have character and paragraph style options in the Properties panel
• Character styles are beefed up to include tracking, kerning and horizontal/vertical scaling
• Paragraph styles include alignment, justification and leading. Enter makes a new paragraph and Shift+Enter makes a linebreak within a paragraph.
• You can also toggle the text frame on and off now
Changed:
• Font color initializes itself from the foreground color when you activate the Type tool, at least until you set it directly from the Type tool options, after which they're decoupled
• Reduced the default font size to 36pt, but also added a preference for default font size in the Settings window
• You can now drag multiple files onto the "No document" view and open them all as layers (in a new document created for you)
1.4.0 Jul 22
Changed:
• Move/Free Transform: Now defaults to aspect ratio constrained, and shift key frees it to be non-proportional
Fixed:
• Crashing bug when resizing a placed image via File > Place
• Pencil tool had a regression in 1.3 that made it not fill pixels with 100% hardness
• Stale transform box when solo selecting the first layer of a multiple layer set
• Marquee tool shifted its starting anchor by 1px when dragging the selection off the document edge
• Drag and drop of native .mojavepaint files from the Finder now works
• Drag and drop of multiple images "placed as layer in current document" now works, they just get placed at 100% scale
1.3.2 Jul 14
New:
• Brush and pencil tools get "Behind" blend mode
Changed:
• Masks use black as a neutral color now, so backspace to clear selected pixels turns them black (transparent)
• Snapping snaps to document edges as well as explicit guide lines
Fixed:
• Edit > Transform > Rotate on a layer with a mask was mispositioning the mask
• Memory wasn't being released when closing a document
• If you had a non-rectangle marquee selected, new documents were still using the rectangle one
• The presence of alpha channels or layer styles now prevents you from saving in place as a flat file format
1.3.1 Jul 13
New:
• Smart Folders. Similar to Smart Objects except you can view and edit the contents inline, no jumping to another document. Create with the "Group with Smart Folder" command (Control+Command+G).
• Use "Open from Photos" to open directly from your Photos library
• The threshold adjustment lets you threshold the alpha channel, for pixelating things
Changed:
• Placing large images in an existing document now positions them at the top left corner instead of centered (which might have put the corners way out of view)
• Use the Enter key to open all selected recent documents on the welcome screen
Fixed:
• The brush resize gesture (Control+Option+drag) now maxes out at 5000px (the typeable max) instead of 500px (the slider max)
• Click Through works on the layer panel area when an accessory window has focus, so you can e.g. hide and show layers with a single click after opening a filter window
• Moving a layer while a single color channel is selected under Channel correctly pulls the channels apart, for a chromatic aberration effect
• Float error accumulation could cause slight color variations when using a soft brush, i.e. you painted solid red and got a mix of #FF0000 and #FE0000 colors on the canvas
more Version 1.9.0 4h ago
Data Not Collected The developer does not collect any data from this app.