Novetats

Tots els canvis que publico a macOSicons: l'editor, l'API i el mateix web.

October 2026

EditorImproved

Improve path point targeting and precise insertion

Path anchors and handles keep a fixed click size at any zoom, and ⌘ or Shift places a new point under the pointer instead of at the edge middle.

Anchor and handle hit targets were sized in canvas units, so they shrank as you zoomed out and ballooned as you zoomed in. They are now a fixed screen size, matching how the knobs are drawn.

On an open edge, a click adds a point at the edge middle by default. Holding ⌘ or Shift puts it under the pointer instead, and the preview follows the modifier without needing another mouse move.

EditorNew

Select layers in view-only documents

Community previews and view-only links let you pick layers on the canvas and in the layer panel without changing the document.

Opening a shared or community document used to show the artboard with nothing to click. A click now selects the layer under the pointer (or the row in the layer panel); shift or ⌘ adds to the selection. Drags still pan, and delete, rename, reorder and every other edit stay off.

EditorNew

Add low-resolution cleanup to vectorize

Vectorize can upscale a small image, blur away pixel steps and re-sharpen the edges before tracing.

Tracing a small raster left stair-stepped edges and soft shadows as opaque rings. The new low-resolution cleanup (on by default for images under 1024px) upscales the input, blurs the pixel steps away and steepens the edges again, with blur and contrast sliders while it runs.

Transparent pixels are snapped at 50% alpha so glows and shadows trace as a single edge rather than a stack of rings, and the applied layer keeps the traced size instead of the source size.

EditorNew

Suggest icon colours for every background kind

Suggest-from-icon offers a palette, shades and colour harmonies, and can fill a solid, gradient or blob background from the result.

The picker next to the background controls used to offer a flat list of swatches for a solid fill. It now derives shades and analogous, complementary or triadic colours from the most prominent hue in the artwork, and those colours apply to gradients and blobs as well — one click fills the gradient stops or recolours the blobs.

Harmonies build on a colour that actually has a hue, so an icon on a black tile still gets a useful complement instead of a grey no-op.

September 2026

SearchFixed

Stop spending personal API quota on website searches

Searches and app pages on the site no longer count against your personal API key.

If you were signed in with a personal API key, every search on the homepage and every app page was billed against that key. After the quota ran out, the site search would return 429 even though you were only browsing. Those requests now always use the site’s internal key, so your quota is only spent on calls you make to the public API yourself.

APIFixed

Fix overflowing labels in the API endpoint list

Long endpoint labels in the public API reference no longer overflow their accordion rows.

Accordion labels in the API endpoint list can shrink instead of spilling out of their row. The OpenAPI 3.0 spec link also opens as a proper external link.

EditorNew

Add a paper sheet between folder faces

Folders can show a paper sheet peeking out of the pocket, with visibility and colour set from the Document panel.

Folder boards now include a locked paper layer between the folder base and the layers inside the folder. Turn it on in the Document panel to show the folder as non-empty, and set its fill colour there. It does not appear in the layer panel. Folders saved before this change get an empty paper so the control is always available.

APIImproved

Document image API errors and response headers

The API reference covers 422 conversion failures, 503 capacity retries, and the headers that report sizes.

Playground samples and the OpenAPI schemas now describe when the image endpoints return 422 with per-image reasons, how to handle 503 and Retry-After, and which headers report input and output bytes. That matches the behavior the endpoints already had, so clients can handle failures without reading the source.

IconsFixed

Hide the savings ratio for multi-format toolkit runs

The compression badge no longer claims a saving when one input was written to several formats.

Totals count each input once but every output, so with several formats the ratio is not a saving. The badge only appears when the run produced a single format, and image dimensions come from the actual output instead of being guessed.

IconsImproved

List toolkit batch failures per file

When a multi-image toolkit run fails, the panel says which image and format failed and why.

A batch run that could not convert every input used to collapse into one message. The panel now lists each failure with its source name and target format. Images over the size limit are skipped when you pick files, and a batch that is too large to run shows that limit instead of failing after the request.

EditorImproved

Reset reflection to the active mode's defaults

Reflection settings reset to the defaults for the mode you are in, not one global set.

2D and folder documents no longer share a single reflection baseline. Reset, a new document, and the modified-state check all use the defaults for the current mode, so resetting reflection in an icon document no longer pulls in folder-oriented values or the other way around.

EditorNew

Drag multi-selected layers as one block

Dragging one layer of a multi-selection in the layers panel moves the whole selection together.

