What's new
Every released milestone for SpritzLog, newest first.
- The Explore strikers board now ranks all-time streaks and no longer offers a period filter that could not change them
- Explore now searches the public catalogue, so a signed-out visitor can look a perfume up and open its page
- The wardrobe sorts by most or least worn, and every row shows the perfume's all-time wearing count
- A brand or perfume activity card lists your wardrobe entries and wearings as tables, one row per bottle or wearing, each opening its own page
- The landing page shows two silent recordings of logging a wearing and adding a wardrobe entry
- Editing a wearing can clear its wear type, weather, or colour
- Any signed-in user can now edit a perfume's details, and manual verification and vouches are retired
- Perfume pages now show the average sprays per wearing across the community, and wearings with no recorded spray count are left out of the mean
- Profiles, perfumes, brands, and wardrobes now carry their own preview image when shared, and wearings and wardrobe entries render as shareable record images
- A wearing page has a share menu that copies its link or downloads the square image
- Weather, wear type, colors, and per-layer spray counts are public on every wearing page, not only for its owner
- Perfume pages open with a redesigned hero showing the bottle artwork, and the activity card names what a viewer owns
- Perfume search ranks a complete word-by-word match first, so dior sauv finds Dior Sauvage
- Logging a wearing opens its details dialog straight away instead of a notification action, and the wardrobe entry editor can pin and unpin the perfume
- Empty profiles and wardrobes no longer offer controls that cannot act, and a new owner gets the first-log call to action
- Brand and perfume pages now credit the creator's display name
- New accounts now confirm their email address before signing in, and confirmation mail is sent by SpritzLog itself with the same branding as password reset mail
- Opening a confirmation or reset link no longer replaces the session already open in the browser, and the one-time token in the link is never sent to other sites as a referrer
- An expired, invalid, or already-used confirmation link opens a resend form on the login page, and signing in before confirming offers the same form
- The resend form answers identically whether or not an address has an account, so it cannot be used to check who has signed up
- Profiles now report an all-time Sprays total next to the wearing count
- Statistics with a zero value are hidden and an all-zero stats card is omitted, so a new profile no longer opens on a grid of zeros
- Every page now exposes a single main landmark, so assistive technology announces one content region instead of two
- Physical wardrobe items are now tracked individually, so multiple bottles, decants, samples, and finished items can each have their own details and edit or delete controls
- Wearing and wardrobe entry pages now put the perfume identity first in a consistent, easier-to-scan layout
- Profile statistics now link to the listings behind each count, and wardrobe totals match the individual items shown
- Expanded profile rows now keep every perfume in a layered wearing together, even across different brands
- Owners can delete a wearing at any age; only editing remains limited to the edit window
- Perfume search results now mark unverified entries with an accessible status indicator
- Feedback now opens in a responsive dialog or drawer with a close control and returns focus to its opener
- Short lists no longer show pagination controls that cannot change the page
- Missing URLs now show a dedicated not-found page with a clear route back
- Sign-up and password reset now explain and enforce stronger password requirements without revealing whether an email is registered
- The footer now links to SpritzLog's social profiles, and shared login and What's new links have dedicated preview artwork
- A new What's new page lists every release, linked from the version in the footer
- A wearing can be deleted from its detail page while its edit window is open, with a confirmation dialog and a redirect home
- Perfume and brand pages load wearings a page at a time instead of all at once, and a layered wearing is never split across pages
- Layered wearings no longer offer relog, which would have logged the whole layer again
- Viewers who cannot vouch now see the same highlighted badge on unverified entries as the vouch button, instead of a muted one
- Password reset and password-changed emails now carry the SpritzLog logo
- The signed-in home page moved to /home and the public landing page now owns /, while /dashboard redirects to /home
- Mobile fixes: modals stay inside the viewport, the add perfume form scrolls, and the wardrobe, settings, profile, and layered wearing layouts fit narrow screens
- Pages load faster: fonts are self-hosted and preloaded, the landing and Q&A pages are prerendered, analytics starts after the page is ready, and heavier UI loads on demand
- The wearings CSV export is served with an encoded file name and hardened response headers