Releases: 248Tech/badshuffle
v0.0.12
BadShuffle 0.0.12 Release Notes
Release date: 2026-04-05
Summary
0.0.12 is the operations, AI, and engine release. It adds a guarded Rust engine layer, quote-scoped AI workflows, live internal notifications and team chat, deeper inventory operations, pull sheets, QR-backed product identity, and more complete admin/settings/help surfaces.
Highlights
- Rust engine workspace with guarded inventory availability/conflict integration, pricing-engine scaffolding, lifecycle controls, parity reports, and release gating
- Quote Assistant foundation with quote-aware AI help, provider/model routing, and richer item-description/suggestion workflows
- Team Chat, Team Groups, live notifications, notification settings, and stronger presence-aware coordination
- Managed local Onyx support plus managed local Ollama support for BadShuffle AI features
- Inventory upgrades including set-aside workflows, batch AI edit UX, better search, mobile/desktop grid controls, serial numbers, QR identity, and product sales totals
- Pull-sheet generation, aggregate pull export for overlapping jobs, and scan-aware internal picking views
- New Clients and Venues directory pages with stronger quote-linked relationship syncing
- Expanded Admin > System controls, guided Help documentation, and a dedicated Appearance settings page
Notes
- This remains a
0.xpre-release line - Rust is introduced as a guarded internal engine service; Node/Express and SQLite remain the primary application/runtime layers
- Managed local AI features depend on the target machine having the required companion runtime support available
- Formal legal e-sign compliance remains separate from the current internal audit/evidence trail
GitHub Release Body
0.0.12 is the operations, AI, and engine release.
Added
- Rust engine workspace with guarded availability/conflict integration, pricing scaffolding, parity checks, lifecycle controls, and release gating
- Quote Assistant, Team Chat, Team Groups, live notifications, notification settings, and stronger internal coordination workflows
- Managed local Onyx and managed local Ollama support for BadShuffle AI features
- Inventory set-aside workflows, AI batch editing, improved search modes/ranking, serial numbers, QR-backed product identity, and product sales totals
- Pull-sheet generation, aggregate pull export for overlapping jobs, and scan-aware internal picking views
- Clients, Venues, Help, Appearance settings, and runtime-oriented admin controls
Improved
- Quote/project operator workflow with pull sheets, assistant tools, column controls, clearer conflict status, and stronger mobile behavior
- Inventory usability across mobile and desktop, including layout controls, selection behavior, and search relevance
- Admin/runtime operations for Rust, Onyx, and Ollama
- Release readiness with guarded parity verification and cleaner startup behavior
Credits
BadShuffle 0.0.12 builds on and integrates with important external software and platforms, including React, Vite, Express, SQLite/sql.js, Rust, Mapbox, Onyx, Ollama, bwip-js, Sharp, IMAPFlow, Nodemailer, and optional hosted AI providers including OpenAI, Anthropic, and Gemini.
v0.0.11
BadShuffle 0.0.11 Release Notes
Release date: 2026-03-31
Summary
0.0.11 is the visibility-and-operations release. It adds maps, analytics, fulfillment, profiles, team presence, permission-aware navigation, and a more scalable backend structure for the quote domain.
Highlights
- Operator Maps workspace backed by Mapbox, quote geocode cache fields, and a dedicated maps API
- Sales analytics foundation with date-range, status, and staff filtering
- User profiles, persistent presence, and a Team workspace with roster, recent activity, and YTD performance context
- Fulfillment item rows, check-in actions, and internal fulfillment notes for confirmed projects
- Module-level role permissions with shared client/server gating
- Larger backend refactor into
server/db/*, focused quote services, and reusable query/repository helpers - Dedicated
AI/Api/documentation for auth, inventory, quotes, public catalog usage, and e-commerce integration planning
Notes
- This remains a
0.xpre-release line - Maps require a configured
MAPBOX_ACCESS_TOKEN - Formal e-sign compliance remains separate from the current internal audit/evidence trail
v0.0.10
Release date: 2026-03-29
Summary
0.0.10 is the workflow-expansion and product-polish release. It improves client-facing quote presentation, section-aware quote composition, inventory availability realism, audit-oriented contract signing, navigation responsiveness, and upload governance.
Highlights
- Quote item areas can now act as real sections with their own titles, rental periods, subtotals, duplication, and deletion behavior
- Public quote pages now present grouped sections, item descriptions, and grouped subtotals in a more client-friendly way
- Signed vs unsigned project state is clearer in project totals/balances and in client-facing re-signature flows
- Signed contract artifacts now retain versioned PDFs with stronger audit metadata
- Inventory item editing can stay in-context via a right-side slideout
- Core app navigation is faster thanks to route prefetching and idle warm-up
- File uploads can now prompt operators to extend the allowed file type list from Settings when new file formats appear
Notes
- This remains a
0.xpre-release line - The repo is now better aligned for GitHub/release discoverability via README, metadata, badges, and release-note refreshes
- Formal e-sign compliance remains a separate concern from the current internal audit trail implementation
v0.0.9
BadShuffle 0.0.9 Release Notes
Release date: 2026-03-26
Summary
0.0.9 is the security hardening and quote-workflow refactor release. It tightens auth/public/file behavior on the backend, extracts the largest quote flows into reusable services and helpers, and continues the QuoteDetail/QuoteBuilder decomposition so future work can land with less coupling and less drift.
Highlights
- Stricter auth and public-surface handling around JWT, extension-token access, file serving, and public quote payloads
- Upload validation now uses detected file signatures instead of trusting browser MIME values
- Quote email attachments are restricted to files already linked to the active quote
server/routes/quotes.jsnow delegates orchestration to:server/lib/quoteActivity.jsserver/services/itemStatsService.jsserver/services/quoteService.js
- Shared quote pricing/totals logic moved to
client/src/lib/quoteTotals.js - QuoteDetail and QuoteBuilder have been broken into smaller modules, hooks, and focused panels for easier iteration
Notes
- This remains a
0.xpre-release line - The backend extraction work is complete in this release
- Frontend refactor follow-through and broader responsive/theme QA remain active follow-up work
v0.0.8
v0.0.8 is the navigation, admin continuity, UX polish, Windows host packaging, and March 25, 2026 hotfix release.
Highlights
- Reworked the operator UI around grouped, collapsible workflow navigation with unread and pending-state badges.
- Added in-app SQLite backup export/import in Admin for safer migration and recovery workflows.
- Added a Directory hub plus dedicated Inventory Settings and Message Settings surfaces.
- Improved resilience and usability with skeleton loaders, contextual empty-search states, a global error boundary, better toast accessibility, and theme-token cleanup.
- Ported the project into packaged Windows host artifacts so this release can be run as
.exebinaries on Windows hosts, with separate server, client, and updater executables included in the release assets. - Hotfix update: lazy-loaded heavy operator and public routes to reduce the initial bundle cost, added unsaved-change warnings in Quote Detail, improved the Messages mobile layout, added a verbose error-details toggle for debugging, and hardened sheet/item imports against numeric-only spreadsheet titles.
v0.0.7
v0.0.7
Projects-first workflow and operations tooling release.
-
Projects terminology + list sorting/search UX improvements
-
Files workspace upgrades (inspection drawer, linked projects, bulk/list operations)
-
Billing and Leads search/sort/export enhancements
-
Project detail lifecycle polish (expiry/unsigned changes/payment/file UX)
-
Inventory model expansion with item_type and source visibility controls
-
API additions: file->projects lookup, unsigned-changes dismiss, contract template update
v0.0.6
Foundation
- Page background shifted to a softer surface tone, reducing eye strain on long sessions.
- Two new derived theme tokens (
--color-primary-subtle,--color-primary-hover) ensure interactive states stay consistent across built-in themes. - Buttons now have a subtle press animation (scale + opacity) on click.
- Cards lift on hover with a smooth shadow transition throughout the app.
Layout
- Content area max-width capped at
1440pxwith increased side padding, so wide monitors no longer overstretch the UI. - Sidebar nav links have more breathing room, a cleaner active indicator (left accent bar), and stronger theme-safe hover states.
Dashboard
- Stat cards now have colored left borders so each status is recognizable at a glance.
- Empty states for Upcoming Events and Inventory Conflicts now use illustrated placeholders instead of blank space.
Inventory
- Category filter bar now scrolls horizontally instead of wrapping, which is cleaner on mobile and for large category sets.
- Item cards now lift and show a hover overlay with contextual actions (
Add to Quote/Edit) directly on the image. - Item images now use a fixed
4:3aspect ratio (replacing the old padding-top hack). - Touch devices always show the action overlay to account for no-hover environments.
Quote Builder
- Summary/totals panel is now sticky, staying visible while scrolling long item lists.
- Grand total display increased from
18pxto24pxfor stronger visual emphasis. - Quote item presentation was refreshed with larger thumbnails, more spacing, and clearer card-like treatment.
- Hardcoded blues were replaced with theme variables so the builder respects the active theme.
Tables (Leads, Billing)
- Row padding increased from
10pxto14pxfor better readability and click targets. - Column headers are now sticky with proper background layering, preventing bleed during scroll.
Import
- Stepper now supports completed-state styling (green progress/check treatment), not just active/inactive states.
Messages
- Thread rows now maintain a proper minimum height (
56px) to avoid cramped single-line rendering. - Empty states were upgraded to icon + contextual help copy.
Utilities
- Global
.skeletonshimmer class added for reusable loading placeholders. .quoteItemAddedflash animation added for add-to-quote confirmation feedback.
v0.0.5
v0.0.5
In-app updater release with extension fallback import workflow.
Added
-
Authenticated update API: /api/updates, /api/updates/releases, /api/updates/apply
-
Settings Updates panel for release checks, notes preview, install, and restart polling
-
Import Extension JSON tab + server bulk-upsert endpoint for extension payloads
Changed
-
Extension popup now supports configurable server URL and manual Copy JSON fallback
-
Extension sync persists last scraped items and uses configured API base
-
Version/docs bumped to 0.0.5 across root/client/server packages and release docs
v0.0.4
v0.0.3
Highlights
- Per-item quote discounts and drag-to-reorder line items.
- Quote expiration handling and reusable payment/rental policy templates.
- Inventory accessory relationships and operator UX polish (including UI scale controls).
- Public quote parity and repo documentation/metadata cleanup.