When several layers are selected, dragging any one of them now carries the rest of the selection with it and lands them as one contiguous block, keeping their relative order. A drop can also move the block into a folder or into the other section in a single history step, so reordering a group no longer means moving layers one at a time.

APIImproved

Add Python examples to the API playground

Endpoint snippets in the API dashboard now include Python next to cURL and JavaScript.

Each endpoint example gets a Python tab alongside the existing cURL and JavaScript snippets. The copy button copies whichever tab is open.

APINew

Add image convert and compress endpoints to the public API

POST /api/v1/images/convert and /api/v1/images/compress turn batches of images into other formats or smaller files of the same format.

Both endpoints accept up to 20 images per request and return size figures and per-image errors alongside the outputs. Convert covers PNG, JPEG, WebP, AVIF, GIF, TIFF, BMP, ICO, ICNS and HEIC input; compress keeps each image’s format and can leave the original alone when the result would be larger. Presets (balanced, small, fast, lossless) set quality and effort defaults, with quality, max dimensions and metadata retention available as overrides. Usage is metered as one conversion per output image, so converting one file to three formats counts as three. The API dashboard has a playground form for both endpoints.

EditorNew

Add batch convert and compress to the icon toolkit

Drop up to 20 images into convert or compress and get per-file size savings plus a ZIP download.

Convert and compress in the toolkit now take multiple images at once. Each result shows the output format, dimensions, and how much smaller it got. Download files one at a time, or grab everything as a ZIP. Picking output formats uses chips so you can convert one batch to several formats in a single run.

SiteImproved

Soften the hero sign-in button

The sign-in button on the homepage uses a softer visual treatment.

The sign-in button in the hero section now uses the soft button variant, so it sits more quietly next to the main call to action instead of competing with it.

EditorFixed

Show inset shadows on glass and emboss materials

Inner shadows now render on glass and emboss layers, composited under their highlights, like they already did on clay and flat.

Adding an inset shadow to a layer set to glass or emboss previously had no visible effect, since neither material draws a flat lit surface for a baked shadow to sit on. Both now take their inset shadows from a dedicated pass and composite it beneath their own lighting.

EditorFixed

Fix shadows and glows rendering too soft on high-resolution exports

Drop shadows, glows, and sticker borders no longer come out roughly twice as blurred and offset on retina exports as they look in the editor.

A pixel-density factor was being applied to blur and offset a second time on top of a render pass that already accounted for it, so anything exported at a high pixel density — shadows, glows, and sticker die-cut borders — landed noticeably softer and further offset than what was shown while editing. Exports now match the canvas at every density.

EditorImproved

Share gradient-stop selection between the canvas and the inspector

Selecting a gradient stop on the canvas or in the inspector's stops list now highlights the same stop in both places.

Clicking a stop’s handle on the canvas highlights it in the inspector’s stops popover, and vice versa. With the stops popover open, clicking anywhere along the gradient line on the canvas now adds a new stop there, matching the color the gradient already shows at that point.

EditorNew

Sync workspace changes live across tabs and devices

A document, folder, or project created, renamed, moved, trashed, or deleted elsewhere now appears in your workspace list right away.

Your documents list used to catch up on other devices’ or tabs’ work only on the next focus or reload. It now listens for those changes as they happen and updates in place.

EditorNew

Add three starter templates to the New document picker

New document now offers App Store, WebBites, and macOSicons starter templates, shown as real renders instead of schematic previews.

The New document dialog’s icon-template row is now built from three full project files rather than a handful of programmatically styled layers. Each card shows a real thumbnail rendered from the actual document, so what you pick is what you get on the canvas.

EditorImproved

Disable inapplicable vectorize sliders instead of hiding them

Vectorize options that do not apply stay visible but disabled, so the dialog height stays put.

In the vectorize dialog, colour sliders that do not apply to black & white, and curve sliders that do not apply to pixel mode, stay on screen but greyed out. Switching presets no longer makes the dialog jump under the pointer.

EditorNew

Add saturation control for derived shadows

Derived shadows have a saturation slider so their colour can be tuned apart from the layer fill.

Shadows that take their colour from the layer fill now have a saturation slider next to darkness. You can desaturate a derived shadow without changing the fill colour or switching the shadow to a fixed colour.

EditorImproved

Import SVGs at a consistent size as the matching layer type

SVGs import at a reliable size, and single-colour files become editable silhouettes while multi-colour files stay as images.

Imported SVGs now keep a stable intrinsic size (2048 on the long side) so they stay sharp on retina instead of rasterising blurry. Markup copied out of a web page gets the SVG namespace it is missing, and a missing viewBox is synthesised from width/height so the artwork scales correctly.

