Skip to content

Releases: ishanmalu/daisy

Daisy 0.9.0

Choose a tag to compare

@ishanmalu ishanmalu released this 17 Sep 14:42

Several files into one PDF.

Drop three photos, pick PDF, and Daisy now asks what you meant: one PDF of three pages, or three separate PDFs. It always quietly assumed the second — combining existed only under ⌥ as Merge PDF, which isn't where anyone looks for it. Works for any number of files; 40 photos into a 40-page PDF behaves the same.

Pages come out in filename order (img2 before img10), because a multi-file drop arrives in whatever order the source app hands over — for Finder that's selection order, which is invisible and not something you can control.

It only asks when both readings are real. A single file never asks. A set that can only be combined — a pile of PDFs, or images mixed with PDFs, where PDF→PDF isn't a conversion — merges straight away. Those sets also now show a PDF petal at all, which they couldn't before.

Universal, macOS 14+. Ad-hoc signed, so first launch needs right-click → Open. 87 self-checks pass.

Daisy 0.8.1

Choose a tag to compare

@ishanmalu ishanmalu released this 16 Sep 05:28

Fixed: the wheel kept re-presenting the file you just converted.

Summoning the wheel loaded whatever file URL was on the clipboard. Copying a file is how most people get one in, so every summon after a conversion put the same file straight back in the middle — it looked like the wheel never let go of it. (The reset after a conversion was working the whole time; the wheel was refilling itself afterwards.)

It now always opens at ground zero: drop a file, click to choose, or paste. Paste is still one keystroke — it just has to be asked for, and the empty ring now says ⌘V paste.

Universal, macOS 14+. Ad-hoc signed, so first launch needs right-click → Open. 80 self-checks pass.

Daisy 0.8.0

Choose a tag to compare

@ishanmalu ishanmalu released this 12 Sep 12:25

Quit works again. Every menu item had been pointed at the app delegate in one sweep, Quit included — but its action was NSApplication.terminate(_:), which the delegate doesn't implement, and AppKit silently greys out any item whose target can't perform its action. --selftest now asserts every menu item can fire.

Updating from Settings. The current version sits at the top of Settings with a button that checks GitHub Releases and turns into Update when there's something newer, plus an opt-in daily check. Also in the menu bar as Check for Updates….

Nothing installs without two independent checks: the download must match the SHA-256 published with the release (a release without one is refused, not trusted), and the app inside must satisfy the running app's own code-signing requirement. Because these builds are ad-hoc signed, that second check can never pass — the requirement pins one exact code hash — so Daisy verifies the image and reveals it in Finder for you to install by hand. Automatic in-place updates begin working the day Daisy is signed with a Developer ID.

This is the first release to publish SHA256SUMS.txt; earlier ones didn't, so the updater would have refused those downloads by design.

Universal, macOS 14+. Ad-hoc signed, so first launch needs right-click → Open. 80 self-checks pass.

Daisy 0.6.1

Choose a tag to compare

@ishanmalu ishanmalu released this 09 Sep 22:59

The wheel blooms open — a ring of accent light flares past the rim and burns off as the disc scales up. The site blooms on scroll to match.

Also a full contrast pass: every text node on the site now clears WCAG AA. The muted grey was failing at 3.31:1 across captions, table headers and code comments, and the download button's subtitle was 3.66:1 dark-on-yellow.

Universal, macOS 14+. Ad-hoc signed, so first launch needs right-click → Open. 63 self-checks pass.

Daisy 0.6.0

Choose a tag to compare

@ishanmalu ishanmalu released this 09 Sep 22:46

Kuori is now Daisy. The old name was a Finnish pun on peel, left over from being a Tangerine alternative. The wheel stopped being citrus a long time ago — it's a ring of petals around a centre — so the name now describes the thing itself.

White petals, yellow centre. The petals are near-opaque on purpose: a translucent white over a dark desktop turns grey, and grey petals aren't a daisy. The glass shows in the gaps between them and around the rim instead. Icon and menu-bar glyph are drawn from the wheel's own geometry.

Also in this release (0.5.0 and 0.6.0 together):

  • Click to choose. The empty ring is a button — click it, press ↵, or ⌘O and Finder's picker opens. New Convert File… menu-bar item. You no longer have to know about Shift-drag to use it.
  • Folder drops read both ways. Drop a folder of photos and you get image targets for everything inside and ZIP/TAR/7Z for the folder itself, on the same wheel.
  • Liquid glass. A real behind-window blur clipped to the disc, with a lit top rim and a shaded underside. It rises into place instead of blinking on.

⚠️ Upgrading from Kuori: this is a new bundle id and a new support folder. Your presets, recipes and watch folders stay behind in ~/Library/Application Support/Kuori/ — copy the JSON files across to .../Daisy/ if you had any. The old app won't be replaced automatically; drag it to the Trash.

