v3.31
Bug fixes — overflow dropdown styling and item count contrast
- Overflow dropdown (>> more): active item now shows a subtle gold highlight background to match selected state
- Item count badge in overflow dropdown: text colour raised from near-invisible to clearly readable
- Item count badge on inactive collection tabs: colour improved for legibility on dark background
v3.23
Tab overflow dropdown and CT drag-to-reorder
- Collection bar now shows a ▸▸ N more button when tabs don't fit — overflow items listed in a dropdown
- Collection types can be reordered by drag-and-drop in Settings → Collection Types
v3.20
Collection Type ID system — stable numeric IDs (ct1, ct2, …)
- Collection types now use stable IDs (ct1=Trains, ct2=Buses, ct3=Trams, ct4=Cars) — same principle as field IDs (f001-f027)
- New collection types get ct5, ct6, … instead of a slugified name + timestamp
- One-time migration updates all existing data automatically — names and settings unchanged
v3.19
Bug fix — fleet number search for Buses and Trams
- Fixed: searching by fleet number now works for Buses (f011) and Trams (f016), not just Trains
v3.18
Bug fixes — delete name, CSV export, API consolidation
- Fixed: delete confirmation now shows the item name correctly (was showing blank)
- Fixed: CSV export now strips newlines from notes field, preventing corrupt rows in Excel
- Merged /api/data and /api/backup into a single Cloudflare Function (no duplicate code)
v3.17
Backup list fixes — Live slot always shown, labels corrected
- Live slot now always appears in backup list even if cloud has no data yet
- Tier labels corrected: ● LIVE — Latest, ◆ Daily snapshot, ◇ Weekly snapshot
- Gold colour now correctly applied to Live slot
v3.16
Container warning — correct intercept point
- Fixed: warning now intercepts in addContainerOpt() — the actual function used by the container combo — rather than the generic addOpt()
v3.15
Container warning now works on the item form
- Warning now correctly triggers when adding a non-numeric value to the Container field on the item entry form (not just Manage Lists)
v3.14
Container warning uses app modal instead of browser dialog
- Replaced native browser confirm() with a proper in-app modal — can no longer be silently suppressed by the browser
v3.13
Container number warning improvements
- Warning now triggers for anything non-numeric (letters, spaces, punctuation) — not just pure words
- Message clarified: explains the field expects a number and that Area / Location names are managed separately in the Area / Location dropdown
- Toggle added in Settings → Manage Lists → List Settings to enable or disable the warning
v3.12
Container word detection fix
- Prompt now only triggers when the value is letters only (no digits) — so “Cabinet 1” adds correctly, but “Cabinet” alone prompts to add to Areas
v3.11
Container number field — word detection
- If you type a word (e.g. “Cabinet”) into the container number field, the app now prompts whether you meant to add it to the Area list instead
- Container input changed from number-only to text to allow the prompt to trigger
v3.10
Backup Now button
- Added Backup Now button in Settings → Backup & Export — immediately pushes current data to cloud and refreshes the backup list
v3.9
Sync protection & rolling cloud backups
- Sync safety check — blocks push to cloud if cloud has more items than this device, shows a prominent banner requiring action
- Local snapshot saved on every app open — instant fallback if cloud sync goes wrong
- Rolling cloud backups: Live + Daily ×7 + Weekly ×4 — server-side rotation via Pages Function
- Backup & Restore UI — browse all cloud slots with dates and item counts, restore with confirmation
- Local snapshot restore — recover from the snapshot saved at last app open
v3.8
Custom field labels respected throughout the app
- Field Modes card (Manage Lists) now shows custom label names per collection type column
- Orphan modal now uses the custom field label when prompting about unrecognised values
v3.7
Collection Type editor redesign
- Field toggle and field label rename are now combined into a single table — tick to enable, type to rename, all in one place
- Unticked fields grey out automatically; label input clears and disables when a field is turned off
- Core fields (Name, Description, Model Maker) shown with a star — always on, still renameable
- Modal widened to fit the new layout comfortably
v3.6
Per-collection-type lists for all fields + customisable field labels
- All dropdown fields (Gauge, Operator, Colour, Era etc.) now maintain separate lists per collection type — no more shared clutter
- Field labels are now customisable per collection type — e.g. rename "Name" to "Type" for Trams
- Manage Lists updated — every field shows a column per collection type
- Collection Type editor — new Field Labels section to rename any field for that collection
v3.5
Generic field ID system
- All item fields now stored with generic IDs (f001–f027)
- Migration runs automatically on load — existing data converted seamlessly
v3.4
Current
Field Mode Toggle — Switch Any Field Between Dropdown and Free Text
- Every dropdown field now has a small "✎ Free" button — click it to switch that field to plain free text input, no list required
- Click "≡ List" on any free-text field to switch it back to a searchable dropdown at any time
- Field modes are saved per-device and persist across sessions
- Manage Lists → Settings shows a Field Modes card to review and toggle all fields in one place
- Current value is preserved when switching mode
v3.3
Previous
Unified Details Panel — Any Field on Any Collection
- Replaced four separate type-specific panels (Train Details, Bus Details, Tram Details, Vehicle Details) with one unified Details panel containing all optional fields
- Ticking any field in Collection Type editor now correctly shows it regardless of collection type — e.g. Colour can now be added to Trains, Gauge to Buses, etc.
- Section title updates dynamically — "Trains Details", "Bus Details" etc. based on current collection
- Works for custom collection types (Trucks etc.) identically to built-in ones
v3.2
Previous
Field Visibility Fix & Fleet Number Free Text
- Fixed: ticking/unticking fields in Collection Type editor now correctly shows or hides those fields in the Stock form for all built-in collection types (Trains, Buses, Trams, Cars)
- Fleet Number changed from dropdown to free text on Trains, Buses and Trams — no list to manage, just type the number directly
v3.1
Previous
Form Redesign & Cloud Sync
- Identity section redesigned — Model Maker replaces Name at top, Catalogue Number is now a free text field (no longer a managed list), Area / Location and Container / Cabinet No. labels updated
- Name and Description moved to a new "Item Description" section below Identity, visible for all collection types
- Railway Details renamed to Train Details
- Cloud sync added — data automatically saves to Cloudflare KV on every save; on load, the newest version (local or cloud) wins. Two users (dad + Chris) share the same live data
- Sync status badge in the top bar — Synced / Syncing / Offline / Error
v3.0
Previous
Manage Lists — Taller Sections & Styled Scrollbar
- Tag list height increased to 220px — more values visible before scrolling is needed
- Custom scrollbar replaces the default solid black bar — light track shows the full list height, gold thumb shows current position, hover highlights to confirm it is interactive
v2.9
Previous
Manage Lists — Input at Top, Wider Columns & Scrollable Tags
- Add value input moved to the top of each list section, just below the header — dropdown opens downward into free space and is never obstructed
- Type-specific lists (Names, Descriptions, Makes) now use full-width equal columns — one per collection type — so each column is as wide as possible
- Vertical separator lines added between the collection type columns, keeping them distinct
- Tag lists are now scrollable (max height 160px) — long lists like Car Makes no longer push other cards down the page
v2.8
Previous
Dropdown Portal Fix & Reliable List Seeding
- Fixed dropdown menus being clipped or cut off (showing "Ad" instead of "Add") at certain window sizes — dropdowns now render outside the form scroll area so they are never clipped
- Dropdown automatically flips upward when near the bottom of the screen
- Dropdowns close cleanly when scrolling the form, and reposition correctly on window resize
- Reference list seeding now version-gated — runs once per app version upgrade, ensuring all users reliably receive the full UK & USA reference data on first load of a new version
v2.7
Previous
Comprehensive UK & USA Reference Lists
- All dropdown lists seeded with comprehensive UK and USA reference data for Trains, Buses, Trams and Cars
- Trains: ~60 famous named UK and USA locomotives (Flying Scotsman, Mallard, Duchess of Hamilton, Big Boy, Daylight etc.); full wheel arrangement list including US types (4-8-8-4, 4-6-4 Hudson etc.); UK and USA eras; 28 manufacturer/make options
- Buses: ~30 UK and USA bus types/models (Routemaster, AEC Regent, Leyland Atlantean, GM Fishbowl etc.); operators from NBC-era through to modern; body types
- Trams: UK and USA tram types (Balloon Car, PCC Car, Feltham etc.); modern fleet types; 18 UK and USA systems
- Cars: ~100 UK and USA model names from Mini Cooper and Jaguar E-Type to Chevrolet Corvette and Ford Mustang; colours; body styles; era periods
- Existing user lists preserved — new values merged in, nothing removed except incorrect entries
v2.6
Previous
Type-Specific Dropdown Lists for Name, Description & Make
- Name, Description and Make dropdown lists are now maintained separately per collection type — train names no longer appear in the Bus or Car forms
- Make list split by type: Hornby/Bachmann/Farish for Trains; Corgi/EFE/Oxford for Buses; Corgi/Dinky/Matchbox for Cars; and so on
- Settings → Manage Lists now shows Name, Description and Make as per-type sections (🚂 Trains / 🚌 Buses / 🚃 Trams / 🚗 Cars) for independent management
- Adding a new value via the dropdown "➕ Add" option saves it to the current collection type's list only
- Existing data automatically migrated — previous name/description/make values moved into the Trains list on first load
v2.4
Previous
Collection Dashboard, Record Navigation & Contrast Fixes
- Right panel now shows a rich per-collection dashboard when no item is selected — icon, stats (items, value, runs, boxed) and a card grid of recent items
- Record ID navigation bar: ‹ Prev · #ID · item N of M · Next › · Jump to # — lets you step through or jump directly to any record
- + Add Collection button removed from the tab bar — now in Settings → Collection Types where it belongs
- Item sub-text and item count contrast improved for easier reading
- Item list now shows record ID (#42) as a subtle badge on each entry
- Item count shows "14 of 312" when filters are active
v2.3
Previous
Accessibility Redesign — No Menu Bar, Help Tab, Larger Fonts
- Removed File/Edit/View/Reports/Help top menu bar — all actions now in contextual buttons
- Brand logo, title and item totals moved into the navigation tab bar
- New ❓ Help tab with full inline guidance — no more pop-up modals for help
- Settings split into sub-tabs: Collection Types / Manage Lists / Backup & Export
- Logo.png (transparent) used directly — cleaner on all backgrounds
- Logo made larger on Home screen
- Font sizes increased throughout for easier reading
- Colour contrast improved on labels and secondary text
- Clear Filters button added directly to the stock list panel
v2.2
Previous
Home Tab, Topbar & Settings Rename
- New Home tab with full-page dashboard — large logo, stats, collections and quick actions
- Navigation restructured — Home | Stock | Reports | Settings tabs replace old toolbar
- Logo moved from sidebar to Home screen — large and prominent
- New Item button removed from sidebar — accessible via Home and action bar
- Collection type tabs (Trains/Buses etc) now only appear on the Stock tab
- Lists renamed to Settings throughout
- File menu repositioned to standard top-left in the slim topbar
- Vivid amber accent colour — replaces faint gold for much better readability
v2.1
Previous
UI Polish & Visual Refinements
- ModelTrackr branding text added below logo in sidebar
- Dashboard stat cards now show emoji icons with a coloured top-border accent
- Collection breakdown cards get a gold left-border highlight on hover
- Active item in list uses a subtle gold gradient fade
- Field group headers use a dark gradient for visual depth
- Toolbar and collection tab active states have a soft gold inner glow
- Action bar buttons slightly larger with drop shadow
- Status bar refined with a gradient background
- Input fields and key text slightly larger for better readability
- Report page cards gain a top accent border
v2.0
Previous
Major UI Redesign — Logo, Dashboard & Toolbar
- Logo panel redesigned — wider (220px), more prominent, sits proudly top-left
- ➕ New Item button moved into logo panel — primary action always visible
- Toolbar slimmed down to navigation only — Stock, Reports, Lists
- Backup, CSV and Print moved to File menu and dashboard quick actions
- Empty state replaced with live dashboard — stats, recent items, quick actions, collection breakdown
- Dashboard cards clickable — click a collection to jump straight to it
- Recent items on dashboard — click any to open directly
- ModelTrackr branding applied throughout — name, favicon, title, about modal
v1.9.1
Previous
Bug Fix — Lists Tab & Version Display
- Fixed Lists tab rendering blank — caused by orphaned code fragment left from checkbox fix
- Fixed title bar, About modal and page title showing old version number
- Added Version & Changelog entry to Help menu
- Added GitHub README with feature list, version history and roadmap
v1.9
Previous
Two-Level Location System & Location Report
- Added Area field (Loft, Cabinet) and Container field (Box 1, Cabinet 3 etc)
- Container dropdown automatically filters by selected area
- Typing a number auto-prefixes as "Box 12" or "Cabinet 3"
- New By Location report — lists all items per box/cabinet across all collection types
- Cross-collection container view with per-container totals
- Container management in Lists tab per area
- Location filter added to left panel item list
- CSV export updated to include Area and Container columns
v1.8
Previous
Checkbox Double-Fire Bug Fix
- Fixed collection type editor field toggles not registering clicks reliably
- Root cause: div onclick and checkbox onclick were both firing, cancelling each other out
- Fixed by replacing div+onclick with semantic label element wrapping the checkbox
v1.7
Previous
Safe Delete Flow for Collection Types
- Delete collection type now shows item count before proceeding
- Three options: Move to Uncategorised / Keep items / Delete everything
- Permanent delete requires typing DELETE to confirm — prevents accidents
- Backup prompt shown before any destructive action
- List values never auto-deleted when removing a collection type
- Uncategorised safety collection created automatically if needed
v1.6
Previous
Field Visibility Per Collection Type
- Each collection type now has its own set of visible fields
- Edit collection type to tick/untick which fields are relevant
- Trains show: Gauge, Wheel Arrangement, Fleet Number, Era/Region
- Buses show: Fleet No, Route Number, Operator, Livery, Body Type
- Trams show: Fleet No, Route Number, System/City, Gauge
- Cars show: Scale, Colour, Body Style, Era/Year
- Core fields always shown regardless of collection type
- Sub-type dropdown values change per collection type
v1.5
Previous
Collection Type Tabs
- Collection Type tabs added across top of screen (Trains, Buses, Trams, Cars)
- Each tab shows item count badge
- Switching tab updates item list, filters and form fields instantly
- Add Collection button always visible
- Collection types fully manageable in Lists tab — add, edit, rename, change icon
- 20 icons available to pick from
- Renamed app from Model Train Catalogue to Model Collection Catalogue
v1.4
Previous
Duplicate New/Save Buttons Removed
- Removed New and Save from toolbar — these duplicated the action bar buttons
- Toolbar now only contains navigation (Stock, Reports, Lists) and data actions (Backup, CSV, Print)
- All item actions (New, Save, Duplicate, Delete) consolidated in action bar at bottom
v1.3
Previous
Working Menu Bar
- File menu: New Item, Save, Export Backup, Import Backup, Export CSV, Print
- Edit menu: Duplicate Item, Delete Item, Clear All Filters
- View menu: Stock, Reports, Settings
- Reports menu: Collection Summary, By Make/Gauge/Type, Insurance, Print
- Help menu: How to Use, About
- Keyboard shortcuts: Ctrl+N (New), Ctrl+S (Save), Escape (close menus/modals)
- Status bar updates to show current action
v1.2
Previous
Searchable Combobox Dropdowns
- Replaced all standard HTML dropdowns with searchable comboboxes
- Type to filter instantly — e.g. type "horn" to find Hornby
- Arrow keys to navigate, Enter to select, Escape to close
- Add new value directly from any field with + Add option
- New values saved permanently to that list
- Match highlighting shows which part of text matched the search
v1.1
Previous
Field Set Updated for UK Railway Collectors
- Replaced US-oriented fields with UK railway collector fields
- Added: Gauge, Wheel Arrangement, Fleet Number, Era/Region
- Added: Yes/No toggles for Used, Runs, Box, Original Box
- Added: 4 custom fields with renameable labels
- Added: Purchase & Valuation section with multiple date fields
- Pre-loaded UK defaults: Hornby, Bachmann, OO gauge, GWR/LMS/BR eras etc
v1.0
Initial Release
Initial Build
- Replacement for legacy Model Vehicle Catalogue v2.08E (no longer runs on Windows 10/11)
- Core fields: Description, Brand, Make, Part No, Scale, Type, Colour
- Purchase and sale tracking with current value
- Condition fields: Packaging, Condition, Construction, Availability, Location
- Reports: By Brand, By Type, Top 10 by Value, Insurance Summary
- Export: JSON backup, CSV export
- Data stored in browser localStorage