A single-colour SVG becomes an editable svg silhouette in that colour. Anything with gradients, shadows, or several fills becomes an image layer so it keeps its look. There is also an Import file… item in the add-layer menu.

EditorImproved

Merge Path and Stroke into one inspector section

Path editing and stroke controls now share one Path & Stroke section in the inspector.

Path point editing and stroke styling used to live in two separate sections that you had to jump between while working on the same contour. They are now a single Path & Stroke section: point mode, join, and edit-points at the top, stroke style and width below, weave controls when two shapes overlap. The stroke fields still drive the modified dot and copy/paste for the section.

EditorNew

Open shared documents without signing in

A share link now shows the document read-only to visitors who are not signed in.

Signed-out visitors opening a share link get a read-only view of the document. The link token is the whole credential — no session is forwarded and none is required.

SiteImproved

Rework the editor landing page

The editor landing now uses the site's own hero, a materials switcher and real panel captures instead of the previous feature tour.

I rebuilt the page around what the editor actually looks like: the same hero treatment as the home page, then the materials switcher with the inspector’s own values, real panel screenshots, and the API toolkit. The scroll reveals, the gradient headline and the custom feature cards are gone; the page sits on the app’s usual background and type.

EditorNew

Add live vectorization dialog for image layers

Convert an image layer to SVG paths in a dialog that re-traces as you change settings, before anything is applied.

Vectorize now opens a dialog with a live preview instead of applying a fixed trace. Presets cover poster, photo and black-and-white, and you can tune colours, speckle filtering and curve fitting the same way vtracer’s own app does. Tracing runs in the browser, so the preview matches the result and nothing is written to the document until you apply it. The traced colours land as one layer each, grouped above the image, and undo takes the whole conversion back in one step.

EditorImproved

Refresh the Share and Share to Community modals

Both sharing modals got a simpler, more compact visual treatment.

Removed the icon badges and decorative icons from the Share modal and the Share to Community modal, switched the name/description/tag inputs to a subtler style, and tightened button sizing throughout. The panels now use a translucent background consistent with the rest of the editor’s floating UI.

EditorNew

Find deleted documents in their own Deleted tab

The workspace sidebar now has a dedicated Deleted tab that lists every trashed document, instead of a collapsible section scoped to the current project or folder.

Previously, deleted documents only showed up as a collapsible list inside whatever project or folder view was open, and Empty Trash only cleared that scope. Clicking Deleted in the sidebar now opens a full tab (/editor/docs?tab=deleted) listing everything in the trash across all projects, with restore and delete-forever actions on each item and a single Empty Trash button that clears all of it.

EditorNew

Translate the editor features page into Spanish, Catalan, and Chinese

The full feature catalog at /editor/features now reads in Spanish, Catalan, and Chinese, not just English.

Every tool, how-to, and FAQ entry on the editor’s public feature list previously only existed in English. The page now loads a translated copy of the catalog for es/ca/zh visitors, matching the site’s language switcher.

EditorImproved

Redesign the editor landing page

The /editor marketing page has a new hero, a browser-framed live preview, and a reworked feature walkthrough.

The page that introduces the web editor now leads with a centered headline, frames the editor screenshot inside a browser-style window, and lays out the materials/tour/toolkit sections as alternating feature cards instead of a scroll-driven sidebar tour.

AppsImproved

Redesign the app details panel with a screenshot viewer

Opening an app's icon folder now shows a persistent sidebar with the app's description, tags, and a full-size screenshot viewer.

The app modal used to show a small info card above the icon grid and open screenshots in a new browser tab. It now has a dedicated sidebar (icon, developer, tag-formatted description, screenshots) that stays visible while you scroll the icons, and clicking a screenshot opens it in an in-page viewer instead of navigating away.

SiteNew

Add a light, dark, and system theme switcher

Settings has a new Appearance control to pin the site to light or dark mode, or follow your system setting.

Previously the site only followed your OS theme automatically. Settings → Appearance now has a three-way switch (System/Light/Dark) so you can lock in a theme regardless of what your device is set to.

SiteFixed

Fix account password changes

Changing your password in Settings now actually updates it, instead of just showing a fake confirmation.

The password field in Settings → Security looked functional but never talked to the server: it validated nothing and showed a success toast no matter what you typed.

It now checks your current password for real, updates it, and rotates your session behind the scenes, which also signs out any other devices you were logged in on while keeping this one signed in.

EditorImproved

Clarify the weave crossing controls

The weave crossing picker now labels which layer sits on top in plain terms, with a hint on flipping order from the canvas.