Universal (arm64 + x86_64), macOS 14+. Ad-hoc signed, so first launch needs right-click → Open. 63 self-checks pass in the shipped binary.

Kuori 0.4.0

Choose a tag to compare

@ishanmalu ishanmalu released this 09 Sep 21:48

Licence: Kuori is now under PolyForm Noncommercial 1.0.0 — free to use, read, modify and share for anything that isn't commercial. Commercial use is a conversation.

The download is GPL-free and 9.3 MB. ffmpeg, pandoc, potrace and libvips are no longer bundled (libvips's bottle hard-links libfftw3 and libimagequant, both GPL). Kuori still finds all of them on PATH — only what's redistributed changed:

brew install ffmpeg pandoc potrace   # video, audio, documents, SVG trace

Everything else is native: ImageIO, PDFKit and Vision cover images, PDFs, OCR and background removal. WebP — the one raster format macOS decodes but won't encode — now goes through cwebp (BSD-3), with quality, resize, EXIF preservation and --strip unchanged.

Universal (arm64 + x86_64), macOS 14+. Ad-hoc signed, so the first launch needs right-click → Open. 54 self-checks pass in the shipped binary.

Kuori 0.3.1 — Universal

Choose a tag to compare

@ishanmalu ishanmalu released this 09 Sep 21:14

Now a universal binary — runs natively on Apple Silicon and Intel.

Download Kuori-0.3.1.dmg, drag to Applications. Ad-hoc signed, so the first
launch needs right-click → Open. macOS 14 or later.

Intel, honestly

The nine bundled engines are arm64 only — Homebrew has stopped publishing
x86_64 macOS bottles for pandoc, qpdf and sevenzip, so a fully bundled
universal build can't be put together from it.

Kuori now reads each engine's Mach-O header and skips any it can't run, so on
Intel it never tries to launch an arm64 binary. Everything native still
works with nothing installed:

  • images through ImageIO — jpg, png, heic, avif, tiff, gif, bmp
  • images ↔ PDF, PDF → pages, PDF → text, merge, split, compress
  • OCR to a searchable PDF, and background removal (Vision)
  • resize, crop, compress, strip metadata
  • folder ↔ zip / tar / tar.gz via the system bsdtar

For video, audio, WebP, SVG and documents on Intel:

brew install ffmpeg vips resvg potrace unar qpdf sevenzip pandoc

Also

  • EngineLocator applies the architecture check to all three lookup tiers
    (bundle → Application Support → PATH), and searches /usr/local/bin as well
    as /opt/homebrew/bin.
  • 54 self-test checks, verified on both slices.
SHA-256  e800aa6df7c9b33d1d4b456d87a134543f45897f6afeaf650877678d7297ba3b

Kuori 0.3.0

Choose a tag to compare

@ishanmalu ishanmalu released this 09 Sep 20:52

The converter that comes to you. Hold Shift, drag a file, drop it on a petal.

Install

Download Kuori-0.3.0.dmg, drag Kuori to Applications. It's ad-hoc signed, so the
first launch needs right-click → Open to get past Gatekeeper.

macOS 14 or later, Apple Silicon.

What's in it

  • Convert — images (jpg png webp heic avif tiff bmp gif, SVG both ways), audio
    (mp3 m4a aac wav flac ogg opus aiff), video (mp4 mov mkv webm avi m4v, → gif,
    → audio), documents (md html rtf txt epub docx odt, Office → PDF), PDF ↔ images,
    and folder ↔ zip / tar / tar.gz / 7z.
  • Tools (hold ⌥) — resize, compress, crop to aspect, trim, strip metadata,
    merge and split PDFs, OCR to a searchable PDF and background removal,
    both on macOS Vision.
  • Recipes — saved multi-step pipelines, and watch folders that run them
    automatically on anything you drop in.
  • CLI — kuori convert, tool, recipe, watch, formats, over the same engine.

Summoning it

  • Hold Shift and drag a file out of Finder — the wheel appears in the middle.
  • ⌥⇧V anywhere.
  • Menu bar, or Finder → Services → "Convert with Kuori…".

Notes

  • Nine conversion engines (ffmpeg, libvips, pandoc, qpdf, resvg, potrace, 7-Zip,
    unar, ffprobe) are bundled with ~86 relocated dylibs, so it runs with nothing
    on your PATH. That's why the download is 101 MB.
  • Creating RAR archives isn't supported — there's no licensable RAR encoder.
    Extraction works. Use ZIP or 7z.
  • LibreOffice is bring-your-own: install it under /Applications and the
    high-fidelity Office ↔ PDF routes light up.
  • Nothing is uploaded. There is no network code in the conversion path.
SHA-256  a72d7dbe4910ce83012212835d6dec7287cc58ae9049b1485c4c276af98187d4