Release log

What's new in TinyX

A friendly log of everything we've shipped. Newest at the top.

v2.7.0·20 releases·since v1.0
  1. v2.7.0Latest

    A proper "What's new" page, and a calmer dashboard

    A small, friendly release. There's now a real page for everything we ship, and the upgrade nudge on your dashboard got a lot more polite.

    See everything we've shipped, nicely

    • There's now a proper [What's new](/changelog) page. Every release, newest first, on a clean timeline — plain-English notes, no jargon. It's the same log that used to only exist as a raw text file; now it's actually pleasant to read. The raw version still lives at /changelog.md if you prefer it for tooling or feed readers.

    A gentler upgrade nudge

    • The upgrade prompt on your dashboard is quieter now. It used to be a big, loud button on a card you see every time you sign in. It's now a small, unobtrusive line — still clear, no longer shouting. Same information, far less nagging.
  2. v2.6.0

    Security review + hardening

    We had the platform put through an independent security review (penetration test) and worked through the findings. A range of issues were reviewed and tightened up across the app.

    You may need to sign in again

    • As part of this work we changed how sign-in sessions work under the hood. Existing sessions are ended once when this update goes live, so you'll be asked to log in again the next time you visit. That's expected — just sign in as normal and you're back in.
  3. v2.2.1

    Snappier link creation + a /app shortcut that works

    A small fix-up release. Two papercuts, gone.

    The "Create link" page is fast again

    • Opening Create link used to take about a second before anything showed up — noticeably slower than every other page in the app. It now loads in step with everything else (a few hundred milliseconds) and stays fast on repeat visits. Nothing changed about how the page looks or works; it just stops making you wait.

    Typing /app takes you to your dashboard

    • Going straight to the /app address without the trailing slash used to dead-end on a "this link leads nowhere" page. It now takes you to your dashboard like you'd expect.
  4. v2.1.0

    Faster, smoother, fewer "did it freeze?" moments

    A polish release focused on the small frictions that add up over a day of real use. Pages snap, big uploads stop stalling the page, and bulk actions finally feel like something is happening.

    Pages just load faster

    • Dashboard, account, link creation and file detail now share a tiny per-edge cache for the bits of config that almost never change (your theme, app name, accent colour, tier limits). The first request fetches them; the next forty don't. On a warm session, the dashboard goes from a small handful of database round-trips to almost zero.
    • Landing-page screenshots are WebP now. That cuts the marketing pages from ~3.5 MB of imagery down to ~900 KB. First paint is noticeably quicker, especially on flaky connections.

    Bulk delete shows you what's happening

    • Selecting twenty files and hitting Delete used to leave the browser apparently doing nothing for ten or twenty seconds while the server worked through them. Now a small modal appears with a live counter — "7 / 29 deleted" — and a progress bar. No more wondering whether the tab froze.
    • The progress modal will get reused for other bulk actions over time (think batch ZIP, mass move, etc.).

    Image uploads stay smooth even with 30+ files

    • Generating the small thumbnails for your image library used to happen on the page's main thread. With one or two photos that's invisible; with 29 it caused brief stalls (scrolling stuttered, the progress bar ticked in bursts). That work has moved to background workers — the page stays responsive throughout, and big batches finish a bit quicker on multi-core machines too.

    Public upload links handle duplicates gracefully

    • If you upload photo.jpg to your own library, then a guest uploads photo.jpg to your public upload link, the second one lands as photo (1).jpg instead of failing silently. The same Mac/Dropbox-style auto-rename your own library has had for a while.

    Filter + Select all on the files page

    • Filtering files by a search term (say, looking for everything containing "draft") and then clicking Select all now selects only the matching files, not your entire library. The mistake-class fix: if the filter showed 29 matches across two pages, Select all selects all 29 — not the 200 sitting behind the filter.
  5. v2.0.0

    A dashboard that's actually pleasant to land on

    A big release. The dashboard you see when you sign in has been completely reworked — it now shows you what your shares have actually done this week, where your usage sits against your plan, and what you'd unlock by moving up a tier. Each row makes its own small case. Nothing nags, nothing pop-ups. Plus a handful of upload, link and infrastructure improvements behind the scenes.

    The new dashboard

    • A "this week" strip at the top. See visitors to your links, where they came from, and downloads — a small reminder every login that your shares are doing work.
    • Usage rows that are actually clear. Every quota (links / month, storage, questionnaires, galleries, multi-file links, API keys, webhooks) has its own progress bar and an upgrade hint that reads like English: "(40× more on Pro!)" — clickable, takes you to billing.
    • Max-plan rows show "∞" and a full green bar. A small treat for the people on the top tier.
    • Caps & features grid. File size limit, log retention, encryption, upload links, custom codes, custom logo — laid out in a clean 6-card grid with one consistent design. Tickbox check if you have it, lock icon if you don't.
    • One Upgrade button. Top-right of the card: "Upgrade to Pro — $9/mo →". No competing buttons, no surprise popups.
    • Honest about who we are. A small footer reminds you what you're paying for: end-to-end encryption, zero-knowledge architecture, open-source clients, runs on Cloudflare's edge.

    Multi-file downloads finally work

    • The "Download" button on bulk file lists had a long-standing browser-quirk bug where selecting 18+ files would only download 1 or 2. Fixed properly — every file lands.
    • "Download as ZIP" for any link or selection of files under 100 MB each. A single .zip lands in your downloads, no more chasing 18 separate files across the screen.

    A fairer monthly link quota

    • Deleted links now free up a slot. Previously you'd see "25 / 25 used" even after deleting half of them. The count is now live — you have what you actually have.
    • Abandoned uploads stop eating your storage. If you cancel a multi-gigabyte upload partway through, your remaining storage now reflects reality instead of treating the half-upload as permanent.

    Friendlier limit messages

    • Hit your monthly link cap? You'll see a designed upgrade card with two paths — upgrade to Pro for more headroom, or delete an old link to free a slot. Used to be a red error banner; now it's an actionable moment.
    • Verbose upload progress. "Uploading 5 files, please wait…" / "3 left, keep this tab open" / "Almost there…" — the upload UI tells you what's happening so you don't think the page froze.

    Guest uploads get thumbnails

    If you share an upload link with someone and they upload images, those images now generate thumbnails immediately (just like uploads through your own dashboard). Previously, guest-uploaded images were missing thumbnails until you opened them — pickers and galleries had to stream the full image to make a tile.

    Other small wins

    • "Folder links" renamed to "Multi-file links" everywhere, with a (i) tooltip explaining what they are. The word "folder" was doing too many jobs.
    • Empty states with personality on the create-link picker — a proper card with an icon and a single-button CTA, instead of a thin dashed border with tiny text.

    Nothing about how your files are stored, encrypted, or shared has changed.

  6. v1.19.0

    Steadier uploads, smoother resumes

    Mostly invisible polish on the upload and download flows. If the network hiccupped during a small upload before, you might have been told it failed even though it would have worked on a second try. Now it just quietly tries again. A few other rough edges got smoothed out at the same time.

    • Small uploads now retry too. Big uploads have always recovered from temporary network drops, but small files used to give up after a single failed attempt — frustrating when a quick PDF would fail in the middle of a batch. They now follow the same patient retry pattern as everything else.
    • Consistent units everywhere. Different parts of the app used to disagree slightly on what "100 MB" meant, and progress text used different separator characters. All upload progress displays now use the same units and the same look — no more cosmetic mismatches between the file you're uploading and the totals at the bottom.
    • Resume banner gets out of the way. When you click "Resume", the resume banner now hides itself once the upload (or decrypt) actually starts. Before, the "Discard" button stayed visible during the resumed run — clicking it accidentally would have stopped the upload mid-stream. The same fix applies to "Start over" on encrypted downloads.
    • Encrypted downloads are a little more forgiving of brief network glitches when they're starting up, instead of failing the whole decrypt session over a single transient hiccup.

    Nothing about how files are stored, encrypted, or shared has changed.

  7. v1.18.0

    Upload resume that actually works

    Closing the laptop, dropping Wi-Fi, refreshing by accident — none of it kills your upload anymore. We now keep enough state in your browser to pick up exactly where you left off.

    • Resume on every upload. Whether you're uploading from your dashboard or someone's sent you an upload link, encrypted or not — your browser remembers where the upload got to. Come back to the page and you'll see a "Resume previous upload?" banner. Click it, pick the same file again, and uploading continues from where it stopped.
    • Encrypted resumes work properly. Resuming an encrypted upload re-uses the original encryption key, so the file decrypts cleanly at the other end with no surprises. (The banner reminds you to use the same password — a different one would scramble the file.)
    • No more accidental double-uploads. If you refresh the "all done" screen, you no longer trigger a second upload — we recognise it's already complete and just show the result.
    • Two tabs uploading the same file no longer interfere with each other.
    • Cancel an upload and storage gets cleaned up properly instead of leaving half-uploaded data sitting around.
  8. v1.17.0

    Reliability + audit log

    A back-of-house release. Mostly invisible but the visible bits matter.

    • Better confirmation dialogs. The browser's old beige "Are you sure?" boxes are gone — we now use proper in-app dialogs that match the rest of the design and surface error detail when something goes wrong.
    • Refreshing a "delete" page no longer asks you to confirm a re-delete. After any action (delete, rename, save settings), you land on the destination page with a confirmation message — refreshing just reloads the page like it should.
  9. v1.16.0

    Perfect mobile speed score, perfect accessibility

    Public landing page now scores 100 across the board on mobile — performance, accessibility, best practices, SEO. A handful of small, sharp changes.

    • Self-hosted fonts so the page doesn't have to wait for a third-party server to respond before drawing text. Loads noticeably faster on a cold mobile connection.
    • No layout shift while fonts load — the page stays put instead of jumping around.
    • Accessibility polish on the landing page: every text colour now meets contrast guidelines, inline links are properly distinguishable, and screen readers can navigate the page structure cleanly.
  10. v1.15.0

    Pick your own theme

    Theme is no longer set globally for everyone. Each user picks their own.

    • Dashboard theme. Account → Theme has a "Dashboard theme" picker (Default / Clean / Dark / Bold) that overrides the app default just for you.
    • Short-link theme. Same screen has a "Short link theme" picker for the public pages of links you create. Visitors see your chosen theme, regardless of what they prefer elsewhere.
    • Default still works. Leaving either picker on "Default" follows the app default.
  11. v1.9.0

    Multi-file by default, smarter galleries, faster previews

    The big one. We rebuilt the upload pipeline so multi-file is now the standard, not a special mode.

    • Drop a folder of files at once. Both the dashboard upload and any public upload link accept multiple files now — drag, drop, watch them upload in parallel. Live progress bar with bytes, speed, and ETA. Per-file status badges so you can see exactly which one's stuck if anything fails.
    • *Galleries are now a picker.* Instead of a separate gallery upload flow, just upload your photos like normal files, then build a gallery on the link creation screen by ticking the photos you want. One library, many galleries.
    • HEIC + RAW friendly. iPhone HEICs and camera RAW files (Canon CR2/CR3, Nikon NEF, Sony ARW, Adobe DNG, Olympus, Panasonic, Fuji, Pentax — 25+ formats) upload without complaint. They just don't show in the gallery picker because most browsers can't render them — we tell you exactly how many were filtered out so nothing's a mystery.
    • Multi-file file links. Sharing five files used to mean five short links. Now you can pick multiple files and we'll bundle them under one short link. Visitors get a clean file list, can preview images inline, download individually, or "Download all" in one click.
    • Image thumbnails generated in your browser. When you upload a photo, your browser quietly creates two thumbnails (a square one for pickers, a larger one for galleries) and uploads them alongside the original. Result: gallery pages and pickers load instantly even if the originals are 20 MB each. Lightbox and downloads always serve the full original.
    • Files page got smarter filters. Two new pills — Images and RAW — alongside the existing Shared / Private / Uploaded / Encrypted filters. Every pill now shows a count.
    • Batch download. Select files in your library or in an upload link's submissions and hit Download — every selected file downloads as a separate file (modern browsers ask once, then proceed silently).
    • Encrypted downloads got dramatically more reliable. End-to-end encrypted files now decrypt to a private space in your browser first, then save to disk in a separate step. This means: pause and resume across tab close, network drop, or browser restart. Works consistently across Chrome, Firefox, Safari, and Edge. We even check your browser's storage quota before starting and warn you if you're in private/incognito mode where space is limited.
    • Quality of life. Empty galleries and folders auto-clean themselves when you delete their last file. The dashboard count finally matches what your files page actually shows. Link descriptions show "5 files" instead of "—" for multi-file bundles.
  12. v1.8.1

    Findability

    Discoverability tune-up. We wove contextual links between the landing page, comparison pages, and feature pages so search engines (and humans) can find their way around more naturally.

  13. v1.8.0

    Support, properly

    We grew up our support setup ahead of scaling.

    • In-app support form — fill it out, we get an email, you get a confirmation. Answers come straight back to your reply address.
    • Knowledge base at kb.tinyx.co — self-serve answers to common questions.
    • Status page at tinyx.instatus.com — real uptime monitoring, subscribe for incident alerts.
  14. v1.7.x

    Galleries, multi-webhooks, audit log, and a security pass

    A big mid-cycle release.

    • Multiple webhooks. Add as many webhook endpoints as your plan allows (Free: 1, Pro: 5, Max: unlimited) and pick which ones each link should notify. Discord, Slack, Google Chat, or anything that accepts JSON — we auto-detect the platform and format the payload to match.
    • Image galleries. Upload a batch of images, share them as one beautiful gallery link with a clean grid, lightbox viewer, keyboard navigation. Tier-gated by gallery count and images per gallery.
    • Audit log on every link. Every change to a link (rename, expiry tweak, password set, etc.) is recorded with a field-by-field diff. View the history on each link's logs page.
    • Better device parsing. Browser and OS now read cleanly from user agents in your link analytics.
    • Security pass. An independent security review with the recommended fixes shipped.
    • Polish. File icons got readable in light themes, link cards reorganized, public page heroes got consistent typography across landing / features / compare pages.
  15. v1.6.0

    Comparisons & SEO

    For people researching alternatives.

    • Compare hub at /compare: in-depth pages comparing TinyX to Bitly, WeTransfer, Dropbox, Short.io, Rebrandly, Box, and Dub.co.
    • Each page has a verdict, FAQ, and structured data so search engines understand what's there.
    • Reachable via a Compare nav dropdown on desktop and mobile.
  16. v1.5.0

    Cleaner short URLs + indexing controls

    • `/x/` prefix for short URLstinyx.co/x/abc123. Cleanly separates short links from app routes. Old links automatically redirect to the new pattern.
    • Custom OG image upload — branded preview cards when your links are shared on social.
    • Indexing controls — toggle whether search engines and AI crawlers can index your short links and app pages. 17 named AI bots can be individually blocked.
  17. v1.3.0

    Questionnaire analytics

    Forms got their own analytics dashboard.

    • Responses-over-time chart
    • Top countries
    • Auto-generated charts for choice / multi-select / dropdown questions
    • Cleaner responses list view
  18. v1.2.0

    Direct-to-cloud uploads + policy pages

    • Uploads no longer pass through our app. Files go straight from your browser to encrypted cloud storage via short-lived signed URLs. Bigger files, faster uploads.
    • Abuse policy page at /abuse — clear rules, fast takedown process.
    • Security & bug bounty page at /security — responsible disclosure, scope, what's in-bounds.
    • Self-redirect detection — if your TinyX short link points to another TinyX short link, we warn you (it's allowed, but usually a mistake).
  19. v1.1.0

    Search, filters, pagination

    • Search and filter on the Links and Files pages, paginated 20 per page.
    • Direct-to-cloud upload paths for public upload links — visitors can drop large files straight into your storage.
    • Per-link webhook toggle on the edit page.
    • Webhook platform detection — Discord / Slack / Google Chat / Custom — visible in your account settings.
  20. v1.0

    Launch

    The core platform.

    • 3 paid tiers (Free / Pro / Max) with configurable per-tier limits for links, storage, file size, custom codes, custom logos, encryption, webhooks.
    • Public registration with email/password and email verification.
    • Stripe billing with monthly/annual plans, self-service upgrade, customer portal, full subscription lifecycle handling.
    • Short links for files, URL redirects, and authenticated uploads.
    • End-to-end encryption — encrypt files in your browser before they reach our servers. Even we can't read them. Password is required to decrypt.
    • Webhooks — get notified when links are visited, downloaded, uploaded to, etc.
    • Questionnaires — short links that collect form responses (single line, multi-line, choice, multi-select, dropdown, country picker).
    • QR codes — every short link has a QR code, downloadable as SVG or PNG.
    • Click analytics — clicks over time, top countries, top devices, top referrers, with charts.
    • Custom logo per link (paid tiers) — uploaded logo replaces the default branding on shortlink pages.
    • Custom short codes (paid tiers).
    • Three themes — clean, dark, bold.
    • Mobile responsive throughout.
    • Self-hosted everything — zero CDN dependencies, zero third-party JavaScript on the public pages.
    • Legal pages — Terms, Privacy, Cookie Policy, Accessibility Statement.
    • EU-only cookie banner — only shown when the visitor's country actually requires it.
    • Password reset flow with email tokens.

    Want to know what's coming next? Check [the status page](https://tinyx.instatus.com) for live updates, or drop us a note via [the help page](/app/support).

Prefer the raw feed? The same log lives at /changelog.md — handy for tooling and feed readers.