Each crossing in the Path inspector’s Weave section used an “Over/Under” dropdown that didn’t say which layer it referred to. It’s now a “top strand” toggle labeled This layer / Other layer, and a hint points out that crossing order can also be flipped directly on the canvas.

EditorFixed

Fix invisible weave crossings on stroke-only paths

Weaving two open or unfilled stroked paths now paints the overlap with the stroke's color or gradient instead of leaving it invisible.

Weave lifts one layer over another at each crossing point, and that lifted piece needs a paint to render. For a line or unfilled shape, the layer’s own fill was disabled, so the overlap had nothing to draw and vanished.

Stroke-only layers weaving with a partner now hand their stroke color, or stroke gradient, to the crossing overlay, so the woven strand stays visible.

SiteNew

Pay yearly for macOSicons+ and save 25%

The plan picker now has a monthly/yearly toggle so you can switch to yearly billing for a discount before checkout.

Any plan that supports yearly billing now shows a monthly/yearly switch above the offer cards, with a badge highlighting the 25% saving on the yearly price. The price and per-period label update immediately, and the toggle carries through to checkout wherever plans are offered: account settings, the remove-ads prompt, the editor AI panel, version history upgrade prompts, and the workspace project-limit modal.

SiteFixed

Fix reply focus and thread interactions in messages

Replying or cancelling a reply now returns focus to the message box, Escape no longer closes a thread while a menu is open, and messages can be copied from their context menu.

Starting or cancelling a reply now focuses the message box automatically instead of leaving you to click into it. Pressing Escape while a message’s menu or a dialog is open closes that first instead of jumping out of the thread, and a Copy option was added to each message’s context menu. Background messages outside an open thread are also excluded from keyboard and screen-reader navigation, not just dimmed visually.

SiteImproved

Manage your subscription through the Stripe billing portal

Billing settings now include a 'Manage in Stripe' button for subscription changes, plus a full charge history alongside invoices.

The Billing section (in both the account settings modal and the developers area) now shows your plan and subscription status with a ‘Manage in Stripe’ button that opens Stripe’s own billing portal for changing or cancelling your subscription and payment method. Invoice history is joined by charge history, so past payments are visible in one place without generating an invoice first.

SiteImproved

Redesign the settings modal with a sidebar layout

The settings modal now organizes Account, Appearance, Billing, Sign-In & Security, and Privacy & Data into a sidebar instead of one long scrolling page.

Opening the settings modal (from the header) now shows a left sidebar with five sections instead of a single scrolling column. Each section is scoped to one topic — account details, date format, billing, password/security, and data export or account deletion — so it’s quicker to find the control you want.

SiteFixed

Fix mis-sized reply brackets in message threads

The vertical line connecting a reply to the messages it answers now spans the correct height instead of being thrown off by the conversation's scroll position.

In a message thread, the bracket that visually ties a reply to its parent message could be drawn too short or too long depending on how far you’d scrolled the conversation. It’s now measured correctly and stays the right size regardless of scroll position.

EditorFixed

Fix incorrect plan names in the version history upgrade prompt

The message shown when version history is locked now correctly says to upgrade to Pro or Ultra instead of a plan that no longer exists.

If you’re on the Free plan and try to save a new version once your history fills up, the prompt to upgrade previously mentioned “Plus,” a plan name that isn’t part of the current lineup. It now correctly points to Pro or Ultra, matching every other paywall message on the site.

SiteNew

Add a quick-read summary to the terms, privacy, and API terms pages

Terms, privacy, and API terms pages now open with a short bullet-point summary before the full legal text.

Each legal page (terms, privacy, and the developer API terms) now starts with a short list of the key points, so you get the gist without reading the whole document. The full text is still there underneath it.

SiteFixed

Stop Enter+modifier from submitting rename and search fields

Pressing Enter together with Shift, Ctrl, or Cmd no longer triggers save, search, or rename actions in text fields across the site.

Rename fields (icons, apps, documents, shaders, saved versions), search boxes, and the API playground input treated any Enter keypress as a submit, even with another key held down. Now only a plain Enter commits the field.

EditorFixed

Fix editor toolbar tools overlapping the undo/redo buttons

The vector tools and layout tools no longer overlap the undo/redo/history buttons when both side panels are open and the canvas is narrow.

With both the layers and properties panels open, the canvas column left for the toolbar could be much narrower than the browser window. The tool groups used to size themselves against the window width, so they kept sliding under the undo/redo/history buttons in that situation. They now size themselves against the toolbar’s own width and scroll horizontally instead of overlapping.