Everything we plant in the app, newest first. Features, fixes, and little improvements, straight from the garden shed.
July 2026
FixedJuly 11
The "notify me" form on habitat pages now works, and more pages are easier to find
If you left your email on a habitat page that is still building its species-at-risk data, the form quietly failed to save it. That is fixed: leave your email and you will hear the moment your region's data is ready (submitting twice is harmless). A few pages also got easier to find: the State of the Backyard is now linked from the footer, the Neighbourhoods view is linked from the habitat hub, garden milestones are one tap from your profile, and search engines can now find pages like the phenology dataset, milestones, FAQ, and pricing.
Where to find it: Habitat region pages, the footer, and your profile
BetterJuly 11
Every public page now shares the same navigation
Pages like Learn, About, Pricing, FAQ, the nursery map, Partners, Supporters, and the changelog used to have a stripped-down header with only an "Open Map" link. They now carry the same botanical header as the rest of the site, so you can hop between the Native Plant Library, Sun & Shade, Plant Drops, and the Map from anywhere. Signed-in gardeners also get their botanical hero band back on the Habitat Plan page, and a couple of pages no longer say "Hortus" twice in the browser tab.
Where to find it: Learn, About, Pricing, FAQ, Nurseries, Partners, Supporters, Changelog, Phenology, Privacy, Terms, and Brand pages
BetterJuly 11
The plant library now opens noticeably faster
The Native Plant Library (the finder and every species page) is now served from a ready-made copy that quietly refreshes itself in the background, instead of being assembled from scratch on every visit. Same pages, same regional defaults, just much quicker to open, especially from a shared link. The map heatmaps and community insights also reuse recent results rather than recomputing them for every viewer.
Where to find it: Viewable at /plants
BetterJuly 11
Your week at a glance, no more scrolling for it
The "This week" card beside the map has been rebuilt so everything worth knowing is in front of you at once. The one-tap bloom question now leads the card, and when several plants are waiting on an answer it counts them down (1 of 3) and offers the next question after each answer so you can clear them in one sitting. The weather is a single line with the watering verdict and a note on how your season is running, with "See the week ahead" opening the full 7 days. The wildlife nearby shows its two best finds with the rest one tap away, and the header tells you how many things actually changed since your last visit, with a small New tag on each, so a Thursday look is different from a Monday one.
Where to find it: The This week card on the map, on desktop
BetterJuly 9
The top navigation is easier to use on a phone
On smaller screens the section links used to wrap onto several lines and run off the edge. They are now a single tidy row of botanical pills you can swipe across, with the page you are on kept as a filled pill so you always know where you are. On desktop the header is unchanged.
Where to find it: Public site header, on mobile
NewJuly 9
Nurseries can now ask to host a plant drop, right from the drops page
The Plant Drops page now has a standing invitation for growers: if you run a native plant nursery, you can reach out to host your own drop, where Hortus pools the neighbourhood preorders so you grow to order with no unsold trays. The card sits below the drops list and is always there, whether or not a drop is already open near you.
Where to find it: Viewable at /drops
BetterJuly 9
Clearer wording when you raise your hand for a drop in your region
When you add your name for a drop that has not opened near you yet, the drops page now says plainly what happens: your interest is recorded and taken to local nurseries as proof there are buyers waiting, and enough neighbours is what opens a drop in your region.
Where to find it: Viewable at /drops
BetterJuly 9
The top navigation now has a little more life, and shows where you are
Each section in the header (Native Plant Library, Sun & Shade, Plant Drops, Wildlife & Habitat, Habitat Plan, Map) now has its own soft botanical colour that appears as a rounded pill when you hover it, and the page you are currently on keeps its pill so you can always tell where you are. At rest the bar stays calm and uncluttered, the colour only comes alive on hover.
Where to find it: Public site header
BetterJuly 8
PollinateTO gardens now show up under the Community filter, with the City of Toronto's own logo as the pin
The separate "PollinateTO gardens" toggle on the map is gone. City of Toronto PollinateTO grant gardens now appear automatically whenever the Community filter (or All) is selected, alongside every other community site, since that is what they are. Their pin is now the City of Toronto's own logo on a white disc, so they read as a City partner site at a glance, and every popup still credits the City of Toronto as the source.
Where to find it: Map, Community filter
BetterJuly 8
Bloom watch now lives in your "garden this week" card, not off to the side
The gentle Bloom watch question ("Is your Wild Bergamot blooming?") has moved out of the left sidebar and into the "Your garden this week" card on the right of the map, alongside the rest of the week's one thing worth doing. It shows a plain sense of timing ("usually opens in July") with the same one-tap Yes, Not yet, or Skip. It only appears when one of your plants is near its usual bloom window, and stays quiet the rest of the time, so the card never feels cluttered. Your plant list on the left now has more room to breathe.
Where to find it: The "Your garden this week" card on the right of the map
FixedJuly 8
Your garden's story reads like someone wrote it
The garden story now leads with a short, plain-spoken headline and follows it with a sentence or two that actually adds something: what the moment means, the plant that likely drew a visitor in, that it is a first for the season. Before, the header and the description could repeat the very same line word for word. Every story type got a warmer, more human rewrite, and there are no stray dashes left in the copy.
Where to find it: Beside "Your garden this week" on the map, the Garden tab in the app, and the weekly email
NewJuly 7
Your garden now tells you its one good story each season
Hortus now looks through your own garden records and surfaces one genuinely notable, true thing each season, the first monarch years after you planted the milkweed, a bloom weeks ahead of its usual window, or a plant that struggled and pulled through. It only ever comes from what you have actually logged, nothing is invented, and if nothing stands out yet, it simply stays quiet rather than filling the space with filler. Look for it on the map beside "Your garden this week", and it now folds into your seasonal note too when there is something worth saying.
Where to find it: Beside "Your garden this week" on the map, the Garden tab in the app, and the weekly email
NewJuly 8
Neighbourhoods: see habitat come together, from cities down to your street
A single new zoomable view, Neighbourhoods, ties every neighbourhood together. Zoom out and each city glows as one shape, sized by how many gardens are growing there. Zoom in and the city breaks apart into its postal-code neighbourhoods, each one shaded by how much habitat it holds. Tap any neighbourhood to see its measured gardens, native plants, and the species they support, then open its full report. Neighbourhood shapes are the real postal-area boundaries published by Statistics Canada, gently simplified. Every number is measured from what neighbours actually planted, garden locations are never shown, and a plant is only named once several gardens grow it.
Neighbourhood pages now protect small neighbourhoods more carefully
Neighbourhood habitat pages only show their full habitat picture once enough gardens have joined to keep every household private within the group. A neighbourhood with fewer gardens now sees an invitation to be the one who unlocks it, instead of an early, thinner report. And a plant is only named as something the neighbourhood supports once several different gardens are growing it, so no single garden’s planting list can be read off the page.
Where to find it: Viewable at /neighbourhood/[fsa]
BetterJuly 8
"Plant me next" is now one clear pick, with honest reasons and a refresh
The next-plant suggestion under your garden list, and on the mobile Garden tab, now shows a single strong pick instead of a short list, since there was never a way to act on more than one. A refresh gives you a different plant if the first is not for you, and every pick still comes with its full reasons. Those reasons are now strictly what we actually know: which wildlife your garden is missing that this plant brings back, which empty bloom month it fills, and that it is native to your region. We no longer claim anything about your light that you never told us. The pick and a link into your full habitat plan now sit in one tidy card, and the Impact Report opens in a new tab so you never lose your place.
Where to find it: Under your plant list on the map, and the Garden tab in the app
NewJuly 7
"Plant me next" now checks it will actually thrive in your yard
The single next-plant suggestion under your garden list, and now a matching card on the mobile Garden tab, is worked out from your own garden rather than a generic list. It looks at what you already grow, the bloom gaps in your season, and which local at-risk wildlife your garden can't quite support yet, then checks that the plant will actually thrive in the light and hardiness zone your yard gets before it recommends it, excluding anything that would not survive there. Each pick comes with a plain reason: which wildlife it brings back, which empty month it fills with bloom, and why it suits your conditions.
Where to find it: Under your plant list on the map, and the Garden tab in the app
NewJuly 7
Bloom watch now gives a plain-words sense of when to expect the first flower
Every Bloom watch question now comes with a straightforward guess at timing, right in the garden rail, the app, and your weekly email: a calendar-based sense of when a plant usually opens for gardens still building their bloom history, and, once you have logged a few years of first blooms, your own garden's bloom history taking over the guess. The one-tap Yes / Not yet answer is unchanged, still saved instantly with your streak. New gardeners see an encouraging nudge to log their first bloom instead of an empty card.
Where to find it: Top of your garden list on the map, the garden tab in the app, and the weekly email
BetterJuly 8
Your impact report now comes alive, told through the plants you grow
The impact report has been redesigned as a warm, colourful year-in-review. It opens with a headline about what your garden actually did, then leads with the plants themselves: a roster of every species you grow, each showing the wildlife it feeds (bees, butterflies, hummingbirds, songbirds, caterpillars), when it blooms through the year, and whether it is at risk. The survival curve is now a proper, readable chart with a shaded honest range and landmarks labelled in plain terms like "one season" and "one year" instead of raw day numbers, alongside a friendly walk-through of what it measures and why the half-way point matters. Survival-adjusted outcomes now sits right beside it with a clear line on how the two differ: survival asks whether plantings last, outcomes asks what they add up to. The organization Habitat Impact Report gets the same visual warmth and clearer, correctly ordered sections.
Where to find it: /impact
NewJuly 7
The impact report now shows how long native plantings actually survive
Your impact report and the Habitat Impact Report for organizations now include an honest species survival curve, built from real removal and planting records. It shows the share of plantings still in the ground at one season and one year, with confidence ranges, a median where one exists, and a per-species breakdown. Plants still growing are never counted as a death or as a guaranteed survivor, and species with too few tracked plants are counted but not estimated on their own. Where there is not yet enough tenure data, the section says so plainly and fills in as your garden is tracked over more seasons.
Where to find it: /impact
NewJuly 7
Impact report now shows survival-adjusted establishment and a cited valuation
The Habitat Impact Report goes beyond what was planted to what is actually established. Native plantings are now survival-adjusted using real removal and check-in records, so the report shows both the raw planted count and the number likely still established, with a confidence range and the sample size behind it, honest about what is not yet adjustable. Where a defensible, cited per-plant ecosystem-service value is available, the report shows it as a range with its source; without one, the report says so rather than showing a made-up number. Year-over-year change in plantings and established count is now shown alongside.
Where to find it: /impact, for organization and gardener accounts
BetterJuly 7
The free Habitat Plan starts with your region, and shows the life it unlocks
Native plants are region-specific, so the Habitat Plan now begins with your province or state (it was easy to skip before). The moment you pick it, you see what that choice unlocks, drawn live from the plant catalogue: how many native plants grow wild where you garden, how many feed bees, butterflies, songbirds, and hummingbirds or raise caterpillars, and a few real plants to preview. Sun and soil are still there to sharpen the picks, now as an optional second step. The Habitat Plan, Sun & Shade, and the other public pages also now show when you are signed in, with your username in the top corner linking back to your garden.
Your Habitat Plan carries your Sun & Shade checks, and prints like a keepsake
The free Habitat Plan now picks up the spots you already checked on the Sun & Shade map and fills in your light on its own (one tap clears it, and only the light level carries over, never where you checked). Printing the plan produces a proper botanical document: a masthead, numbered plates for every pick, and each honest reason in full. Shared plan links got the same care, showing real plant plates with photos, bloom months, and the wildlife each pick brings back, still without ever carrying your name or address.
Where to find it: Viewable at /plan, and by printing or sharing your plan
BetterJuly 6
Impact report corridor growth and printable invoices for organizations
The Habitat Impact Report now shows how the corridor around your sites has grown over time: the gardeners mapped within about 2 km, quarter by quarter as each joined Hortus. And every $0 founding pilot invoice on the Billing tab now opens as a full printable document you can save as a PDF and file with your books.
Where to find it: Partner Hub at /partner (Billing tab) and /impact for organization accounts
BetterJuly 6
Bloom watch answers land instantly
Answering a Bloom watch question now feels as quick as the tap itself. Choose Yes, Not yet, or Skip this plant and the card responds right away: a Yes shows your bloom saved and your streak on the spot, while the personal comparison (early, on time, or late for your region) fills in a moment later. No more brief wait between tapping and seeing something happen. If a save ever fails, the question simply returns so you can try again.
Where to find it: Top of your garden list on the map, and the top of the garden tab in the app
FixedJuly 6
A few more native plants now show up in the right bloom months
Cleaned up some catalogue bloom dates so plants that were quietly missing from the month-by-month bloom lists now appear when they should, and added bloom times for a handful of spring wildflowers that had none.
The State of the Backyard: a yearly picture of native gardening in Canada
A new public page tells the story of what Canadians planted this year, drawn entirely from real gardens: the species logged, the wildlife they feed, and the communities growing them, with honest sample sizes throughout. This is the 2026 edition; the same page deepens every season as more gardens join.
Where to find it: Read it at /state-of-the-backyard
A short story for every plant, starting with the ones you plant most
Native plant pages now open with a plain-language note on why the plant matters: the wildlife it feeds, the caterpillars it hosts, and where it belongs in a garden. The first batch covers the most-planted native species, written from our verified wildlife data with no invented numbers. Plants without a written note still show their growing details as before.
Where to find it: View on any species page under /plants
Gave the main action buttons across the app a single, consistent warm-honey colour, so the button you tap to do the important thing looks the same everywhere. This is a visual polish pass with no change to how anything works.
NewJuly 6
Garden milestones: recognition your garden earns
Your garden now earns warm recognition tiers as it grows, from Seedling to Full Habitat, based on the native species you plant, whether you have food across spring, summer, and autumn, and the wildlife your plants support. Each milestone shows the one concrete next step to reach the next tier, links straight into your Habitat Plan, and lets you mark it in the real world with a garden sign. You can also note a water source and a pesticide-free garden in Settings.
Where to find it: View at /milestones; a badge appears on your public garden page
Every first bloom you log helps build an open picture of when native plants flower across the country, paired with how warm the season has been. There is a new page explaining the dataset, an honest methods page about how it is collected and its limits, and a full data dictionary. Everything is anonymized to the province or state level, with no names, addresses, or exact locations.
Added a public, sign-up-free demo at /demo where prospective partners can walk through three Hortus workspaces with fictional, clearly-watermarked data: a community program, a native plant nursery, and a garden designer. The data refreshes nightly to stay in season, and every screen is marked as demo data.
Where to find it: Viewable at /demo, linked from the partners page
Adopt a corridor: help close the gaps between habitat gardens
Turn on the new Adopt a corridor layer on the map to see the stretches between habitat clusters that still need a few more gardens to connect. Each gap tells you how many more gardens it needs, and you can pledge to plant there in one tap. Toronto and Halifax are first, with more cities to follow.
Where to find it: Map, "Adopt a corridor" toggle
NewJuly 6
Toronto pollinator gardens now show on the map
Hundreds of City of Toronto PollinateTO grant gardens now appear on the map as their own pins, so you can see the pollinator habitat already growing near you. They are shown as separate sites with City of Toronto attribution, and if one is your garden you can get in touch to bring it fully onto Hortus.
Where to find it: Map (Toronto), and neighbourhood pages
NewJuly 6
Add your whole garden in one tap, or paste your plant list
Adding plants no longer means typing each one. Two fast ways now live in Start Here and on your garden. Tap what you grow shows a grid of the most common garden plants for your province, drawn from what gardeners near you actually grow, so you just tap the ones in your garden and save them all at once. Paste your plant list lets you drop in a nursery order, an email, or a column from a spreadsheet: Hortus reads each line, matches it to a plant by its common or botanical name, and forgives quantities like "3x" and cultivar names like 'Husker Red'. You get a tidy confirm screen where sure matches are ready to add, close-but-unclear ones let you pick the right plant, and anything we could not place is listed as skipped and never added on its own.
Where to find it: Start Here, and the garden panel (Quick add)
BetterJuly 6
Expanded automated test coverage
Expanded automated test coverage across organization, campaign, messaging, and wildlife features. Internal quality work with no change to how you use Hortus.
BetterJuly 6
Hardened order processing and added an internal order queue
Follow-up hardening on how garden sign orders and plant drop kit orders are processed, plus a small fix so closing a drop that no one ordered from never sends an empty purchase order. Internal reliability work with no change to how you shop or pay.
BetterJuly 6
A smoother path from your garden score to your first plant
The welcome flow now leads with one clear first step and an instant garden score, and the report card hands you straight into adding your first plant instead of stopping at a number. We also improved how we measure which starting point helps new gardeners get growing, so the experience keeps getting better.
Where to find it: Viewable when you first sign up, and at /calculator
BetterJuly 6
Repository hygiene guardrails
Tightened the ignore rules so regenerable preview and outreach artifacts never get committed, and cleared out leftover duplicate files. Internal maintenance with no change to how you use Hortus.
FixedJuly 6
Fixed site indexing for search engines
Fixed a routing issue that stopped search engines from reading the site map and related site files. Public plant pages are now properly discoverable through search. No change to how you use Hortus.
BetterJuly 5
See where each new feature lives
The changelog now tells you where to find each feature. Entries that introduce something new show a short "Where to find it" line below the description, with the page and where to look for it, so you know exactly where it lives instead of hunting through the menus.
Where to find it: Viewable at /changelog
NewJuly 5
Clubs that start alive, and one living community feed
Community got a restructure so nobody ever lands in an empty room. Every gardener now belongs to the Hortus Club, one chat room for the whole community, plus a club for their province (Ontario Club, Nova Scotia Club, and so on), joined automatically when you sign up or set your garden location. Each room opens with a friendly welcome from the Hortus team so there is always a conversation to join. A local club for your own neighbourhood unlocks once 10 gardeners join within 25 km, shown as a progress bar that fills as your area grows. Club chat feels snappier too: messages group by sender, day dividers keep long conversations readable, and your message appears the instant you hit send. The activity feed now leads the Community menu and folds in wildlife sightings and first blooms from nearby gardens alongside new plants, new gardeners, and events. The plant exchange stays open all year, as always.
NewJuly 5
New plant and region guides you can share and search
Three new kinds of guide, each built from real data and free to read without an account. "Native alternatives to..." pages answer the swap questions people search, like what to plant instead of burning bush, hosta, or a Norway maple, with native plants that fill the same garden role and feed local wildlife. "Native planting calendar" pages give each province a month-by-month view of what is native and in bloom, when it peaks, and when to plant. And "when it blooms, what it feeds" pages take a native plant in your province and lay out its bloom window, how to grow it, and the named pollinators, caterpillars, and species at risk it brings back. Every guide links into the free report card, Sun & Shade, the plant library, and a nursery finder, and each one is honest: a guide only publishes when the underlying data is strong enough to earn it. All three are in the sitemap so search can find them.
BetterJuly 5
Sturdier checkout behind the scenes
We hardened how garden sign orders and plant drop kit payments are recorded, so a hiccup between our payment provider and Hortus can never double-process an order or leave a paid order sitting unconfirmed. We also added an internal order queue that flags anything moving slowly, so a stalled order gets attention within hours. Nothing changes about how you shop or pay.
BetterJuly 5
Internal code structure cleanup for maintainability
Internal refactor to consolidate duplicate pages, group shared utilities, and split a few large components into smaller pieces. No changes to how anything looks or works.
BetterJuly 5
Hardened API and database access controls
A behind-the-scenes security pass tightening how the app and database handle private data, uploads, and access controls. No change to how you use Hortus.
BetterJuly 5
Public pages now open on your phone browser
Public pages like the plant finder, Plant Drops, Sun & Shade, the nursery map, habitat pages, street corridors, supporters, and the shop now open directly on mobile web instead of showing an app-only wall. Shared links you tap from a message or email land on the real page. The app wall now only appears for your garden and other signed-in surfaces, and it always offers a clear "continue on the web" option, with no dead buttons.
BetterJuly 5
Expanded automated test coverage for organization-facing features
Added automated tests across organization-facing areas, including campaign funnel analytics, organization member lists, plant drop interest, the researcher map feed, and wildlife species relevance. No change to how the app behaves.
BetterJuly 5
A simpler welcome, and your garden score as a first step
The "Start Here" welcome is now built around one clear first step instead of a wall of choices: add your first plant (or set your location first, if you have not yet). Everything else, from wildlife nearby to events to the garden planner, is tucked behind a "More ways to start" reveal so nothing crowds the main action. New to it all and do not have a plant list handy? A gentle "See your garden's score first" button now takes you to a Garden Report Card previewing a recommended starter mix for your region, so you can see what a native garden near you brings back before you log anything. This preview is clearly a suggestion, not your garden: it is never added to your garden for you. When you are ready, signed-in gardeners get a clear "Add a plant you're growing" step (and can save the mix to their wishlist), while new visitors can choose to sign up on the web or grab the iOS app (Android coming soon) and start their own garden. Gardeners arriving from a partner event or plant sale see this preview first too, so their very first step gives something back rather than asking for a list they may not have.
Where to find it: Viewable at /calculator
NewJuly 5
Neighbourhood habitat pages
Habitat, block by block. Canadian postal areas with a few mapped gardens now get a public page at joinhortus.com/neighbourhood (for example, M4E in Toronto), showing the gardens neighbours have mapped, the native plants in the ground, the species they support, when the neighbourhood is in bloom, and a dot map of the cluster. Every dot is approximate, a few blocks from the real spot, so nobody's address is ever shown, and every number is measured from what people actually planted, nothing estimated. Each page unfurls with a proper preview card, so you can share your neighbourhood's progress and invite one more garden onto the block.
NewJuly 5
What's new in Hortus, right inside Hortus
You should never have to wonder what changed. A little sparkles button now lives in the header: when we ship something, it lights up with a count, and opening it shows the latest features, fixes, and improvements as friendly cards, each linking straight into the feature where there is one to visit. Menu items wear a small "New" tag for two weeks after a feature lands, and the occasional one-time card introduces a fresh feature right on the page where it lives (dismiss it once and it never comes back). On the phone app, the notification bell now carries product updates too, with a "What's new in Hortus" row at the top of your notifications. The public changelog page got the same warm treatment. And the small suggestion cards in your garden sidebar (a plant drop open near you, the garden sign) now have a quiet x, so if one is not for you, tuck it away and it stays away.
A grant-ready Habitat Impact Report for partner organizations
Partner organizations can now generate a full Habitat Impact Report from the Partner Hub, built to be attached to a grant application: a dated headline story with planting growth since the organization joined, named at-risk species with the specific sites whose plantings support them, the wildlife those plantings feed alongside species actually observed nearby, a month-by-month bloom calendar with gaps identified, bloom timing compared with last season, how many neighbouring gardeners are mapped around each site, the campaign participation funnel, a dated milestone timeline, and a methodology appendix stating exactly where every number comes from, with a citation line. Every figure is a count of real records; sections without enough data yet say so honestly instead of showing zeros. The hub also gains a Billing tab: founding pilot partners see their plan at $0 with list pricing on the record, a $0 invoice for each pilot year as a paper trail, and a button to request a custom view or report from us directly.
NewJuly 5
Bloom watch now asks at just the right moment
Bloom watch has grown into a proper back-and-forth. Hortus now predicts when each of your plants is likely to open, using its typical bloom months and how warm your own season has been running, and asks about up to three plants at a time right at the top of your garden list on the map and at the top of the mobile garden tab: "Is your Wild Bergamot blooming?" Answer with one tap. Yes saves the bloom to your garden's record and lights it up on the community bloom map. Not yet teaches Hortus to check back in about a week, and late bloomers keep getting asked past their usual window because you told us they are still coming. Skip this plant quiets it for the season. Answer week after week and a seasonal streak grows with you, and when your season is running ahead of or behind last year, the card says so in plain words.
NewJuly 5
A free habitat plan, made just for your yard
Your new Habitat Plan turns what Hortus already knows about your garden into a concrete planting list, free at joinhortus.com/plan. It reads your bloom season month by month, spots where your garden runs thin or goes quiet, and names native plants that fill those months, each with a real photo, the wildlife it brings back, and the honest reason it earns a spot: the months it blooms and the at-risk species it supports in your region. Tell the plan about your yard and it tunes itself: pick every kind of spot you have (sunny, part sun, shady) and it splits into a section for each, and add your soil (dry, average, moist, or wet) to keep only plants that can take your ground. Visitors with no account get a lighter starter plan from a few quick questions. When a native plant preorder is open near you, the plants from your plan map straight to a kit you can reserve in one tap; when none is open, you can raise your hand to hear about the next one. The plan is print-friendly and shareable, without ever putting your name or address in the link.
BetterJuly 5
Sturdier checkout behind the scenes
We hardened how garden sign orders and plant drop kit payments are recorded, so a hiccup between our payment provider and Hortus can never double-process an order or leave a paid order sitting unconfirmed. We also added an internal order queue that flags anything moving slowly, so a stalled order gets attention within hours. Nothing changes about how you shop or pay.
NewJuly 5
Campaign attribution reports for partners
Campaign partners now get a per-campaign attribution report, on the web and as a saved PDF, showing exactly what their campaign created: page visits, signups, gardeners who went on to log plants, the plants in the ground with a species list, and an approximate map of where those gardens are. The campaign QR code is now tagged, so scans of printed posters, plant tags, and counter cards appear as their own row in the report, proof the print material worked. Every number is a count of real records, locations are always approximate to protect gardener privacy, and sections without enough data yet say so honestly.
NewJuly 5
Impact reports and pilot billing for partner organizations
Partner organizations can now generate a dated, print-ready impact report straight from the Partner Hub: gardens and native species across their sites and campaigns, the named at-risk species those plantings support, planting growth by quarter, bloom timing compared with last season, and how campaign visitors became gardeners. Every number is a count of real records; sections without enough data yet say so honestly instead of showing zeros. The hub also gains a Billing tab: founding pilot partners see their plan at $0 with list pricing on the record, a $0 invoice for each pilot year as a paper trail, and a button to request a custom view or report from us directly.
NewJuly 5
A richer Monday digest, and frost and wildlife alerts you control
The weekly digest email has grown some new sections, and every one of them stays quiet unless there is something real to say. Some weeks it opens with a short note from the founder. A "New on Hortus" list catches you up on what shipped since the last digest. Your Bloom watch questions ride along ("Is your Wild Bergamot blooming?"), next to plain-words one-liners about how warm your season is running and which wildlife has been reported near you. Alongside the email, two phone notifications arrive: a frost alert when a cold night shows up in your forecast during the growing season, and a weekly note when wildlife your garden can support is reported nearby. Both have their own switches in Settings, on web and in the app, and turning one off never touches the other. We also did some behind-the-scenes hardening so the digest sends reliably as the community grows.
NewJuly 5
Bloom watch now asks at just the right moment
Bloom watch has grown into a proper back-and-forth. Hortus now predicts when each of your plants is likely to open, using its typical bloom months and how warm your own season has been running, and asks about up to three plants at a time in Your Garden This Week and the mobile garden tab: "Is your Wild Bergamot blooming?" Answer with one tap. Yes saves the bloom to your garden's record and lights it up on the community bloom map. Not yet teaches Hortus to check back in about a week, and late bloomers keep getting asked past their usual window because you told us they are still coming. Skip this plant quiets it for the season. Answer week after week and a seasonal streak grows with you, and when your season is running ahead of or behind last year, the card says so in plain words.
BetterJuly 5
A Hortus goods collection is coming
A first peek at The Hortus Collection: a tote, cap, and tee celebrating Canadian native plants and the wildlife they feed. The shop at joinhortus.com/shop now has a coming-soon home while we finish the artwork. Nothing is for sale yet, and the app itself stays free as always.
Easier to find Sun & Shade, and clearer names in the menus
A few navigation tidies so nothing hides. Sun & Shade now has a spot in the site footer and the mobile menu, not just the desktop Library, and the homepage "try it now" row leads with it alongside Wildlife & Habitat, the plant library, and nurseries. Plant Drops joins the footer too. The Library menu now says "Native Plant Library" everywhere, matching the rest of the site. And Sun & Shade, Plant Drops, and the supporters page are now listed in the sitemap so search engines can find them.
Where to find it: Viewable at /sun
NewJuly 5
One place to explore habitat across the country
joinhortus.com/habitat is now a real explore hub, not a redirect. At the top is a "Leading communities" board that ranks the towns and cities bringing the most native habitat back, by the number of gardens neighbours have mapped, with native plantings and species diversity alongside. Every number is measured from what people actually planted, nothing estimated. Tap any community to open its report. Below the board, a browse-by-region grid gives every province, territory, and covered state its own card, so you can jump straight to the habitat story where you live. We also folded amalgamated Toronto together: addresses that say Scarborough, Etobicoke, North York, York, or East York each still get their own page, but Toronto now adds them all up so the city report reflects the whole place, and each borough page links up to the parent.
A failed first-bloom log no longer leaves you stuck
On the mobile app, if recording a first bloom did not go through, the "It's blooming" button used to vanish and leave a "please try again" message with nothing to tap. Now the button stays put and a short note tells you it did not save, so you can simply tap again.
NewJuly 5
City habitat reports you can share with your councillor
Every habitat page now has a matching report for your city or town, at joinhortus.com/habitat/{province}/{city}, public and needing no login to open. It shows the gardens residents have mapped, the native plants in the ground, how many native species they add up to, the named species at risk those gardens are within range of, which months the community is in bloom, and how planting has grown year over year. Every number is measured from what people actually planted, nothing estimated. Each report has a "Share this report" button (copy the link or use your phone's share sheet) and unfurls with a proper preview card in messages and on social, so you can send your community's wildlife story straight to a city councillor or MP. Province pages now list their active communities, and city pages link back. We also fixed a bug where a visitor outside the Greater Toronto Area could be told, wrongly, that "Hortus isn't in your area yet": Hortus works right across Canada and the United States, and the report card now says so, pointing you to your own province's habitat page when your postal code belongs somewhere else. No garden's address or coordinates are ever shown; only community-level totals.
Sun & Shade: watch the shadows move, in colours that make sense
The time-of-day view on the sun map now speaks a clear visual language: sunlit ground glows golden and shadows read cool and dark, on the map, in the legend, and on the scrubber itself, which is now a dawn-to-dusk gradient track with a sun-coloured handle that brightens toward midday. And because watching shadows sweep across your own yard is the best part of the tool, it is now front and centre: a play button animates the whole day from dawn to dusk, the first time you open Time of day the sweep plays on its own (unless your device asks for reduced motion), and the quick-start steps point you to it. Shadows now sit a touch lighter so the satellite map still shows through underneath, and Sun & Shade is now linked from the site footer. Pick any growing-season month and watch how the light changes.
Opening a shared Sun & Shade link on a phone browser now shows the verdict right away. Previously, phone visitors were pointed to the iPhone app before they could see the page they were sent. The whole Sun & Shade tool is now open on mobile web, so a link from a group chat works the way it should.
Plant Drops: browse every nursery running a drop near you
The drops page now puts nurseries first. Every drop is grown by its own local nursery, and the page now shows each nursery running a drop within 50 km of your garden, nearest first, with its drops grouped underneath. A simple control widens the search to 100 km, 250 km, or anywhere. Distances stay approximate ("about 12 km away") and are measured from your general area, never your exact address. If you have not set a garden location, you still see every nursery, with the soonest-closing drop first.
A simpler yard sign name, and easier ways to find Steward support
The yard sign order form now has one editable name field instead of a garden-name/username toggle, prefilled with your garden name so there is nothing to configure. Also added a few quiet ways to find the Steward supporter page: the site footer, your account menu on both desktop and mobile, and a mention on the About page. Nothing is gated behind it.
Where to find it: Viewable at /supporters
FixedJuly 5
Volunteering: clearer error messages when something goes wrong
The Volunteer Opportunities panel now tells you when it could not load nearby opportunities, with a "Try again" button, instead of showing the same message as when there truly are none nearby. If an RSVP fails (say, a spot filled up right before you clicked), you now see why instead of the button silently doing nothing.
NewJuly 4
Garden Planner: plan on your own sun map
The Garden Planner has been rebuilt from the ground up. Instead of an abstract 3D scene, the planner now opens on a satellite view of your own yard with the Sun & Shade light bands drawn over it, the same bands as joinhortus.com/sun, traced from Government of Canada LiDAR elevation data. Your garden plants wait in a drawer with a "not placed yet" tray; tap a plant, then tap the map to plant it (or drag it straight on), and drag markers around as your plan changes. Every placement gets a quiet light check: a good match, workable, or mismatch badge with one honest line, like "Cardinal flower is listed for part shade; this spot gets about 6 or more hours of direct sun per day." A summary up top tells you how many placed plants may want a different spot. The full native plant catalogue is one tab away, placements save automatically, and the canvas works with the same touch gestures as the map.
Sun & Shade verdicts are now shareable. Every verdict card has a "Share this" button that copies a link (or opens your device's share sheet) showing the light band, the hours of sun, and a native plant that fits, with a card that looks great in group chats and on social media. Shared links carry a neighbourhood-level location at most, never your address or exact coordinates. Anyone who opens one can check their own yard in a tap. And when a verdict suggests plants you like, a new "Save these for your garden" button adds them straight to your Hortus garden, or carries them through signup if you are new.
A new Impact Report (in the Library menu) turns everything your garden does into one shareable page: the species at risk your plants support (named, with their status), your nectar-and-pollen coverage across the year, the wildlife actually being seen near you this season, and your bloom timeline. Organizations that manage several community garden sites get the same report aggregated across all of them, with a per-site breakdown, ready to save as a PDF for funders and annual reports. Every number is honest: conservation counts are curated from COSEWIC/SARA and academic host-plant sources, and wildlife records are real research-grade observations from iNaturalist.
Where to find it: Signed in, at /impact
NewJuly 4
Wildlife Pulse: see what is moving near you, and which of your plants matter to it
Your garden this week now shows the wildlife actually being seen around you. Using recent research-grade observations from iNaturalist within about 30 km, Hortus lists the butterflies, moths, bees, and birds reported nearby, and for each one tells you which of your own plants supports it and how: "Monarch reported nearby (266 sightings this month). Your Common Milkweed is a caterpillar host plant for it." Species your garden already supports rise to the top; at-risk species you could plant for are flagged with their status. We only ever say a species was reported nearby, never that it is in your garden, and the counts are real observations, attributed to iNaturalist. On mobile it lives at the top of your garden tab.
Where to find it: Signed in, in the Wildlife view (/map/wildlife)
NewJuly 4
Bloom watch: one tap when a first flower opens
Hortus now asks at the right moment. When one of your plants enters the weeks it usually blooms, a small "Bloom watch" prompt appears in Your Garden This Week (and on the mobile garden tab): "First flower open on any of these?" One tap on "It's blooming" and Hortus tells you something personal, whether it opened early, on time, or late compared to its usual time in your region, and quietly notes how warm your season has been so far, so next year it can tell you when to watch for that bloom. The same button lives on every flowering plant's page, on desktop and mobile, and remembers the date once you have logged it. Vegetables and herbs are left out, since they are not grown for their flowers.
Where to find it: Signed in, in the Garden tab (/garden)
NewJuly 4
Garden weather: watering advice, frost and heat alerts, season pace
Your garden now reads the weather. The "Your garden this week" panel (and the mobile garden tab) shows a 7-day outlook woven into your own plants: a watering verdict built from the actual rain your garden received this week versus what it lost to evaporation, crossed with each plant's soil-moisture needs, so the app can honestly say "hold off, rain is coming" or "your moisture-lovers could use a drink". Frost warnings appear only during your region's growing season, heat advisories suggest morning watering, and a season-pace line compares the warmth your garden has banked since April 1 (growing degree days) to last year at the same spot, a real measured baseline, never an invented normal. Weather is looked up for your general area, never your exact address.
Where to find it: Signed in, in the Garden tab (/garden)
NewJuly 3
Sun & Shade: see how sunlight moves through your yard
A free sun and shade map for Canadian yards at joinhortus.com/sun, no login needed. Search your address, drag the pin onto your garden (address pins often land on the street), or tap any spot on the map to get a light verdict: full sun, part sun, part shade, or full shade, roughly how many hours of direct sun, and native plants that fit. The bands are traced over the real trees and rooflines around you using Government of Canada LiDAR elevation data, drawn softly over satellite imagery so you can still see your yard, with a Strong, Soft, or Hidden overlay control. Scrub through the hours of a day to watch shadows move, or drag a box over a whole bed. The map is honest about its limits: it tells you the elevation data ages, and reports light in bands rather than false precision.
Where to find it: Viewable at /sun
NewJuly 3
Added an optional Steward supporter tier; Hortus stays free for everyone
Hortus is free for every gardener, and it always will be. If you would like to help keep it that way, you can now become a supporter: pick the Friend ($25/yr), Steward ($50/yr), or Guardian ($100/yr) tier, or choose your own amount as a one-off or annual contribution. Nothing is gated behind it; contributions fund hosting and the ongoing curation of our native plant and wildlife data. Every supporter earns the Steward badge and can choose to be named on the new supporters page. Manage or cancel anytime from Settings.
Where to find it: Viewable at /supporters
NewJuly 3
A richer garden page, and control over who sees it
Your public garden page at joinhortus.com/g/your-username now shows when your garden blooms through the year and groups your plant list by type: trees, shrubs, wildflowers, grasses, and ferns. Prefer to keep your garden to yourself? A new "Make my garden page private" toggle in Settings takes the page offline any time. Behind the scenes, we are also getting ready to offer printed, weatherproof yard signs that tell passers-by what your garden does for local wildlife.
Where to find it: Signed in, in the Garden tab (/garden)
BetterJuly 3
Internal cleanup of unused nursery directory code
Removed an old unused component and clarified how the public nursery directory is served. No change to what you see.
NewJuly 3
Plant drops: preorder native plant kits from local growers
A new Plant drops page pools neighbourhood demand into regional preorder windows. Each drop pairs one local grower, shown front and centre with their logo, location, and website, with a few curated native plant kits: you see exactly which species are in each kit (with photos and links to their plant pages), the price, the order deadline, and where and when to pick your plants up. Signed in, drops are ordered by how far the grower is from your garden, and when a drop is open in your region a quiet reminder with the days left appears beside your plant list. Prepay on Hortus and the grower grows to order, so nothing is wasted. No drop near you yet? One click puts you on the notify list, and enough neighbours interested is exactly what brings a grower on board for your region. Find Plant Drops under Library in the header or from any public page.
Where to find it: Viewable at /drops
NewJuly 3
Workspaces for landscape professionals and researchers
Organization accounts on Hortus now come in three flavours on one shared framework. Conservation partners keep their campaign workspace exactly as it was. Landscape professionals get a new workspace built around their client book: every client garden with its plants, what the garden needs next, and a printable impact report to hand the homeowner. Research organizations get their data workspace at a new home, and old researcher links forward there automatically.
Where to find it: Signed in, at /pro (desktop)
NewJuly 3
A notification centre in the mobile app
The mobile app now has a bell in the map header that gathers everything that happened while you were away: new messages, updates and comments on events you RSVP’d to, responses to your seed offers, badges you earned, and fresh activity in your clubs. Notifications are grouped by day and week, and tapping one takes you straight to the right spot in the app.
NewJuly 3
Native plant nurseries on the mobile map
The mobile app now shows partner nurseries as amber pins on the map, matching the web map. A new Nurseries filter chip lets you view just the nurseries near you, and tapping a pin opens a sheet with the nursery’s name, address, whether it ships online, and a link to its website.
Where to find it: Viewable at /nurseries
FixedJuly 3
Sign-up that can never half-finish
Fixed a signup issue that could leave new accounts in a broken state. If anything went wrong partway through creating an account, the person could no longer sign up again with the same email. Account creation now completes fully or not at all, and anyone whose earlier signup was interrupted is guided through a quick step to finish setting up the next time they log in.
BetterJuly 3
The Hortus app is on the App Store
Hortus for iPhone is now live. If you visit on a mobile browser, you are pointed straight to the App Store before signing in, instead of after, so nobody types a password just to hit an app notice. Android is in the works; until then, mobile browsing points you to the app or your desktop.
Where to find it: On the App Store (iOS)
BetterJuly 3
Free for gardeners, forever
The pricing page now says plainly what has always been true: everything a gardener can do on Hortus is free, with no ads and no selling your data, and that does not change. Partner programs stay free as well.
Where to find it: Viewable at /pricing
FixedJuly 3
Site types that actually save
Creating a site now offers the full set of garden types (home garden, meadow, school plot, cottage, and more) and every choice saves properly. A couple of type options that could never be saved are gone, and the volunteer Education filter now finds school plots.
FixedJuly 3
Sturdier automated testing behind the scenes
Fixed an internal test-infrastructure issue that added error noise to every test run and hid some test results. No user-facing changes.
BetterJuly 3
Shared garden links open on phones, and cleaner filters
When someone shares their public garden or a community site, the link now opens properly in a phone’s web browser instead of stopping at the app screen, so it’s easy to peek before joining. And the filter chips across the wildlife guide, seed exchange, and bloom finder now match the clean, filled style used on the map.
BetterJuly 3
Mobile app polish for a smoother first week
A round of mobile fixes ahead of welcoming new gardeners: the Android back button now steps out of your messages instead of closing the app, your garden no longer flashes an error over plants that loaded fine, setting your location tells you when a search finds nothing or can’t reach the map service, and RSVP and sign-in problems explain what went wrong instead of failing quietly. Lists across the app also leave room for the phone’s home indicator so nothing hides under the edge of the screen.
BetterJuly 3
The mobile app wears its own icon
The mobile app now shows the Hortus sun mark on its soft off-white tile on your home screen, matching the App Store icon, instead of a generic placeholder.
BetterJuly 3
A more polished mobile app
Rounds of mobile polish: plant details, the wildlife guide, your photos, and volunteer opportunities now leave room for the phone’s home indicator, so the last card or button is never tucked under the edge of the screen. Lists and sheets scroll with proper momentum, the map controls and bottom sheets pick up the same soft frosted-glass look as the rest of the app, and the map’s filter chips are cleaner and easier to read at a glance.
BetterJuly 3
Read your garden by colour, at a glance
Your plants now show their bloom colour as a small dot in your plant list, and in the "your garden this week" card the plants in bloom are tinted with their flower colour, so you can take in your garden by colour at a glance. The card got a polish too: it reads more easily over the map, and its corner control now clearly minimizes it to a pill in the corner rather than looking like it closes it.
Where to find it: Signed in, in the Garden tab (/garden)
FixedJuly 3
The Android back button now does what you expect
On Android, the hardware back button now closes whatever is open, one layer at a time, instead of dropping you out of the app. Close a bottom sheet, a photo viewer, a plant page, a chat, or a search and back steps you out of just that; from a section it returns you to the map, and only from the map does it leave the app. iPhone behaviour is unchanged.
NewJuly 3
A map page built around your garden
The map page is reorganized around one idea: the left is your garden and only your garden. Your plant list, what to plant next, and your wishlist live there, and nothing else competes with them. The weekly look at your garden returns as a clear card on the right that leads with the single most interesting thing happening that week, then a short list where every line goes somewhere: a plant at peak opens its details, the spotlight names the wildlife it brings ("have you seen the ...?") with the choice to log a sighting or explore wildlife nearby, one timely thing to do, and real nearby activity. Community activity moved into that same card under a Neighbours tab, so your neighbours and their gardens are one tap away without crowding your plants. The card is easy to read, tucks into a small pill when you want the map, and reopens once at the start of each week. Clicking a hot zone on the pollinator corridor heatmap now reaches the gardens underneath instead of doing nothing.
Where to find it: Signed in, in the Map tab (/map)
NewJuly 3
Wishlist a plant, see who is offering it nearby
Adding to your wishlist is easier and more useful. The picker now shows plants to browse the moment you open it, instead of a blank search box, and you can still search or filter by type and by the wildlife a plant supports. And the moment you wishlist a plant, Hortus checks the seed exchange: if a gardener near you is already offering it, you will see how many and how far, so you can grow it from a neighbour’s seed instead of buying it.
Where to find it: Viewable at /plants
BetterJuly 2
Click a bloom gap to see what would fill it
On your garden report card, the gap months in the bloom coverage strip are now clickable. Tap one and you will see up to three region-native plants that bloom in exactly that month, each with an honest reason and a one-tap add that updates your strip live. And if you are already signed in, "Save my garden card" now does what it says: it adds your picks straight into your garden instead of sending you to a signup page you did not need.
Where to find it: Viewable at /calculator
BetterJuly 2
A cleaner map page, with your plants front and centre
The My Garden sidebar is back to doing one job: showing your plants. The "Watch for" wildlife list moved into the Wildlife panel with a chip preview on its sidebar row, and the plant-me-next suggestion is a single row under your plant list. Off-map pages (Plant Catalogue, Wildlife & Habitat, Garden Planner) are grouped under a new Library menu in the top navigation, and each opens in a new tab so you never lose your place on the map.
Where to find it: Signed in, in the Map tab (/map)
NewJuly 2
A weekly look at your garden in your inbox
Your weekly digest now stays fresh every week. It shows where each of your plants typically sits in its bloom range this month (just opening, at peak, or fading), spotlights one plant from your own garden and the wildlife it feeds, gives you one timely thing to do this week for your region, and, when there is activity, a real count of sightings logged and native plants added by gardeners near you.
NewJuly 2
Your weekly email is now about your garden
The weekly digest email has been rebuilt around your own garden, and it now opens with the single most interesting thing happening in it that week, like a plant of yours entering its typical peak window. From there it walks your garden right now (at peak, just opening, fading, and what opens next month), takes a closer look at one plant and the wildlife it feeds, gives you exactly one timely thing to do, and shows real nearby activity when there is any. No plant or species is mentioned twice, and the subject line changes with the week. If you have not added plants yet, it shows what is blooming natively in your area instead.
NewJuly 2
Your garden gets a report card
Pick a few plants for your area and Hortus now scores your garden. You will see a twelve-month bloom coverage strip (which months are covered, which have gaps, and which are the resting season), the biggest gap in your growing season, and the single plant to add next to close it, alongside the species at risk your yard could support. Save the card and it becomes your Hortus garden: the plants you picked land in your garden automatically when you sign up.
Where to find it: Viewable at /calculator
NewJuly 2
Plant me next: your best native plant to add
Your My Garden sidebar now suggests the single best native plant to add next, one that fills a gap month in your growing season and leads with its conservation value. Tap the name to see its full details, or add it in one step. The suggestion updates as your garden fills in, and shows an all-clear note when your season is well covered.
Where to find it: Signed in, in the Garden tab (/garden)
NewJuly 2
Watch for the wildlife your plants bring back
Your garden now shows a "Watch for" list of the species your plants can support, from the Monarch to at-risk bumble bees, drawn from your region. Spotted one? Log the sighting in two taps. Right after, you will see how your garden fits in: "your garden is one of N gardens supporting this species" near you, a real count of nearby gardens that grow its host plants or have logged it too.
Where to find it: Signed in, in the Wildlife view (/map/wildlife)
NewJuly 2
Local planting guides for GTA cities
New "what to plant in your city this month" guides for thirteen Greater Toronto Area municipalities, including Toronto, Mississauga, Brampton, Markham, and Oakville. Each guide shows the Ontario-native plants in bloom that month, the pollinators and species at risk they bring back, and a free plan for your own yard.
Where to find it: Viewable at /habitat
BetterJuly 2
Clearer top navigation
Simplified the top navigation into a flat set of four sections: Your Garden, Plants, Wildlife, and Community. The old "Explore" menu is gone. The native plant library now sits directly under Plants, the wildlife and habitat guide lives under Wildlife, and the nursery map stays where it belongs as a toggle on the map.
FixedJuly 2
Internal test reliability fix
Made a time-window test deterministic so the automated test suite stops failing intermittently. No user-facing changes.
BetterJuly 2
Groundwork for bloom succession and gap planning
Added a shared internal engine that maps a garden's bloom coverage across the year, finds the months with gaps in your active growing season, and ranks region-native plants that would fill them by conservation value. No user-facing changes yet; upcoming features will build on it.
BetterJuly 2
Internal development tooling update
Updated internal development environment configuration. No user-facing changes.
FixedJuly 2
Internal build cleanup
Removed a leftover internal configuration file from the retired video export pipeline. No user-facing changes.
FixedJuly 2
Bloom Finder now shows all matching plants
The Bloom Finder no longer caps recommendations at 30 plants. Filtering by colour (like cream) now returns every matching native species in your region. We also backfilled bloom month data for 150 species that were previously invisible to bloom-related features because their data was stored in a text field that not all pages could read.
Where to find it: Signed in, in the Bloom Finder (/map/bloom-finder)
FixedJuly 2
Tidier nursery map navigation
Removed a redundant link in the Nursery Map header that pointed back to the page you were already on.
Where to find it: Viewable at /nurseries
BetterJuly 2
Amber call-to-action buttons, now consistent app-wide
Completing the call-to-action refresh: the primary action button now uses the warm amber colour everywhere it belongs, including sign-up, onboarding, adding your first plant, RSVPs, and creating events, clubs, and seed offers. Log in, navigation, and secondary buttons stay forest green so the main next step always stands out.
NewJuly 2
Wildlife & Habitat: see what your yard could bring back
A new Wildlife & Habitat page at joinhortus.com/habitat shows the species at risk within range of your province or state, the native plants that help them most, and a postal-code-driven calculator that recommends a starter mix for your area. Coverage spans all 13 Canadian provinces and territories plus all 50 US states. Species data has been verified against COSEWIC, SARA, and ESA listings. Every plant page now shows a native range map and a synthesized description from growing data.
Where to find it: Signed in, in the Wildlife view (/map/wildlife)
BetterJuly 2
Clearer call-to-action buttons across the app
The main action on each screen, like Get Started, Add Plant, RSVP, Join, and Send Message, now stands out in a warm amber, while navigation and secondary buttons stay forest green. This makes the primary next step easier to spot on both the website and the mobile app.
June 2026
BetterJune 30
Smarter bloom coverage scoring
The Bloom Finder now looks at both how many different species are blooming and how many total plants you have. A month counts as covered if you have three or more species blooming, or three or more total plants in bloom. The header shows your species count and plant count separately, and an info tooltip explains how the score works.
Where to find it: Viewable at /calculator
NewJune 28
Invite neighbours and street corridors
New gardeners now land on a skippable invite step after signing up, with a personal referral link to bring neighbours on board. When two or more gardens sit on the same street, a public corridor page appears at joinhortus.com/street showing how the linked gardens connect. Gardens are shown by street name only, never an exact address.
NewJune 24
Partner Hub Sites tab redesigned with city map, events, and attention alerts
The Sites tab now opens with an interactive map of all garden sites across the city, followed by an at-a-glance funnel (gardens, plants tracked, team members, upcoming events). Each site is a card showing its plant count, team size, upcoming events, plant health breakdown, and volunteer status. A "Sites that may need support" section flags gardens seeking volunteers or with small teams. Partners can also restrict a teammate's access to specific sites when inviting them.
NewJune 23
Public garden pages and printable yard signs
Gardens that are open to sharing now have a living public page at joinhortus.com/g/your-username. It leads with the named species at risk the garden already brings back, like "Already a home for the Monarch Butterfly," names each one with its conservation status, shows what share of the plants support pollinators, birds, and caterpillars, and lists who is likely stopping by this month. Only an approximate area is ever shown, never your exact location. From your garden page you can choose from three printable yard signs: The Seasonal Story (what happens all year long), The Bold Badge (who your garden feeds), and The Food Chain (how the ecosystem works). Pick your favourite, print it or save as PDF, and stake it in your yard with a QR code so passers-by can scan it and start their own.
NewJune 22
Native Plant Finder: browse what grows, and who it brings back
A new public plant finder lets anyone explore the native plants that grow in their province or state and filter them instantly by sun, soil, type, what they feed, and whether they support a species at risk. Looking for another region? A built-in switcher covers Canada and all 50 US states. Every plant has its own page that leads with the strongest true thing it does, whether that is giving a home to a species at risk like the Monarch, hosting a specialist, or feeding the food chain. A "Who this brings back" section names the at-risk species and specialists each plant supports. No sign-in needed.
FixedJune 22
Updated homepage wildlife screenshot
The "Know what's visiting your garden" section on the homepage now shows the Wildlife Guide panel with species counts and specialist butterflies, instead of a duplicate of the garden map.
BetterJune 19
Platform tracking and admin dashboard
Added internal platform tracking to see how many users are on iOS versus the web. The admin dashboard now has a Platform tab showing user distribution, signups by platform, and activity split. Also fixed the weekly digest email so partner and researcher accounts no longer receive gardener-focused content.
NewJune 19
Added internal partner management dashboard
Added internal admin dashboards for monitoring partner accounts and campaign performance at a glance.
NewJune 15
Block users from Messages
You can now block someone directly from the Messages three-dot menu. Blocked users cannot send you messages, and their conversations are hidden from your list. Manage your block list from the gear icon in Messages (desktop) or the "Blocked users" link at the bottom of your conversation list (mobile). Unblock any time to restore the conversation.
FixedJune 15
Fix: bottom navigation and top bar restored on iOS
Fixed a bug where the bottom tab bar disappeared and the search bar was clipped under the notch on iPhones. The layout now uses structural flex positioning instead of nested fixed layers, which resolves clipping in iOS WebKit.
NewJune 9
Seed Exchange is now the Plant Exchange
The Seed Exchange is now called the Plant Exchange, and it covers more than seeds. When you create an offer you can pick Seeds, Cuttings, Plants, or Supplies (tools, pots, soil, and the like). Supplies no longer require selecting a plant from your garden. You can filter the exchange by any of those categories, and plant-specific filters (type, wildlife) stay hidden when browsing supplies. Existing links to the old exchange still work.
NewJune 9
Send feedback from the mobile app
You can now report a bug or share an idea right from Settings on the mobile app. Pick a type (Bug, Idea, or Other), write a quick note, and it goes straight to the Hortus team.
FixedJune 9
Mobile: working Field Journal, Bloom Finder picks, and seed filters
Your Field Journal now loads your logged wildlife sightings instead of showing an error. Tapping a recommended plant in the Bloom Finder opens Add Plant ready to add it to your garden. The seed exchange now filters by type (Seeds, Cuttings, Plants, Supplies). You can message a volunteer organizer directly from an opportunity. More tap targets across the login, register, and bloom screens meet the 44px minimum, and several scroll surfaces feel smoother on iOS.
FixedJune 9
Mobile audit fixes: editing your profile, club chat scroll, more
Editing your username and address from the mobile Profile tab now saves correctly. Club chat scrolls within its own panel instead of pushing the message box off-screen. Seed and cuttings exchange now has Plants and Supplies filters, and messaging a grower is disabled when contact info is unavailable. More tap targets across events, the bloom finder, registration, and club tabs raised to the 44px minimum, plus accessibility and padding refinements.
FixedJune 8
Mobile interactions now work properly
Like, comment, RSVP, request plant, share, and report buttons in the Community feed all work now. Plant detail actions (offer seeds, add to wishlist, log check-in, add photo) are fully wired up. Requesting a plant from a seed offer opens a message thread with the grower. Scroll issues on iOS that hid content behind the tab bar are fixed across all mobile screens. Tap targets on map controls, filter chips, and form inputs raised to 44px minimum.
BetterJune 5
Improved test infrastructure reliability
Upgraded container runtime and fixed stale test assertions to keep continuous integration running smoothly.
FixedJune 5
Find plants button works in bloom calendar on mobile
Tapping "Find plants for this month" in the bloom calendar now opens the Bloom Finder instead of doing nothing.
FixedJune 5
Account settings now work on mobile
Tapping Settings, Privacy, Notifications, or "All account settings" on the Profile tab now opens a native settings view instead of crashing. Includes privacy toggle, notification preferences, growing space, volunteering, password change, data export, and account deletion.
FixedJune 5
Map popups no longer clip behind the search bar on mobile
Tapping a pin near the top of the map now auto-pans so the full popup is visible below the search bar. Applies to garden, site, nursery, and property popups.
FixedJune 3
Mobile polish: bloom calendar native ratios, seed thumbnails, touch targets
The bloom calendar now shows accurate native vs non-native ratios for each month. Seed offer cards display plant thumbnails. Other user profiles show join dates. Tap targets across all community tabs, login buttons, and event actions now meet the 44px minimum for comfortable use on touch screens.
Tapping achievement badges on profiles now shows the badge name and description. Fixed scroll issues that prevented reaching the bottom of profiles and settings. Event attendee counts now display correctly, and marking yourself as interested or going updates the count in real time. Clubs tab loads more reliably. Forgot password works inline on mobile. Redesigned the bloom calendar with larger cards and clearer visual indicators.
BetterJune 3
High-res screenshots, smooth hero video, and partner page refresh
All feature screenshots re-captured at 3x resolution for crystal-clear display. Hero video re-recorded at 60fps with clean UI (no dev indicators or usernames). Bloom Finder screenshot updated with community gap filters. Partners page redesigned to match site-wide visual language. Partner one-pagers now accessible without login.
BetterJune 2
Branded hero for community sites without photos
Community site pages that don't have a cover photo now show a fresh spring-green background with hand-drawn botanical illustrations instead of a plain grey gradient. York Hill District Rain Garden also received its own cover photo.
BetterJune 2
Redesigned homepage and updated About page
Refreshed the landing page with a new hero section featuring an interactive corridor heatmap video, reorganized features into three themed sections (Grow, Connect, Plan) with scroll animations, and added a sticky navigation bar. The About page now shows live community stats instead of static numbers.
FixedJune 1
Fixed content cutoff and scroll issues on iPhone
Content on iPhone was being cut off behind the tab bar, home indicator, and Dynamic Island. Added proper safe area handling across all mobile screens so everything scrolls fully into view on all iPhone models.
May 2026
FixedMay 30
Fixed Settings crash on iPad
Resolved an issue where tapping Settings on iPad caused an error screen. Settings and profile pages now render correctly on iPad with the full desktop layout.
FixedMay 29
Hortus-branded app icon, splash screen, and iPad layout
Replaced the default placeholder icon and splash screen with Hortus branding in the iOS app. iPad now intentionally shows the full desktop layout with sidebar and map, while iPhone keeps the mobile tab-bar experience.
FixedMay 28
Responsive header nav for tablets and small laptops
The header navigation now collapses into a hamburger slide-out menu below 1024px. Previously, nav items overlapped and truncated on tablet and small laptop screens.
FixedMay 28
Signup page and console warning cleanup
Changed "Contact sales" to "Get in touch" on the signup page for researcher and partner roles. Fixed duplicate Supabase client warnings in the browser console by switching four components to the singleton client.
NewMay 27
Hortus Native Plant Nursery Map and referral tracking
Added the public Hortus Native Plant Nursery Map at /nurseries where anyone can find nurseries near them. "Where to Buy" in plant details now shows nurseries sorted by distance with tracked referral links. Nursery partners appear as pins on the main map too.
FixedMay 26
Badge display and profile menu fixes
Badge emojis now render consistently across all devices using Twemoji images instead of system fonts. The Properties menu item is only shown to users who are members of a shared garden property.
BetterMay 26
Cleaner filter design on map and wildlife guide
Redesigned wildlife guide filters with a segmented control for support status and labelled sections for type and conservation status. Map filter chips now let you toggle between residential gardens, community sites, seed offers, and events.
BetterMay 25
Mobile navigation redesign and interaction polish
Added a floating top bar on the map with your avatar, search, messages, and filters. Profile and messages are now accessible from any screen with a back button. Wildlife guide pills wrap properly on all screen sizes with a new support filter. Removed redundant pollinator corridors card from community and simplified garden stats.
BetterMay 25
App Store readiness polish
Fixed desktop layout flash on mobile startup, resolved push notification errors on simulator, changed Wildlife tab icon to Bird, added motion-safe prefixes across all mobile animations, and fixed scrollbar styling in 7 components. Updated App Store metadata and screenshots.
BetterMay 25
Mobile layout refinements
Restored the centre quick-action button in the tab bar, compacted the garden view so your plant list is visible above the fold, and fixed horizontal pill filters that were clipped on smaller screens.
NewMay 25
Wildlife tab and mobile polish
Wildlife Guide is now a dedicated bottom tab. Species images, spotlight cards for at-risk wildlife, scrollable pill filters across all mobile views, and clearer bloom gap breakdowns for your garden vs your neighbourhood.
FixedMay 23
Test suite maintenance
Fixed 42 test failures caused by recent mobile, localization, and haptics changes. Added global Capacitor mocks and localStorage cleanup for reliable test isolation.
BetterMay 22
Mobile UI polish for App Store
Removed Leaflet zoom controls on mobile, fixed badge icon fallback on profile, added tab bar border on community, fixed stats banner clipping on garden, and redesigned bloom calendar with gradient fills and native ratio bars.
NewMay 21
Mobile ship readiness
Location setup for new users, campaign attribution for partner links, growing space prompt, wishlist add with search, plant removal feedback, create seed offers and events, map kind filter (home gardens vs community sites), and message gardeners directly from map pins.
NewMay 21
Mobile app feature parity
All desktop features now work on mobile: plant details, add plant, garden photos, analytics, event details, seed offer details, pollinator corridors, profile settings, edit profile, volunteer, learn, share, guide, badge celebrations, and seasonal tips. The FAB quick actions switch to the correct tab.
BetterMay 21
Mobile map controls and core features
Map search bar no longer hides behind the notch. Locate and pollinator corridors buttons now work. Wildlife Guide and Bloom Finder are accessible from the Garden tab. Community feed shows nearby activity.
FixedMay 21
Map performance and leaflet marker fix
Replaced the map data cache to avoid a 2MB size limit that caused dev warnings. Leaflet colour markers now load without content security policy violations.
BetterMay 21
Mobile onboarding polish
Back buttons on login and registration screens let you return to the welcome page. Switching between "Log in" and "Create account" is now instant with no page reload. The feedback widget no longer overlaps buttons on mobile.
FixedMay 21
Local development login fix
Login now works correctly when developing locally without Upstash Redis configured. Auth cookies are properly set over HTTP in development mode.
NewMay 21
Offline support for mobile
Your garden, profile, and badges are now cached locally so the app works without an internet connection. A banner lets you know when you are viewing saved data.
BetterMay 21
Capacitor build configuration
Native app build scripts, splash screen settings, and build documentation added. Ready to generate iOS and Android projects for Xcode and Android Studio.
NewMay 21
Haptic feedback on mobile
Tab switches, bottom sheet snaps, pull-to-refresh, and quick actions now have subtle haptic feedback on supported devices.
BetterMay 21
Mobile design polish
Smooth view transitions when navigating between screens, active tab indicator on the bottom bar, frosted glass header, button press feedback, and motion-safe animation prefixes across all mobile components.
NewMay 21
Mobile tab navigation wiring
Bloom calendar and month detail views are now accessible from the Garden tab. Wildlife guide and field journal are reachable from the Profile tab. Messages and chat threads open from the Community tab header. All mobile sub-views include back navigation.
NewMay 21
Mobile clubs, challenges, and referral sharing
Browse and join gardening clubs, view active and completed challenges with progress tracking, and share your referral link with friends directly from the mobile Community tab and Profile screen.
NewMay 21
Mobile Bloom Finder
Find native plants to fill bloom gaps in your garden, now on mobile. See your bloom score, filter by plant type, bloom month, and wildlife support, and browse personalised suggestions with a touch-first interface.
BetterMay 21
Improved session cookie security
Auth session cookies now include the Secure flag, preventing them from being transmitted over unencrypted connections.
NewMay 21
Mobile pollinator corridors and garden analytics
View nearby pollinator corridor connections on mobile with garden stats, connection quality, and your ecological impact. A new analytics screen shows community plant totals, wildlife support, bloom coverage by month, growth trends, and neighbourhood comparisons.
NewMay 21
Mobile garden photos, learn articles, and volunteer section
Browse and upload garden photos in a mobile-optimised grid with full-screen lightbox. Read learn articles with category filters and clean mobile reading layout. Discover volunteer opportunities nearby with event RSVP and type filters.
NewMay 21
Mobile login, register, and profile viewer
Login and registration pages now display mobile-optimised forms on small screens, with larger tap targets and proper keyboard types. Viewing another gardener's profile on mobile shows a dedicated layout with stats, badges, plant list, and shared plants.
BetterMay 21
Mobile app gate
On mobile browsers, Hortus now prompts you to download the upcoming native app for the best experience. The full mobile UI is reserved for the Capacitor native app, with desktop web unchanged.
NewMay 21
Push notification support
Mobile app users can now receive push notifications for messages, seed requests, and events. Push notifications can be toggled on or off in notification settings.
NewMay 21
Mobile app navigation
Mobile users now see the full tab-based mobile experience (Map, Garden, Community, Profile) instead of a desktop-only gate screen. All core features are accessible from the bottom tab bar with a central quick-action button.
NewMay 21
Mobile bloom calendar
View your garden's year-round bloom coverage on mobile. A colour-coded month grid shows native vs non-native blooms, with expandable plant lists per month and a detail view showing what's flowering in your garden and neighbourhood.
NewMay 21
Mobile wildlife guide and field journal
Explore local wildlife species on mobile with category and conservation status filters. See which of your plants support each species, learn what actions help at-risk pollinators, and log sightings in a chronological field journal.
NewMay 21
Mobile profile screen
View your profile on mobile with garden stats, earned badges, and quick access to privacy, notification, and account settings.
NewMay 21
Mobile seed exchange
Browse and create seed offers on mobile. Filter by type, see wildlife tags, and message gardeners directly about available seeds and cuttings.
NewMay 21
Mobile community feed
Browse community activity on mobile with a mixed feed of photos, seed offers, events, and badge milestones. Filter by category with tabbed navigation.
NewMay 21
Mobile event detail and creation
View full event details on mobile with attendee lists, threaded comments, and one-tap RSVP. Create new events with category, date, time, and location fields.
NewMay 21
Mobile onboarding flow
New users are guided through a four-step onboarding: set your location, see nearby gardeners on the map, add your first plant from 380+ native species, and earn your First Plant badge.
BetterMay 21
Mobile E2E test infrastructure
Added Playwright configuration for mobile viewport testing (375x812). Mobile smoke tests verify pages load without errors at phone screen size, and navigation tests confirm the tab bar and quick action menu work correctly.
BetterMay 21
Shared mobile UI components
Added reusable loading skeletons, empty state displays, error banners, and pull-to-refresh for a consistent mobile experience across all screens.
NewMay 20
Mobile garden and plant detail screens
View your garden on mobile with stats, search, and sorting. Tap any plant for a full detail screen showing wildlife supported, health check-ins, and nearby gardeners growing the same species.
NewMay 20
Mobile map with ecological markers
The mobile map now shows ecological impact at a glance: markers display native plant percentage with colour coding (green for 75%+, sage for 50-74%). Tap any marker to see gardener stats, event details, or seed offers in a bottom sheet.
NewMay 20
Mobile messaging
Send and receive messages on mobile with a dedicated inbox and chat view. Unread conversations are highlighted, and messages appear in styled bubbles.
NewMay 20
Mobile app foundation
Added the mobile app scaffold with Capacitor integration, platform detection, and the core navigation shell including a tab bar, quick action menu, reusable bottom sheet, and mobile header. This is the foundation for the upcoming Hortus mobile app.
BetterMay 20
Upgraded rate limiting to distributed Redis
Rate limiting now uses a shared Redis store instead of per-instance memory, so limits are enforced consistently across all server instances. Added rate limits to plant catalogue search, username availability checks, and campaign visit tracking.
BetterMay 20
Smarter neighbourhood bloom gap detection
Bloom Finder now uses a median-based threshold to identify community bloom gaps. Months are only flagged as weak when they are genuinely underserved relative to the neighbourhood's own coverage pattern, rather than always highlighting the two lowest months. Communities with very few plants skip gap detection until there is enough data for meaningful results.
FixedMay 20
Fixed Bloom Finder showing plants from the wrong country
Bloom Finder and bloom calendar suggestions no longer include plants that are only found in another country. For example, Canadian gardeners will no longer see US-only species in their recommendations.
BetterMay 19
Tightened database access controls
Strengthened row-level security policies across 10 tables so that only signed-in users can read garden, event, badge, property, and partner data. Public campaign landing pages and community site visibility are unaffected.
BetterMay 19
Improved photo upload security and added browser security headers
Photo uploads now verify file contents match a supported image format (JPEG, PNG, or WebP) before accepting them. Photo queries are scoped to the requesting user. A Content-Security-Policy header (report-only) restricts which external resources browsers may load.
FixedMay 15
Plant common names now display on profile pages
Fixed a bug where plant cards on the profile Garden tab showed only the scientific name. Common names (e.g. "Spotted Bee Balm") now appear as expected.
FixedMay 15
Partner organizations page filters by country
US users now see a "More partners coming soon" card in the nurseries section instead of Canadian-only partners. Canadian users continue to see their local partners.
NewMay 15
Start a conversation by searching for a username
You can now start a new conversation from the Messages panel by clicking the + button and searching for any username. Previously, the only way to message someone was from their profile page.
BetterMay 15
Removed PWA install prompt from the guide
Hortus is desktop-only for now. Removed the "Install on Your Phone" section from the How to Use Hortus guide and stripped the web app manifest. Mobile apps are coming later.
FixedMay 15
Fixed duplicate "Hortus" in browser tab titles
Page titles like "Pricing | Hortus | Hortus" now display correctly as "Pricing | Hortus". The root layout template already appends the site name, so individual pages no longer include it themselves.
FixedMay 15
Fixed grammar on campaign dashboard for single participant
When exactly one participant signed up but had not logged a plant, the campaign dashboard said "haven't" instead of "hasn't". The verb now matches the subject count.
FixedMay 15
Registration page uses country-aware spelling
The Gardener role description on the registration page now shows "neighbours" for Canadian users and "neighbors" for US users, matching the pattern used elsewhere in the app.
NewMay 15
Welcome to Hortus challenge
New gardeners are automatically enrolled in the Welcome to Hortus challenge: add one native plant to your garden to complete it and earn the Hortus Welcome Challenge badge. Existing users who already have a native plant get credit retroactively.
NewMay 15
Upload multiple garden photos at once
You can now select and upload several photos in one go from the Garden Photos modal or a plant details view. A progress indicator shows how many photos have been uploaded, and any failures are reported individually.
BetterMay 14
Removed unused nursery inventory and referral tracking tables
Dropped the NurseryInventory and NurseryReferral tables that were never used in production. NurseryPartner (powers "Where to Buy") is unchanged.
FixedMay 15
Profile page nav dropdowns now match the map page
The profile page header was missing several navigation items (Bloom Finder, Field Journal, At Risk, Volunteering, Clubs, Start Here, Learn). All dropdowns now show the same options as the map page.
FixedMay 14
Improved plant search and tab filtering
Searching for a plant now ranks primary name matches above alternate name matches. The Vegetables and Herbs tabs now correctly filter results when a search query is active. Clicking "Browse Vegetables tab" from the nudge banner preserves your search text.
BetterMay 14
Added photos to hundreds of plants
Backfilled Wikimedia Commons photos for plants that were showing a placeholder icon in the catalog.
FixedMay 14
Fixed duplicate unread message emails
The unread message reminder was re-sending the same notification every day for messages that had not been read. Each message now triggers exactly one email notification.
FixedMay 14
Partner site click navigates to Sites tab
Clicking a site in the partner dashboard summary now switches to the Sites tab instead of attempting to load the map view.
FixedMay 14
Partner dashboard fixes
Fixed event details not loading for text-based event IDs in site pages. The "Time to first plant" metric on the Reach tab now shows actual days instead of a dash. Updated wording from "customers" to "participants" across the partner dashboard.
NewMay 14
Recurring events, organizer profile links, and RSVP button clarity
Events can now repeat weekly, every two weeks, or monthly. A "Repeats" dropdown in the create form lets you set the cadence and end date. Each occurrence appears as its own event with a recurring badge. Organizer names on event cards and detail views now link to their profile page. The attendance button no longer looks active by default: it starts as a neutral outline and switches to solid green only after you RSVP.
FixedMay 14
Species survival comparison always shows a value
The Hortus Avg column on the Species tab now shows a survival percentage for every tracked species instead of "--" when no removal data existed. If a species has living plants but no recorded deaths, the platform average is 100%.
FixedMay 14
Removed misleading campaign reach metric
The "Campaign reach: X km" stat on the Map tab has been removed. It measured the maximum distance between any two participants, which was meaningless when even one outlier skewed it to hundreds of kilometres.
BetterMay 13
Partner analytics now support US addresses
The partner dashboard, CSV exports, and geographic clustering now parse US ZIP codes alongside Canadian postal codes. Region labels display correctly for both countries (e.g. "Princeton, NJ (08540)"). The Reach tab and export descriptions adapt spelling for US partners.
BetterMay 13
Country-aware SEO meta tags
Search engines now see Open Graph locale tags for both Canadian and US English, hreflang alternate links for en-CA and en-US, and geographic region metadata. This helps search engines serve the right results to gardeners in each country.
BetterMay 13
Privacy policy updated for US users
The privacy policy now covers both Canadian and US jurisdictions. US users see CCPA/CPRA rights, state-specific disclosures (California, Virginia, Colorado, Connecticut), and US ecological data sources (USFWS, NatureServe, USDA). Canadian users continue to see PIPEDA rights. Content adapts based on your country setting.
BetterMay 13
Localized units and spelling for US users
Distances now display in miles and feet (instead of km and m) for US users across events, seed exchange, corridors, volunteering, wishlist, map, settings, and the partner dashboard. Spelling adapts too: US users see "neighborhood", "color", and "favorite" throughout the app, while Canadian users continue to see the Canadian spellings they expect.
BetterMay 13
Growing season adapts to your region
The bloom planner and coverage score now use your province or state to determine the growing season. Prairie and northern users see a shorter season (May to September), coastal users see a longer one (March to November), and Florida users see nearly year-round coverage. Previously, everyone shared the same March to October window.
NewMay 13
US conservation species and at-risk wildlife guide
US users now see 80 at-risk and ecologically important species in the Wildlife Guide, including ESA-listed butterflies, bumble bees, birds, moths, bats, and beetles. Each species shows which garden plants support it, with host plant data cross-referenced against the plant catalogue. Status labels and source links adapt to show ESA/USFWS information for US users.
NewMay 13
State-level plant nativity for US users
Plant recommendations and bloom calendars now filter by your specific US state. Over 390 species have per-state native and introduced data sourced from the USDA Plants Database, so the plants you see are actually native to where you live.
NewMay 13
Country toggle for pre-login visitors
A CA/US toggle in the footer lets visitors see region-appropriate content before signing up. The toggle auto-detects your locale and persists your choice. About, pricing, guide, and partner pages now adapt their copy based on your selected country.
BetterMay 13
Garden Planner improvements
Plant placements now autosave reliably so you no longer lose work when navigating away. You can place plants on top of each other to create dense patches. 3D view navigation is smoother on larger properties with faster panning and better zoom range. When leaving the planner with more plants placed than logged, you can update your garden in one click.
NewMay 13
Measurements adapt to your region
Distances, heights, and areas now display in imperial units (miles, inches, square feet) for US users and metric units (km, cm, square metres) for Canadian users. All data stays metric internally.
NewMay 13
US region support foundation
Hortus now recognises US addresses and state codes alongside Canadian provinces. Nativity resolution, growing seasons, bloom timeline coverage, and plant recommendations all adapt based on your region. Existing Canadian users are unaffected.
FixedMay 13
Partners can now create sites from the Partner Hub
Partner accounts with no existing sites were incorrectly shown a message saying sites are a partner-only feature. The "Set up your first garden" button now appears as expected.
NewMay 12
Traffic source breakdown for partner campaigns
The Reach tab now shows which websites referred visitors to your campaign page. Sources previously grouped under "Other link" can be expanded to see individual referring domains and their signup rates.
BetterMay 11
Plant names stay up to date automatically
Plant names now always come from the catalog, so when a name is corrected or updated in the catalog it is reflected everywhere immediately. Previously, names were saved at the time a plant was added and could become stale.
FixedMay 11
Plant search now finds plants by their alternate names
Searching for a plant by a common name like "Prairie Smoke" now correctly ranks that plant at the top, even if the catalog lists it under a different primary name. Previously, plants could be buried below less relevant results.
NewMay 11
Distance filter for community events
Browse Events now shows all upcoming events by default instead of only those within 50 km. Filter chips let you narrow results to 25 km, 50 km, or 100 km from your location.
BetterMay 10
Address search restricted to Canada and US
Searching for an address during registration, in settings, or when creating events now only returns results from Canada and the United States instead of worldwide.
FixedMay 8
Map controls no longer overlap modals and feedback widget
Fixed a z-index issue where the All/Residential/Community filter tabs on the map could appear on top of modals, dialogs, and the feedback widget on smaller screens.
FixedMay 8
At Risk species counts now match the list
The "You're Protecting" and "You Can Help" badge counts on the At Risk tab now match the number of species shown in each list. The spotlight species at the top is included in the appropriate list below.
FixedMay 8
View Site link in Volunteering now navigates correctly
The "View site" button on volunteer opportunity cards now reliably opens the site page instead of staying on the map.
BetterMay 8
Quantity hint on Add Plants
A short tip below the search bar reminds gardeners to estimate plant counts for large patches, since quantities help track wildlife support across communities.
BetterMay 8
Scientific names shown on Add Plants grid
The curated plant grid on the Add Plants page now shows scientific names in italics beneath each common name, making it easier to identify species at a glance.
BetterMay 8
Plant names standardized to VASCAN Canadian taxonomy
All 342 plant species in the catalogue now use the preferred common names, scientific names, and alternate names from the Database of Vascular Plants of Canada (VASCAN). Search still works with old names since they are preserved as alternates. Duplicate catalogue entries have been merged.
NewMay 8
Tap a plant quantity to type it directly
The quantity number between the - and + buttons is now tappable. Click it to type any number instead of clicking one button press at a time. Works in My Garden, Add Plant search results, and the Add Plant cart. Reducing quantity still asks what happened.
BetterMay 8
Improved analytics across gardener and partner features
Added usage tracking to login, plant removal, health check-ins, seed exchange, clubs, volunteering, feedback, settings, garden planner, neighbour profiles, and partner dashboard actions. Helps us understand which features people use most so we can make them better.
FixedMay 6
Partners and Partner Organizations pages no longer require login
Visiting /partners or /partner-organizations while logged out no longer redirects to the login page. These public marketing pages are now accessible to everyone.
FixedMay 6
Informational pages now accessible on mobile
Pages like About, Guide, Learn, Pricing, FAQ, and Partners are no longer blocked on mobile devices. Only the full app (map, garden planner, community features) still requires a desktop browser.
FixedMay 6
Mobile gate no longer triggers on narrow desktop windows
Resizing your desktop browser to a narrow width no longer shows the "Hortus is best enjoyed on desktop" screen. The mobile gate now detects actual mobile devices instead of relying on window size.
FixedMay 5
Narrower sidebar and per-user seasonal tips
The My Plants sidebar on the map is no longer oversized on wide screens. Seasonal gardening tips now show correctly for new signups, even if another account previously dismissed them in the same browser.
FixedMay 5
Start Here modal fits on laptop screens
The Welcome to Hortus modal is now more compact so the full content (including Jump In buttons) fits on standard laptop displays without scrolling.
NewMay 4
Garden Planner: 3D garden view, property tracing, and seasonal bloom timeline
The Garden Planner now lets you trace your property boundary on satellite imagery, place plants from your library or from the 300+ native species catalogue, and visualise your garden in both 2D map and 3D views. Scrub through months to see which plants are blooming and spot gaps in your growing season coverage. Detailed 3D plant models show trees, shrubs, grasses, ferns, and wildflowers with realistic geometry and glowing bloom colours.
BetterMay 4
Colour timeline layout and species tooltips
The Colour Coverage streamgraph now fills the full chart height instead of just the top third, dormant-month grey blocks removed for a cleaner look, and white flowers use an off-white tone so they show up against the background. Hovering a colour ribbon now shows which species contribute to that colour (capped at 5 names with a "+ N more" overflow).
NewMay 1
Colour Coverage timeline in Bloom Finder
Bloom Finder now has a Colour Coverage tab showing a flowing streamgraph of your garden palette through the seasons. Each flower colour appears as a smooth ribbon whose height reflects how many plants bloom in that colour each month. Dormant months are greyed out. Plants with multiple bloom colours (like Wild Columbine, which is both red and yellow) appear in each colour. Also added flower colour swatches to plant detail cards.
BetterMay 1
Start Here as first-login landing, wildlife stats clarity, UI fixes
New users now see the Start Here welcome page on first login instead of the popular plants grid. Wildlife Guide and Field Journal stats now label their denominators clearly (regional species vs active this season) so the numbers make sense together. Learn modal "Open full page" link fixed and now opens in a new tab. Start Here feature list trimmed for readability, tab order matches the dashboard, and "AI" removed from plant recommendations.
April 2026
BetterApril 29
At Risk redesign, Wildlife Guide cleanup, ecological data audit
At Risk tab redesigned with a Species Spotlight card that highlights the most urgent species based on conservation status, specialist needs, and current season. Species are now grouped by urgency level (Endangered, Threatened, Special Concern) instead of flat filter pills. Wildlife Guide score reframed from a confusing number to "X of Y species supported." Added Seed Exchange link to At Risk suggestions. Corrected factual errors in 5 conservation species entries and added 11 new species to the plant catalog, all validated against VASCAN.
BetterApril 27
Redesigned header navigation with Start Here and Learn modals
The header now shows Your Garden, Wildlife, and Connect as top-level navigation items instead of a single Community dropdown, each with a subtle pastel colour tint. A new Start Here button opens a welcome modal explaining what Hortus is and how to get started. Learn opens as an in-app modal so you can browse articles without leaving the map, with an option to open the full page. Messages is now an icon-only button to save space.
BetterApril 27
Added internal growth tracking dashboards
Admin dashboard now includes daily active users, weekly active users, and monthly active users metrics with time series charts. All charts upgraded to use recharts for consistent, readable axes.
BetterApril 25
Wildlife tabs polish, expanded species coverage, and conservation data audit
Specialist cards now show exactly which plants you grow and which you still need, with expandable lists instead of "+2" overflow. At Risk tab has section tabs so you can switch between "You're Protecting" and "You Can Help" without scrolling. Threat information and plant roles are visible on every card. Added 12 new species (Little Brown Bat, Transverse Lady Beetle, Eastern Wood-Pewee, and 9 more) covering bats, beetles, and birds across BC, Prairies, and Maritimes for comprehensive Canada-wide conservation data. Every COSEWIC-listed species now links directly to its SARA public registry assessment for full audit traceability. Inline glossary explains conservation terms (Endangered, Threatened, Special Concern).
BetterApril 25
Wildlife tabs polish, expanded species coverage, and conservation data audit
Specialist cards now show exactly which plants you grow and which you still need, with expandable lists instead of "+2" overflow. At Risk tab has section tabs so you can switch between "You're Protecting" and "You Can Help" without scrolling. Threat information and plant roles are visible on every card. Added 12 new species (Little Brown Bat, Transverse Lady Beetle, Eastern Wood-Pewee, and 9 more) covering bats, beetles, and birds across BC, Prairies, and Maritimes for comprehensive Canada-wide conservation data. Every COSEWIC-listed species now links directly to its SARA public registry assessment for full audit traceability. Inline glossary explains conservation terms (Endangered, Threatened, Special Concern).
NewApril 25
Unified Wildlife experience with three tabs
Wildlife Guide, Field Journal, and At Risk are now three tabs in one modal, each accessible from the Community dropdown. The Guide shows your wildlife score, specialists, and one-plant-away suggestions. Field Journal tracks what is active now. At Risk splits species into "You're Protecting" and "You Can Help" sections so you see your impact first and clear next steps second.
NewApril 24
Shareable deep links for every feature
You can now link directly to any feature with clean URLs like joinhortus.com/map/wildlife or joinhortus.com/map/bloom-finder. The browser address bar updates as you open and close features, so you can copy and share the URL.
BetterApril 24
Sites moved into Partner Hub
Your Gardens page is now the Sites tab inside Partner Hub, so all partner tools live in one place.
BetterApril 24
Bloom Finder: Accurate bloom periods and cleaner plant cards
Plant cards now show the full bloom range ("Blooms April through July") instead of only gap months. Traits like light, soil, and deer resistance display as tidy pill tags instead of a run-on comma list.
NewApril 23
iNaturalist links for plant and wildlife ID
Quick links to iNaturalist now appear in the Add Plant search and the Wildlife modal so you can look up species you are not sure about.
NewApril 23
Bloom Finder: Browse plants by month
You can now pick any active month in Bloom Finder to browse plants that bloom during that period, not just gap months.
FixedApril 23
Badge notifications now visible
Badge earned celebrations no longer hide behind the header bar.
BetterApril 23
Clearer ecological gap descriptions
The Community Analytics ecological gaps section now explains species diversity in plain language and tooltips no longer get cut off.
BetterApril 23
Pollinator corridors: native-only clarification
The pollinator corridor tooltip now explains that only native plants are counted, since they provide the pollen and nectar local pollinators depend on.
FixedApril 22
Bloom Finder: Community gaps now show results
The "Community gaps" filter in Bloom Finder now correctly shows plant recommendations even when your neighbourhood has strong overall bloom coverage.
BetterApril 22
Cleaner wildlife attraction list
The "How to attract" plant list in Wildlife Spotting now shows just the plant name and photo without extra action buttons.
NewApril 22
Partner Hub: Volunteer Network tab
Partners now have a dedicated Volunteers tab with location-based search (pick a site, enter a custom address, or search across all sites), radius filtering, interest and distance breakdowns, and broadcast outreach messaging. When sending outreach for a specific event, the message auto-populates with event details and a link to the site page so volunteers can RSVP directly.
BetterApril 22
Clickable links in messages
URLs in direct messages are now clickable links instead of plain text.
BetterApril 22
Community menu reorganized
The Community dropdown is now organized into three sections (Your Garden, Connect, Progress) so it is easier to find what you need as we add more features.
BetterApril 22
Map popup and volunteer improvements
Site popups no longer clip under map filter pills. Community site labels now say "Open to visitors" for clarity. You can toggle your volunteer status directly from the Volunteering modal, and partners can see nearby volunteers from the Partner Hub dashboard.
NewApril 22
Bloom Finder
New Bloom Finder combines the Bloom Calendar and Plant Finder into one tool. See your bloom coverage side by side with your neighbourhood, find gaps, and get smart plant recommendations based on your yard conditions, wildlife goals, and what your community needs most.
NewApril 22
Sort and filter My Plants
Sort your garden plants by name or date added. Filter by native, non-native, or edible to quickly find what you need.
BetterApril 22
Improved plant quantity feedback
When you reduce a plant quantity, the feedback dialog now uses friendlier, more natural language.
BetterApril 22
Scrollable wildlife suggestions
Wildlife attraction plant suggestions now show all recommended plants in a scrollable list instead of truncating with a "+N more" label.
BetterApril 22
Community site page reorder
Plants and impact stats are now shown at the top of community site pages for a better first impression.
BetterApril 22
Partner Hub redesign
Redesigned Partner Hub with tab-based layout (Overview, Campaigns, Events, Sites), unfolded event insights with attendance charts and category breakdowns, pastel-coloured site list, and support for events at non-owned locations.
NewApril 22
Events on landing page
Upcoming community events are now shown on site pages and map popups. Click to see details and RSVP inline without leaving the page.
NewApril 21
Added FAQ page
New FAQ page with answers to common questions about Hortus features, community sites, and privacy.
NewApril 21
Event analytics for organizers
Event organizers can now view attendance stats, RSVP trends, and attendee lists for their events.
BetterApril 21
Added internal growth tracking dashboards
New internal reporting tools for tracking platform growth metrics across users, plants, and engagement.
NewApril 21
Pollinator corridor heatmap with ecologically correct radii
The heatmap now scales each garden's support zone to a ~2 km radius matching native bee foraging ranges, adjusting dynamically as you zoom. A new Pollinator Corridors toggle on the map lets you turn it on from any tab, and an info tooltip explains the science. Smooth continuous zoom replaces the old step-based scrolling.
FixedApril 20
Heatmap no longer reveals exact locations when you zoom in
The plant density heatmap now rounds coordinates to ~500m precision and fades into a broad glow at street level, so it shows neighbourhood-level density without ever pinpointing a specific house.
FixedApril 20
Community sites now appear on bloom heatmaps
Plants logged at community stewardship sites (rain gardens, restoration plots, etc.) now contribute to the bloom heatmap. Previously only home-garden plants were plotted.
FixedApril 20
Event badge on site markers no longer clipped
The small calendar badge that appears on community site markers with upcoming events is no longer cut off or squished inside the circular icon.
BetterApril 20
Internal: faster pollinator corridors query
The pollinator corridors endpoint used to load every user with a location plus their plants and bloom data, then filter by distance in memory. It now uses a SQL bounding-box pre-filter so the database does the geographic narrowing first. Same results, much less work at scale.
BetterApril 20
Internal: faster neighbour activity feed query
The activity feed used to load every user with a location and then filter by distance in memory. It now uses a SQL bounding-box pre-filter so the database does the geographic narrowing first. Same results, much less work at scale.
BetterApril 20
Internal: pause map page polling when tab is hidden
The map page used to poll for unread messages every 30 seconds even when the tab was in the background. It now polls every 60 seconds, only when the tab is visible, and fires an immediate refresh when you return to the tab. Reduces background server work without changing what you see.
FixedApril 20
Modal dialogs centered properly and replace each other when you open a new one
Plant Finder, Bloom Calendar, Wildlife Spotting, and every other dialog on the map now center with proper breathing room below the header instead of pressing against the top. If you open a new dialog while another is already open, the first one closes automatically so the two never stack on top of each other.
FixedApril 20
Reverted a /map performance change causing visual glitches
An earlier change today that code-split modals on the map caused the modal backdrop to render incorrectly on some views. The change has been rolled back while the underlying cause is investigated. No data affected.
BetterApril 20
Map page loads nearly instantly on repeat visits
The map now caches community data (gardener pins and site pins) for 60 seconds on the server, so most visits render without re-querying the database. New plants and gardens still appear within a minute. The map itself still shows every Canadian gardener at every zoom level.
BetterApril 20
Map and catalog browsing feel snappier
Map loads and catalog lookups now benefit from CDN and browser caching, so repeat visits and tab switches return instantly instead of re-querying the database. No visible behaviour change, just faster.
NewApril 18
Public pages for stewardship sites
Every public garden now has a public page at joinhortus.com/s/[slug] with a click-to-zoom cover photo, a welcome paragraph the site owner can edit, upcoming events up top, a "What this garden supports" wildlife-impact summary (bees, butterflies, hummingbirds, songbirds, larval hosts, nectar sources, native-species %) rolled up from the plants logged there, and a steward listing. The Plants section leads with a bloom calendar showing how many species are in bloom each month, a featured card for "In bloom this [month]" or "Blooming next in [month]" with photo cards that include the bloom window and a short description, and a filterable roster grouped by plant type (Wildflower / Shrub / Tree / Grass / Fern) with chip filters for wildlife focus (Pollinators / Birds / Caterpillars). Visitors can tap Get involved to DM the site owner with a pre-filled intro, or tap Directions for turn-by-turn navigation. Events can be scoped to a specific site via a new "At site" dropdown on the event form; those events render at the site coords on the map with a calendar badge on the pin, and a "With events" filter on /map lets gardeners find sites with any upcoming events. Same-day event creation is now allowed, and the map pin popup shows the total number of upcoming events at each site. Each garden card on /properties now links straight to its public page so partners can share it.
NewApril 18
Audit log for every garden
Owners and admins can now open a full audit log for any garden they manage. Lists every plant added, photo uploaded, and team change (invites sent, roles changed, members revoked, ownership transferred) in a single timeline with actor and timestamp. Useful for partners with multiple teammates logging activity, or anyone who wants a paper trail of who did what at a site. Accessible from the "View audit log" link on the garden card.
NewApril 17
Invite teammates to your partner org
Partner accounts can now add teammates by work email from a new Team button on the partner dashboard. Owners and admins send an invite, the teammate gets a branded email, they set up their work Hortus account via a one-step signup (email pre-filled, no home address), and they land inside the org with the full partner view: dashboards, gardens, campaigns, map workspace. Owners can transfer ownership, change roles, or revoke access at any time. Personal Hortus accounts stay fully separate, so a gardener using Hortus at home can join their employer as a teammate with a different work email.
NewApril 17
Bulk import plants into a garden from a CSV
Partners managing large gardens (rain gardens with 50+ species, school gardens after a planting event) can now bulk-import plants from a CSV. Drag a file into the new modal on any garden card, preview each row with a green or red badge, and commit the valid ones in one tap. Up to 500 rows per import. Each row is fuzzy-matched against the plant catalog, and duplicates already at the garden bump the quantity instead of creating a second entry.
NewApril 17
Invite teammates to help steward a garden
Partners and community stewards can now build a small team around each garden. Open a garden from Your Gardens, click Manage members, and send an invite to a teammate by email. They accept from a banner on the Your Gardens page and can start logging plants there with owner, admin, or member permissions. Owners can change roles, transfer ownership, and remove members; admins can invite new teammates and manage non-owner roles.
BetterApril 17
Properties are now called "Gardens" across the UI
The multi-location feature for partners now reads as "Gardens" wherever you see it in the app. "Add a site" is now "Add a garden", "Your Sites (N)" is now "Your Gardens (N)", and the modals, empty states, and card actions all use the friendlier word. The backend terminology is unchanged. This is a copy-only fix to avoid the word "site" reading as "website" for partners who don't think in tech terms.
NewApril 17
Non-public gardens now show up on the map at approximate coordinates
Every Hortus garden is on the map, matching how home gardens already work: exact coordinates for admin-approved public infrastructure (like a conservation-authority rain garden), approximate coordinates (400 to 600m jitter) with an "Approx." badge for everything else. Nobody is invisible. Plants at non-public gardens contribute to the heatmap and the pollinator corridor at their approximate location, so the ecological work always counts while sensitive addresses stay protected.
BetterApril 17
Partner dashboard Overview: Plants per grower replaces the Neighbourhoods card
The Overview tab's third stat card now shows the average number of plants each active customer has logged (e.g. "~6"), a signal partners can act on: a low number suggests nudging dormant sign-ups to add more, a high number shows the cohort is planting deeply. Replaces the old Neighbourhoods count, which wasn't informative and was showing 0 on some campaigns. Regional breakdown is still available on the Reach tab.
FixedApril 17
Partner site workspace no longer shows the public campaign banner
When a partner is inside one of their own site workspaces (e.g., a TRCA rain garden), the Add Plants modal no longer shows the "Add the plants you got from [partner] — they'll be linked to the campaign" banner. Partner stewardship sites are separate infrastructure from public plant-giveaway campaigns, so plants added to a Property now skip campaign attribution entirely. Normal campaign attribution still works for gardeners logging plants into their home gardens.
FixedApril 17
Internal: Playwright MCP container startup fix
Follow-up to the Playwright MCP Compose service — the entrypoint override pointed at the wrong cli.js path and the container exited immediately on start. The service now relies on the image's default entrypoint and only passes the HTTP server flags.
BetterApril 17
Internal: Playwright MCP server for interactive browser control
Added an opt-in Docker Compose service that runs Microsoft's Playwright MCP server (headless Chromium), letting Claude drive a real browser during development without requiring Node.js on the host. Separate from the existing Playwright regression test suite, which keeps running as before. Disabled by default — only starts when explicitly requested via the `mcp` compose profile.
FixedApril 17
Faster, glitch-free profile page on load
Fixed a hydration mismatch on your own profile page that caused the invite section to flicker or briefly re-render on page load. Your referral link now resolves cleanly from the first paint — no more console errors, and the page settles in instantly.
NewApril 16
Partner site workspace, custom pin logos, and community/residential map filter
Partners who manage multiple sites can now click "View site map" on any site card to open the /map view scoped to that location — a top banner shows "Logging to: [site]" and any plant added lands at the site's coordinates with one tap back to the dashboard when done. Each Property can carry a custom pin logo (TRCA demo sites now render with the TRCA mark, not a generic pin), and a new filter chip at the top of the map lets anyone show just residential gardens, just community sites, or both. Corridor entries for community sites drop the @ prefix (they aren't user handles), and the public heatmap now counts plants at their true site coordinates instead of attributing them to whichever partner account created them. Small copy polish across the Sites nav ("Your Sites (N)" instead of "Sites (N)", "Add a site" without the +) and a tighter partner-only empty state for gardener accounts.
NewApril 16
Rain gardens and community sites now show up on the public map
Plants logged to a public Property (like a conservation-authority rain garden) now render at that site's exact coordinates on the map instead of the account owner's home address. Each site appears as its own distinct pin; when a partner uploads an approved logo, that logo shows as the map marker so their sites are instantly recognisable. Public Property pins skip the usual 400-600m location obfuscation because public infrastructure is meant to be found. Pollinator corridor calculations now include these sites as nodes too, giving a more accurate view of habitat connectivity across a region. Zero-property users see identical behavior to before.
NewApril 16
Property switcher + plant-add destination banner
Once you have more than one property, a switcher appears in the /properties page header so you can tell at a glance which site is the current context, and your selection carries over to the Add Plants modal. The Add Plants modal also shows a prominent "Adding to: [site name]" banner for anyone with a property, with an inline switcher right there so a plant can't silently land on the wrong site. Your active site persists across refreshes in the same browser. If you don't have any properties, nothing changes.
NewApril 16
Partners can manage multiple properties from one account
Organizations that steward multiple sites (rain gardens, meadows, community gardens, school plots) now have a Properties page at /properties where they can add and manage each location separately. Each Property has its own address and type so plants logged there render at the correct site on the public map rather than the account holder's personal address. Privacy-first: regular properties stay obfuscated on the public map; public infrastructure (like conservation-authority rain gardens) can be marked as publicly visible by Hortus admins, with custom map pin branding. The next PR adds a site switcher so you can tell which property you're adding plants to. Built for TRCA and other civic stewardship partners.
BetterApril 16
Internal: schema foundation for multi-property community accounts
Groundwork for upcoming community account support (for example, conservation authorities stewarding multiple rain gardens across their region). Adds Property and PropertyMember tables with role-based access (owner, admin, member), an optional Property link on Plants, an audit trail column for tracking which staff member added each plant, and admin-approved custom map marker columns on User. No user-facing changes yet; UI, API routes, map integration, and staff invites ship in follow-up PRs.
FixedApril 10
Campaign stats now consistent across landing page and partner dashboard
Fixed a mismatch where the campaign landing page and partner dashboard showed different numbers for plants and participants. Both now count plants by quantity (not just entries) and include all customers who signed up through the campaign. The partner Overview tab now shows a clear at-a-glance flow: signed up, logging plants, plants tracked.
BetterApril 10
Internal: admin view switcher for partner and researcher dashboards
Admins can now access all partner program dashboards and the researcher dashboard directly from a new dropdown in the header. A small navigation bar also appears at the top of partner and researcher pages so admins can jump between views without getting stranded. No changes for regular users.
BetterApril 9
Internal: branded reels video export pipeline
New internal tooling that renders branded 1080x1920 animated reel compositions via Remotion and exports them as Instagram-ready MP4s. The first reel ("Zero vs 534") uses peer-reviewed data (Tallamy & Shropshire, 2009) to make the case for native plants in 8.5 seconds. Five more hero reels and a daily automated plant spotlight will follow.
FixedApril 8
Map sidebar shows your full plant breakdown again
The "My Plants" panel in the map sidebar was only showing a single line ("80 plants, 24 species") and missing the rich chip breakdown. It now shows the same four colourful chips you see on your profile — native, non-native, vegetables, herbs — so you can see at a glance what your garden looks like without leaving the map.
NewApril 8
Log your vegetable garden, not just your flower garden
Hortus now supports vegetables and herbs alongside native flowers. The Add Plants modal has three tabs (Flowers, Vegetables, Herbs) and we seeded the catalog with 37 common species (tomato, kale, pepper, basil, thyme, and friends). Vegetables and herbs skip the pollinator framing (a tomato isn't grown for the bees) and are never counted against your native percentage, so growing food alongside flowers doesn't cost you the Wildlife Hero badge. Your profile now shows a breakdown of native plants, vegetables, and herbs below the stats strip, and there's a new Kitchen Gardener badge for your first vegetable or herb. More varieties and categories are coming soon, shaped by conversations with gardening experts.
BetterApril 8
Wildlife Habitat now lives in your hero card, not behind a tab
The Wildlife panel — supported wildlife types and food sources — used to be hidden behind a tab most people never clicked. It's now permanently visible inside your profile hero card, right between your stats and your achievements. A 4-segment progress bar shows how many of the 4 main wildlife types your garden supports (Bees, Butterflies, Hummingbirds, Songbirds), with each row showing the species count and a "Also feeds" line for nectar / larval host plants. Empty wildlife types are dimmed so you can see what to add next. The dedicated Wildlife tab is gone, so the tab bar is also cleaner: Garden, Achievements, Photos, Activity.
NewApril 8
Messages: see unread at a glance, delete chats, report bad behaviour
The Messages icon in the top bar now turns red and shows a count when you have unread DMs — same style as the Admin badge — so you'll never miss a neighbour reaching out. Inside Messages, every conversation now has a small menu (••• on the right of each row) with two new options: Delete chat removes a conversation from your view without affecting the other person's copy, and Report user lets you flag harassment or spam with a quick reason. Reports go straight to the Hortus team for review.
A handful of cleanups based on user feedback. (1) Wildlife chips on plant cards now sit cleanly under the scientific name instead of breaking up the title row. (2) Removed the gray count badges next to the Garden / Achievements / Wildlife / Activity tabs on profile pages — they looked like unread-notification reminders even though they were just inventory totals. (3) Merged the duplicate Cutleaf Coneflower / Green Headed Coneflower entries (same species, Rudbeckia laciniata) — Cutleaf Coneflower is now the canonical name with Green Headed Coneflower searchable as an alias. (4) Fixed the Map sidebar Community badge that kept showing 10 unread items even after you opened the tab — race condition between localStorage and the first activity fetch.
BetterApril 7
Clearer wildlife icons, invasives no longer claim benefits, and a full data audit
The wildlife support chips on plant cards now use distinct, labelled icons (🐝 Bees, 🦋 Butterflies, 🌺 Hummingbirds, 🐦 Songbirds, 🦌 Deer-free, 🐛 Larval host, 🌼 Nectar) instead of look-alike silhouettes — so you can actually tell at a glance what each plant supports. Invasive species like Norway Maple no longer display wildlife benefits at all (we don't want to encourage planting them). The Wildlife tab on your profile now separates the four wildlife types it counts toward your score (bees, butterflies, hummingbirds, songbirds) from the bonus food sources (nectar, larval host) so the "X of 4" total finally matches what's shown below. Behind the scenes: every wildlife claim in our plant catalog is now backed by a citable source (Lady Bird Johnson Wildflower Center, NWF Garden for Wildlife Keystone Plants, Rutgers E271 deer-resistance ratings, GloBI, VASCAN). We re-audited 8 species, corrected over-claims, and merged the duplicate Anise Hyssop / Giant Hyssop catalog entries.
BetterApril 7
Simpler pricing + real partner directory
Refreshed the pricing page around what we're actually doing: bootstrapping Canada's first residential biodiversity dataset, with simple "get in touch" cards for plant catalog API access and custom research setups. Combined the old Nurseries and Landscapers footer links into one Partner Organizations page that now features Yardsticks Nurseries (our first official partner) with their logo and socials front and centre.
NewApril 7
Add a photo when you remove a plant
The "why did you remove this plant?" popup now has an optional photo upload — snap a quick shot of the pest damage, the new container garden, or whatever's going on. Photos help campaign partners see what's actually happening in the field (if the plant was tagged to their program), and admins get a dedicated Removals tab to browse every submission.
FixedApril 7
Profile URLs no longer break on stray spaces
Fixed an issue where signing up with an accidental trailing space in your username would silently break your /@username profile link and username login. Usernames are now trimmed and validated when your account is created, so what you see is what gets saved.
BetterApril 7
Profile page redesign + custom referral codes
Your profile page is now organized around a hero card with key stats above the fold (Plants, Native %, Species, Badges) and tabs for Garden, Achievements, Wildlife, Photos, and Activity — no more scrolling past 9 stacked cards to find your plants. Click a badge in the achievements strip to see what it's for right inline, no navigation needed. The referral box now shows your live referral count and lets you customize your code with a friendly name like GREENGARDEN — checks availability as you type, just like usernames at signup. Plus: every new account now gets a referral code automatically (this was silently broken since launch).
BetterApril 7
Achievements now live on your profile page
Your level, garden score, and badges have moved from a separate modal to your profile page — everything in one place. The level chip in the top bar now takes you straight to your profile, where you can see your progress toward the next level, all the badges you've earned, and the ones still waiting to be unlocked.
BetterApril 7
Every badge now triggers a celebration
Previously, only badges earned by adding plants showed a celebration toast — badges from check-ins, building corridors, or having a plant submission approved were silent or used a different look. Now every badge you earn (no matter how) shows the same big celebration so your contributions never go unnoticed.
NewApril 7
New badge: Hortus Helper 🤝
Earn the Hortus Helper badge the first time you submit feedback. We've also given badge celebrations a fresh look — when you earn a new badge, you'll see a more prominent celebration so you know your contribution counts.
BetterApril 7
Reply to feedback directly from the admin panel
When users submit feedback, admins can now reply inline from the Feedback tab. The user gets a personalized email letting them know their feedback was reviewed, and the reply also appears in their messages inbox. The Admin button now shows a notification badge when there's pending work to check.
FixedApril 6
Fix plant selection lost when clicking search results
Clicking on an already-selected plant in search results no longer removes it from your selection. Previously, this could silently drop plants you had added.
FixedApril 4
Campaign participant count now includes sign-ups
The "gardeners joined" count on campaign landing pages now includes everyone who signed up or logged in through the campaign — not just those who have logged a plant yet.
BetterApril 4
Feature usage analytics
We now track how gardeners interact with every feature on the map page — from opening modals to switching tabs to logging wildlife spottings. This helps us understand which features are most valuable so we can keep improving the experience.
FixedApril 3
Campaign modal copy update
The campaign plant logger button now reads "Select from our favourites above or search" to match the province favourites section.
BetterApril 3
Better QR campaign tracking
QR code scans from print materials (business cards, flyers) now carry full campaign context through every action in the session — so sign-ups and partner inquiries are automatically attributed to the campaign that brought the visitor.
BetterApril 3
Province favourites and dashboard improvements
The Add Plants modal now shows curated native plant picks for your province with "nearby" badges showing how many local gardeners grow each species. Partner dashboards no longer expose street addresses in geographic data. Modals now stay open until you close them with the X button — no more accidental dismissals.
BetterApril 3
Smarter plant search
Plant search now finds results even when you use extra words (e.g. "common evening primrose" finds Evening Primrose), hyphens vs spaces (e.g. "black eyed" finds Black-Eyed Susan), or run words together (e.g. "blanketflower" finds Blanket Flower). Results are ranked by relevance so the best match appears first.
FixedApril 3
Add Plants modal fixes and Plant Guardian badge
Fixed search results showing quantity 1 instead of 0 for unselected plants, and the +/- buttons now add and remove plants directly. Fixed a bug where selecting multiple plants only saved the last one. Renamed the Tree Guardian badge to Plant Guardian to accurately reflect that any plant from a community program earns it.
BetterApril 3
Campaign page polish and partner social buttons
Campaign landing pages now show a warm background glow, proper Hortus branding, transparent partner logos, and branded social follow buttons (Instagram, Facebook) that promote the partner. Co-branded business card QR codes now redirect straight to the campaign page.
NewApril 2
Gardener value prop one-pager
Added a printable one-pager for gardeners showcasing four key features: the neighbourhood map, wildlife insights, community-powered plant recommendations, and local seed swaps. Both gardener and nursery flyers now use standardized QR tracking codes.
FixedApril 2
Yard Sticks business card fixes
Corrected the phone number on the Yard Sticks co-branded business card and fixed logo transparency so the PDF imports cleanly into Canva without a white background appearing.
BetterApril 2
Print-ready co-branded business cards
Co-branded partner business cards can now be exported as print-ready PDFs. The Yard Sticks Nurseries card is the first to ship with a clean transparent logo and a one-command PDF export script.
BetterApril 2
Redesigned campaign landing pages
Partner campaign pages now feature a prominent partnership banner with both logos, a warm welcome message, and a streamlined conversion flow. Screenshots walk new users through the signup process. The design adapts to each partner's brand colour.
BetterApril 2
Multi-select plant logging everywhere
The add-plant modal now supports selecting multiple plants at once with quantity controls, whether you came from a campaign link or the regular homepage. Pick your plants, adjust quantities, and log them all in one go.
BetterApril 2
Improved campaign plant logging
Plants from a campaign link now skip onboarding modals and open a dedicated logging flow. You can select multiple plants at once with quantity controls, all attributed to the campaign. The flow uses the partner name and clear messaging about what gets linked.
FixedApril 2
Fixed password reset flow
Password reset emails now correctly link to the reset page. Also updated the reset email with branded Hortus styling.
BetterApril 2
Contact sales click tracking
Added analytics tracking to the "Contact sales" links on the registration page to measure partner and researcher leads from in-person flyer QR codes.
BetterApril 2
Updated partner value proposition copy
Refreshed the partner value-prop page to better reflect the plant lifecycle feedback partners get from Hortus.
NewApril 1
Printable partner one-pager
Added a printable nursery partner flyer with dashboard screenshots and QR code, linked from the partners page.
NewApril 1
Homepage screenshot walkthrough
The homepage now shows a visual tour through every feature with real screenshots — so you can see exactly what Hortus looks like before signing up. Also added a dedicated partners page at /partners with a nursery-focused walkthrough.
March 2026
FixedMarch 30
Fixed geo-region filters and dormant seasons
The researcher heatmap now shows all of Canada when "All Canada" is selected, not just the GTA. Dormant season months are now consistent across gardener and researcher views for all regions.
FixedMarch 30
Fixed species survival comparison
Species with no platform-wide data no longer show a misleading "100% (0 plants)" Hortus average — they now show "No data" instead.
BetterMarch 30
Smoother campaign map and time slider
Switching between Clusters and Heatmap on the partner dashboard is now instant — no more jarring position jump. The time slider animation glides smoothly instead of stepping, and a new waveform sparkline under the scrub bar shows weekly sign-up volume at a glance.
NewMarch 30
Admin notification for plant submissions
When a user submits a new plant for catalog review, the admin now receives an email with the plant name and submitter — no more checking the queue manually.
FixedMarch 30
Cleaner weekly digest email
Removed the oversized social media banner from the weekly garden update — the email now opens with a clean, compact header. Also fixed colours appearing washed out for users reading emails in dark mode.
NewMarch 30
PostHog analytics integration
Added privacy-respecting product analytics to understand how people use Hortus. Tracks key moments like signing up, logging plants, and reading Learn articles — with a reverse proxy to ensure reliable data collection. Person profiles are only created for logged-in users.
NewMarch 30
Partner dashboard: heatmap view and campaign spread timeline
The Map tab on the partner dashboard now offers a heatmap view that instantly shows where your customers are concentrated. A new time slider lets you watch how your campaign spread geographically week by week — hit play to see the story unfold. Partners can also see conversion rates per traffic source, drop-off tips, species survival compared to the Hortus platform average, and what other plants their customers are growing.
BetterMarch 29
Better search engine visibility for Learn articles
Learn articles now include structured data for Google rich results, social preview images for sharing on Twitter and LinkedIn, and proper sitemap entries so search engines can discover every article.
FixedMarch 29
Smoother campaign sign-up flow
When you scan a QR code or click a campaign link, logging your plant is now seamless — even if you haven't set up your garden type yet. The app also now shows which campaign you're logging for instead of asking you to pick one.
NewMarch 29
Campaign attribution: branded landing pages, QR codes, and partner funnel analytics
Partners can now share a campaign link or QR code with customers. When someone scans the QR code on a plant tag, they land on a branded landing page showing live stats and a one-click CTA to join. Each partner can customize their landing page with their own logo, website link, and brand colour. The Reach tab on the partner dashboard shows the full picture at a glance: visitor count, plants tracked, survival rate, top species, geographic reach, traffic sources (QR vs social vs direct), conversion rates, and week-over-week growth. A direct link to the landing page is now in the dashboard header so partners can preview what customers see.
FixedMarch 25
Bloom calendar now only suggests native plants
The "Fill Your Gaps" section in the Bloom Calendar was recommending invasive species like Norway Maple. It now uses province-aware nativity checks so you only see plants native to your region.
Garden score now factors in badges earned (+10 per badge), making diverse engagement count toward your level. Expanded from 4 tiers to 6: Seedling → Sprout → Gardener → Naturalist → Steward → Ecosystem Builder, with higher thresholds that make progression feel meaningful. The badges page got a full redesign — expandable cards with full descriptions, a level roadmap, and score breakdown.
NewMarch 24
Badges now auto-award + toast notifications
Badges are now awarded automatically when you add plants — no more waiting. A toast notification slides in to celebrate when you earn a badge or reach a new achievement tier. All existing users have been backfilled with their earned badges.
NewMarch 24
Plant submission curation flow
Submitted plants now go through a curation workflow. Admins can enrich catalog entries with photos, descriptions, and wildlife tags before approving. Approved submissions earn the submitter a Field Scout badge and a notification email. Rejected submissions are cleanly removed from the garden. Pending plants are no longer visible on profiles to other users.
BetterMarch 23
Add Plant improvements
Native plants now show a green "Native" badge in search results. Quantity selector lets you add multiple at once. The info popup no longer duplicates content, and light requirements display properly. Sugar Maple and 48 other species now have full catalog descriptions.
BetterMarch 23
Admin email templates colour-coded by schedule
Email template cards in the admin dashboard now show colour-coded left borders matching their send schedule — amber for instant, blue for daily, green for weekly.
FixedMarch 23
Removed placeholder Learn article
Removed the demo "Partner Spotlight: Sample Nursery" article from the Learn page. Remaining articles are real editorial content by the Hortus team.
BetterMarch 23
Homepage and About page refresh
Cleaned up the homepage — removed redundant sections and renamed "Government & Conservation" to "Partner Organizations" to better represent nurseries and other partners. Updated the About page with current data source attributions and added nurseries to The Bigger Picture.
BetterMarch 23
Wildlife cards show which plants support each species
The "Who Stopped By" wildlife cards now show a "Supported by your garden" badge. Tap it to see exactly which of your plants attract that species. Your Field Journal also shows how many species your garden supports.
BetterMarch 23
Learn page redesign
The Learn section now feels like part of the app instead of a separate blog. Consistent header, cover images, compact layout, and easier to navigate.
BetterMarch 23
Polished email design
All Hortus emails now feature the Sol Invictus logo, brand colours, and a cleaner layout. Weekly digest emails include the brand banner.
NewMarch 23
Plant info button in search
When browsing plants to add, tap the (i) icon to see details — bloom period, height, soil preference, and habitat — without leaving the search.
NewMarch 21
PostHog analytics integrated
Added PostHog for product analytics — pageviews, session recordings, funnels, and drop-off analysis to better understand how people use Hortus.
FixedMarch 21
Friendlier Mining Bee
The Mining Bee in "Who stopped by?" got a glow-up — swapped the intense macro shot for a fluffy tawny bee hanging from flowers. Much less threatening.
BetterMarch 21
Improved internal growth tracking
Cumulative users chart now shows daily granularity over 90 days instead of monthly buckets, making it easier to see the impact of specific events and campaigns.
NewMarch 21
Feedback widget
A floating feedback button now appears in the lower right corner of every page. Tap it to report a bug, suggest a feature, or share any thought — it goes straight to the team.
BetterMarch 21
Cleaner plant badges
Removed the "Introduced" badge from plant search results. Nativity is now shown only as "Native" (based on your province) or "Invasive" — clearer and more accurate.
NewMarch 21
"Pots & containers" filter when adding plants
When browsing plants to add, you can now filter by "Pots & containers" under Good For to see only plants that'll thrive without ground soil. Auto-enabled for balcony growers.
NewMarch 21
Growing space setup
Hortus now asks where you grow — in a garden or on a balcony — so we can recommend plants that'll actually thrive in your space. You can update this anytime in Settings.
NewMarch 21
Container suitability for plant catalog
Plants in the catalog are now tagged as container-suitable or ground-only, based on root type, height, and growth habit. This will power smarter recommendations for balcony growers.
NewMarch 21
Username availability check at signup
You now see real-time feedback as you type your username — whether it's available, taken, or invalid. No more surprises after hitting Create Account.
FixedMarch 21
Fixed nearby garden count
The "popular plants from nearby gardens" count no longer includes your own garden, so the number accurately reflects your actual neighbors.
FixedMarch 20
Improved location detection at signup
Your province is now automatically detected from your address when you sign up, improving regional plant recommendations and community features.
BetterMarch 20
Smoother signup experience
New users are now logged in instantly — no more email confirmation step. The plant quickstart now asks "Want to add any popular plants?" instead of feeling like a required step, and you can always get back to it from your empty garden.
NewMarch 20
Internal growth tracking dashboards
Added geography view to internal admin dashboards with a Canada map showing user distribution, metro leaderboards, and expansion opportunity detection.
BetterMarch 20
Search shows alternate name matches
When you search by a regional name like "Mayflower", the result now shows why it matched — e.g. "Trailing Arbutus — Also known as Mayflower". No more confusion when the official name differs from the name you know.
BetterMarch 20
Smarter message notifications
Message emails are now less noisy. You get an instant email only when someone messages you for the first time. For ongoing conversations, a daily digest tells you how many unread messages you have. Toggle in Settings > Notifications.
NewMarch 19
Wildlife expanded: 11 new species for BC, Prairies, and boreal Canada
Anna's Hummingbird, Steller's Jay, Western Tiger Swallowtail, Cedar Waxwing, and 7 more species added to the wildlife roster. BC and Alberta users now see locally relevant wildlife in "Who stopped by?" Total roster: 39 species.
Hortus now supports neighbourhood-level stats for five major metros: GTA, Ottawa–Gatineau, Metro Vancouver, Greater Montreal, and Calgary. Each metro has sub-region definitions for local breakdowns. Growing seasons are calibrated per city.
NewMarch 19
Catalog expanded to 290 native species across Canada
Added 54 new native plant species for BC, Alberta, and Quebec — including Western Sword Fern, Salal, Red Flowering Currant, Blanket Flower, Bunchberry, and more. Every province now has 100+ species in the catalog. Plant nativity is now resolved per province using VASCAN data.
BetterMarch 19
"Who stopped by?" now shows all local wildlife
The wildlife spotting feature now shows every species active in your area this month — not just the ones your plants attract. A "Your garden" badge highlights species your native plants specifically support. Added 5 new birds: White-breasted Nuthatch, Downy Woodpecker, Dark-eyed Junco, Red-winged Blackbird, and Mourning Dove.
BetterMarch 19
Wildlife tags verified against botanical sources
All 236 native plant wildlife tags cross-referenced against NC State Extension, Illinois Wildflowers, Xerces Society, and other authoritative databases. 70 new tags added and verified, including deer resistance for toxic/aromatic species and songbird tags for seed-producing plants.
BetterMarch 18
Refreshed plant descriptions and photos
All native plant descriptions, soil preferences, and habitat info have been rewritten for clarity. Photos updated with fresh Wikimedia Commons images. UI labels now show "Bloom Time" and "Preferred Soil Type" for better readability.
NewMarch 15
Partner dashboard: Customer Segments
Nursery partners can now see their campaign participants segmented by experience level (Seedlings, Growers, Cultivators) and native commitment. Includes auto-generated actionable insights for cross-sell opportunities, mortality risk alerts, geographic hotspots, and demand concentration — plus species pairing analysis for bundling.
BetterMarch 6
Every plant now has a photo
All 262 plants in the catalog now display a Wikipedia-sourced photo. No more blank placeholders — browse, search, and identify species at a glance.
NewMarch 6
25 popular non-native plants + green native border
Hostas, hydrangeas, peonies, and 22 more common non-native plants are now in the catalog so you can log your full garden and see an honest native percentage. Native plants in your garden list now sport a green left border — no label needed.
BetterMarch 5
Wildlife tags cross-referenced against ecological databases
All 237 plant wildlife tags audited against GloBI, VASCAN, and Rutgers E271. 371 new tags added, 448 confirmed as verified, 13 misspelled scientific names corrected, 232 VASCAN taxonomy IDs populated, and deer resistance expanded from 58 to 106 plants using peer-reviewed data.
BetterMarch 4
Simplified pricing & researcher access
API pricing simplified to Free, Starter ($39/mo), and Pro (contact sales). Researcher and Partner accounts are now sales-led — contact us for access to the analytics dashboard and biodiversity data exports.
NewMarch 4
Wildlife spotting: Who stopped by your garden?
See which bees, butterflies, hummingbirds, and songbirds should be visiting based on what's blooming in your garden. Mark species as spotted to build your personal field journal. Community stats show what your neighbours are seeing.
Wildlife & Habitat cards are now clickable — drill down into any wildlife type to see a searchable species table with native badges, garden counts, and total quantities. Trends & Growth charts now use interactive recharts with proper Y-axis numbers and hover tooltips instead of basic SVG.
NewMarch 4
Email notifications with Resend
Get notified when someone sends you a message, is interested in your seed offers, or before events you RSVP to. Weekly digest emails summarize nearby garden activity every Monday. All notifications are opt-in with per-type toggles in Settings.
NewMarch 1
Learn tab — guides, stories, and research
New /learn section with curated articles about native plant gardening in the GTA. Browse by category (guides, stories, research, partner spotlights), read featured articles, and discover plants mentioned in each piece. Built for SEO and designed to welcome guest bloggers.
February 2026
NewFebruary 26
Brand assets page and consistent footer
New /brand page with downloadable logos, app icons, colour palette, typography, and usage guidelines. Footer tagline standardized to "Every garden counts." across all pages, and Brand link added to every footer.
NewFebruary 26
Community data endpoints in paid API tiers
Paid API tiers now include live community data — not just the plant catalog. Starter gets community stats and top species. Pro adds monthly growth and native adoption trends. Business unlocks regional breakdown by GTA municipality.
NewFebruary 26
Researcher Dashboard v2: 6 tabs, geo-filtering, and rich analytics
The Research Portal now has 6 tabs: Overview with 8 KPI cards, sparklines, and quick insights; Species Explorer with a sortable, filterable, exportable species table; Heatmap Analytics with react-leaflet integration and full HeatmapControl (density + bloom modes); Wildlife & Habitat with community-wide pollinator coverage analysis and bloom gap detection; Trends & Growth with cumulative line charts and native adoption tracking; and enhanced Data Export. A geo-filter bar lets researchers focus on any GTA sub-region across all tabs.
BetterFebruary 26
Researcher personas & updated documentation
The research portal now formally supports four use cases: academic researchers, ecologists, landscape architects, and urban planners. Updated pricing, about, and guide pages describe what each sub-persona gets from the dashboard. Internal persona definitions live in docs/PERSONAS.md.
BetterFebruary 25
Advanced heatmap analytics now a researcher feature
Plant density and bloom density heatmaps are now exclusive to researcher accounts. Free gardeners still see a heatmap overlay when viewing pollinator corridor analysis. This change makes advanced spatial analytics a key value add for our research partners.
BetterFebruary 25
Simplified Garden Score
Garden Score is now simpler: each native plant earns 3 points, non-native plants earn 1 point. Everyone earns points for any plant they grow, but native plants are worth 3x more.
NewFebruary 25
Consistent plant type filters everywhere
Category filter chips (Wildflower, Shrub, Tree, Grass/Sedge/Rush, Fern) are now available in Seed Exchange, Add Plant, and Wishlist — matching the map filter for a consistent experience.
NewFebruary 23
Expanded How to Use Hortus guide
The guide now covers all three roles: Gardener, Researcher / Analyst, and Campaign Partner. Partners get 8 dedicated sections covering onboarding, impact dashboard, exports, and program management. Gardener sections now include plant removal feedback, wildlife browsing, PWA install, and bug reporting.
NewFebruary 23
Program switcher & self-serve creation
Partners managing multiple programs can now switch between them from a dropdown in the dashboard header — no more navigating back to the list. Partners can also create new programs directly from the dashboard.
BetterFebruary 23
Improved logging timeline chart
The partner dashboard logging timeline is now a proper interactive chart with hover tooltips, clean axis labels, and responsive sizing. Daily registration data is easier to read at a glance.
BetterFebruary 23
Clickable map participants
Participant markers on the partner dashboard map now link to gardener profiles — click any marker to view their public profile in a new tab.
NewFebruary 21
Plant removal feedback & milestone badges
Removing a plant now asks a quick question — did it not make it? Your feedback helps partner organizations track survival rates. Plants that stick around earn milestone badges at 6 months, 1 year, and 2 years. Health check-ins have been replaced with this lighter approach.
NewFebruary 21
Partner Impact Dashboard
Program organizers can now view aggregated impact data for their planting programs — total plants, survival rates, species breakdown, and geographic spread. Includes a CSV export with no individual user data exposed.
NewFebruary 21
Program Partnership Tracking
Hortus now supports community planting programs. When you join a program like Take Root 2026, you can tag any plant as a program plant — your garden journal becomes an impact tracker for the organization behind it. Look for the green toggle when adding plants.
NewFebruary 21
Plant Health Check-ins
Tap a status on any plant to log how it's doing — thriving, growing, struggling, or didn't make it. Each check-in gives you a care tip tailored to your plant type. Track your plant's health over time with a mini timeline, and earn the Plant Parent badge on your first check-in.
NewFebruary 21
Full Activity Feed with filters
Tap "See All Activity" at the bottom of the Nearby Activity widget to open a full filterable view. Filter by type (plants, photos, events, offers, badges, new gardeners), adjust the search radius, and scroll to load older activity.
BetterFebruary 21
Quick photo uploads from Garden Photos page
The Garden Photos empty state now shows your plants with one-tap camera buttons — no more hunting through menus to add your first photo. Photo captions are always visible.
NewFebruary 21
Clickable activity feed & activity on profiles
Nearby Activity items are now fully clickable to view that gardener's profile. Every profile page shows a Recent Activity section with plants added, photos, badges, and seed offers.
NewFebruary 21
Browse plants by wildlife type
Filter plants by what they attract — bees, butterflies, hummingbirds, or songbirds — when adding plants or browsing your wishlist. No search query needed.
FixedFebruary 21
Heatmap shows all properties & auto-enables from corridors
The plant density heatmap now covers every garden on the map (previously missing ~78% due to a data limit). Expanding the corridor card auto-enables it.
BetterFebruary 21
Stronger location privacy for private gardens
Private garden pins are now offset 400-600m (was 100-150m) from your real address — several blocks away instead of next door. Violet pins distinguish approximate locations.
NewFebruary 20
Settings page, data export & account deletion
Manage your account from /settings: update your password, toggle location privacy, export all your data as JSON, and delete your account.
NewFebruary 20
Bug report form on error pages
When something goes wrong, you can now report the issue directly from the error page. Reports go to the admin dashboard for triage.
BetterFebruary 20
PWA support & larger Twitter card
Hortus can now be added to your home screen on mobile. Shared links on Twitter/X now show a large preview image.
NewFebruary 20
Photo uploads & garden feed
Upload photos of your plants and garden. Browse a community feed of recent garden photos from nearby gardeners.
FixedFebruary 20
Fix email confirmation & password reset (PKCE)
Resolved issues with email confirmation links and password reset flows not completing correctly.
BetterFebruary 20
Collect garden address during sign-up
New sign-up flow asks for your garden address upfront so your location is set from day one.
NewFebruary 19
Wildlife tagging UI & garden recommendations
See which pollinators, songbirds, and butterflies your plants support. Get recommendations for what to plant next to fill wildlife gaps.
FixedFebruary 19
Fix map clustering for private users
Private gardens no longer appear as phantom clusters on the neighbourhood map.
BetterFebruary 19
Rewrite messaging: Grow, Connect, Discover
Refreshed all homepage and onboarding copy around the three pillars: grow with purpose, connect with neighbours, discover your landscape.
FixedFebruary 19
Security hardening across all endpoints
Added UUID validation, input sanitization, and generic error messages across every API route.
FixedFebruary 19
Fix registration when email confirmation enabled
Resolved a bug where new users could not complete sign-up when email confirmation was turned on.
NewFebruary 19
Researcher export paywall with Stripe
Researchers can now purchase export licenses to download anonymized biodiversity datasets via Stripe checkout.
NewFebruary 18
Personal bloom calendar with gap analysis
See your garden's bloom coverage month by month and identify gaps where adding a new species would extend pollinator support. Now part of Bloom Finder.
NewFebruary 18
Public plant data API with docs
A public REST API for accessing aggregated, anonymized plant data. Interactive docs at /data/docs.
NewFebruary 18
API key management
Researchers and developers can generate and manage API keys from their settings page.
BetterFebruary 17
Brand refresh: Fraunces font, amber CTAs
Updated typography to Fraunces display font and refreshed call-to-action buttons with warm amber accents.
NewFebruary 16
Native plant classification & admin review
Plants are now automatically classified as native or non-native. Admins can review and approve community-submitted catalog entries.
NewFebruary 16
PlantCatalog structured schema
Introduced a structured catalog with bloom periods, height ranges, soil preferences, and wildlife tags for every species.
NewFebruary 15
Launch: security, polish, username login
Initial public launch with secure authentication, username-based login, polished UI, and core plant tracking features.