Skip to content

shelf@2.0.0

Choose a tag to compare

@DonKoko DonKoko released this 03 Jul 12:24
· 730 commits to main since this release
03e3c25

🚀 Shelf 2.0

Shelf 2.0 introduces Quantitative Assets, bringing inventory-style asset tracking to Shelf while preserving everything that makes individual asset management great. Alongside it comes major booking improvements, a dramatically more capable Companion app, and dozens of performance, reliability, and security improvements across the platform.


📦 Quantitative Assets (Major Feature)

Until now, every asset in Shelf represented a single physical item.

With Quantitative Assets, a single asset can now represent multiple units while still supporting bookings, custody, locations, reporting, audits, and activity history.

Examples:

  • 50 HDMI cables
  • 200 Batteries
  • 30 Microphones
  • 500 Safety Helmets

Instead of creating hundreds of identical assets, you can now manage quantities directly.

Highlights include:

  • ➕ Quantity-aware assets throughout the platform
  • 📊 Quantity-aware reporting and analytics
  • 📦 Quantity-aware custody
  • 📅 Quantity-aware bookings
  • 📱 Full Companion app support
  • 📄 Quantity-aware exports
  • 💰 Quantity-aware valuation calculations
  • 🔍 Quantity support across search, filters and availability

This fundamentally expands the kinds of inventories Shelf can manage.


📱 Companion App

The Companion app received its largest update yet.

Native booking management

You can now:

  • Create bookings
  • Edit bookings
  • Check assets in and out
  • Manage booking lifecycle
  • Better booking lists and workflows

Native scanner parity

The scanner now supports nearly everything available on the web, including:

  • Batch scanning
  • Kit workflows
  • Booking workflows
  • Check-in / Check-out
  • Scan Asset Mode

Better authentication

  • Native SSO login
  • PKCE authentication
  • Universal Links / Android App Links
  • Better password reset flow

Quality of life

  • Asset tags
  • Quantity support
  • Kit improvements
  • Camera selection
  • Deep linking
  • In-app review prompt
  • Better telemetry and reliability

🚀 Features

  • feat: Quantitative Assets
  • feat(booking): progressive checkout
  • feat(bookings): keep assets available when added to an ongoing booking
  • feat(bookings): context-aware bulk actions on booking item list
  • feat(bookings): let users set start/end dates in the duplicate dialog
  • feat(bookings): improve item sorting and per-slice QT checkout status
  • feat(bookings): add require explicit check-in setting
  • feat(booking): show asset tags in booking list
  • feat(webapp): add kit-as-unit option for booking check-in progress
  • feat(reports): add Top Booked Kits report
  • feat(locations): add sorting and multi-field search to locations index
  • feat(audits): create audits from selected locations
  • feat(audits): create audits from selected kits
  • feat(asset): qty-aware value display across UI, aggregates, exports & mobile
  • feat(companion): native scanner parity
  • feat(companion): mobile booking create, edit & lifecycle
  • feat(companion): kit detail parity
  • feat(companion): add tags to asset create/edit
  • feat(companion): quantity display & quantity custody actions
  • feat(companion): inline tag creation
  • feat(companion): Universal Links & App Links
  • feat(companion): in-app review prompt
  • feat(auth): SSO login for native mobile app
  • feat(mobile-sso): PKCE support
  • feat(security): baseline security response headers
  • feat(analytics): server-side PostHog funnel events
  • feat(webapp): track mobile companion adoption
  • feat(bulk-actions): clear selection after successful bulk actions

🐛 Fixes

  • fix(webapp): prevent P2028 timeouts on bulk asset/booking operations
  • fix(webapp): eliminate N+1 when saving asset custom-field values
  • fix(bookings): adding a kit to an ongoing booking no longer checks out other kits
  • fix(bookings): enforce overlap conflict checks on scan-add and mobile checkout
  • fix(bookings): kit duplication, quick-checkout progress and asset search
  • fix(bookings): lifecycle progress improvements
  • fix(bookings): sync start date during navigation
  • fix(assets): bulk QR download reused stale assets
  • fix(assets): advanced availability improvements
  • fix(custom-fields): reject invalid ISO date imports
  • fix(server): cap runaway loader revalidations
  • fix(database): enable RLS on MobileAuthCode
  • fix(storage): multiple stability improvements
  • ...plus dozens of additional fixes across bookings, assets, kits, mobile, QR workflows, imports, Stripe, Sentry and server reliability.

🧹 Chores

  • Companion 1.0.3 release
  • React Router updates
  • Dependency updates
  • Build tooling improvements
  • Documentation improvements

❤️ New Contributors

Full Changelog
https://github.com/Shelf-nu/shelf.nu/compare/shelf@1.20.3...shelf@2.0.0