Changelog
All notable changes to the Booking Management platform are documented here. Releases follow Semantic Versioning.
v5.1.0 — Wave 5.1 Current
Released: February 2026
Highlights
Visual email editor enhancements, real-time notification optimization, Terms & Conditions / Privacy Policy pages, and documentation improvements.
Features
| Area | Change |
|---|---|
| Email Visual Editor | Italic, underline, line-height formatting controls added to Typography section |
| Email Visual Editor | Image upload from local (base64) and URL input for <img> elements |
| Email Visual Editor | Granular border controls — border width, style (solid/dashed/dotted/double), color, radius |
| Email Visual Editor | Context-aware properties panel — hides text content for non-text elements (img, hr, div) |
| Email Visual Editor | Link URL editing for <a> elements |
| Email Visual Editor | Preview mode now renders per-section with correct body padding |
| Email Visual Editor | HTML tag badge removed from properties header for cleaner UX |
| Email Visual Editor | Removed Header Color field from template config panel (handled by visual editor instead) |
| Email Visual Editor | Removed unused headerColor, headerText, footerText props from editor component |
| Notifications | Replaced 30-second polling with Socket.IO real-time event invalidation |
| Notifications | Added notification events to EVENT_TO_QUERY_KEYS for centralized cache invalidation |
| Legal Pages | Added Terms & Conditions page (/terms) — public, no auth required |
| Legal Pages | Added Privacy Policy page (/privacy) — public, no auth required |
| Documentation | Email Templates guide updated with full Visual Editor documentation |
| Documentation | New Notifications guide page with architecture diagram and Socket.IO event reference |
| Documentation | Notification API docs updated with real-time Socket.IO events section |
| Documentation | Fixed Mermaid diagram rendering — installed vitepress-plugin-mermaid |
Technical Changes
| Area | Detail |
|---|---|
ElementStyles | Added fontStyle, textDecoration, lineHeight, borderColor, borderWidth, borderStyle |
SelectedElement | Added optional imgSrc and href attributes |
updateSectionElement | Supports attributes parameter for non-style changes (e.g., src, href) |
SocketProvider | EVENT_TO_QUERY_KEYS now includes all 4 notification events |
useUnreadCount | Removed refetchInterval: 30000 — uses refetchOnWindowFocus as safety net |
v5.0.0 — Wave 5 Previous
Released: February 2026
Highlights
Custom email templates, dashboard analytics, complete route restructuring, and full documentation coverage.
Features
| Area | Change |
|---|---|
| Email Templates | Custom Email Template Editor with syntax — supports 7 template types |
| Dashboard Analytics | KPI cards, Revenue chart, Occupancy heatmap, Outstanding payments, Expense vs Revenue, Room calendar |
| Route Restructuring | Comprehensive RESTful route restructuring — all routes now follow /:orgId/action pattern |
| Documentation | JSDoc documentation on all 39 backend controllers |
| Documentation | Full VitePress documentation site (A–Z API reference) |
| RBAC | email_templates module added (19 RBAC modules total) |
Email Template Types
| Template | Variables Available |
|---|---|
| Booking Confirmation | , , , |
| Invoice | , , |
| Payment Receipt | , , |
| Quote | , , |
| Credit Note | , , |
| Welcome | , |
| Password Reset | , |
Dashboard Widgets
┌──────────────┬──────────────┬──────────────┬──────────────┐
│ Total Rev │ Occupancy │ Bookings │ Outstanding │
│ ₹12.4L │ 78% │ 142 │ ₹2.1L │
├──────────────┴──────────────┼──────────────┴──────────────┤
│ Revenue Chart (30d) │ Expense vs Revenue (30d) │
│ ███████████▓▓▓▓▓▓ │ █ Revenue ░ Expense │
├─────────────────────────────┼─────────────────────────────┤
│ Occupancy Heatmap (7×24) │ Room Calendar │
│ ▓▓▓░░▓▓▓▓░░▓▓▓▓▓▓▓ │ [====] [==] [=====] │
└─────────────────────────────┴─────────────────────────────┘v4.0.0 — Wave 4
Released: December 2025
Features
| Area | Change |
|---|---|
| Notifications | Per-user read tracking via readBy[] array (replaces global isRead flag) |
| RBAC | notifications module added to role-based access control |
| Meta Timestamps | Standardized createdAt, createdAtTs, updatedAt, updatedAtTs on all documents |
| Firestore | Firestore transactions on all notification operations for data consistency |
Bug Fixes
| Issue | Fix |
|---|---|
| Invite link marked "already used" prematurely | Fixed token validation logic to properly check usedAt field |
| Registration endpoint accessible | Removed public registration — platform is now invite-only |
v3.0.0 — Wave 3
Released: September 2025
Features
| Area | Change |
|---|---|
| Redis Caching | Redis caching layer via Upstash Redis |
| Cache Strategy | Cache invalidation on writes — stale-while-revalidate pattern |
| Advanced Caching | Route-level caching with configurable TTLs |
| Performance | Optimized MongoDB queries with projection and lean() |
Performance Improvements
| Metric | Before | After | Improvement |
|---|---|---|---|
| Avg. response time | 320ms | 85ms | 73% faster |
| DB queries / request | 4.2 | 1.8 | 57% fewer |
| Cache hit rate | — | 89% | — |
v2.0.0 — Wave 2
Released: June 2025
Features
| Area | Change |
|---|---|
| Google Sheets | Google Sheets integration via Apps Script for live data sync |
| Gmail | Gmail OAuth2 integration — send invoices directly via Gmail |
| PDF Generation | Puppeteer-based PDF invoice generation (server-side) |
| Azure Blob | Azure Blob Storage for temporary file storage (PDFs, exports) |
| Audit Logging | Comprehensive audit logging system — tracks every CRUD action |
| API Analytics | API analytics tracking middleware (request counts, response times, errors) |
| Support Tickets | Support ticket system with threaded replies |
v1.0.0 — Initial Release
Released: March 2025
Core Platform
| Area | Description |
|---|---|
| Multi-Org | Multi-organization support with isolated data per org |
| Bookings | Booking management with room assignment, check-in/check-out tracking |
| Guests | Guest management with contact details, ID documents, and history |
| Invoices | Invoice CRUD with line items, taxes, and auto-numbering |
| Payments | Payment recording against invoices |
| Expenses | Expense tracking with category and vendor support |
| Quotes | Quote / proforma invoice generation |
| Credit Notes | Credit note issuance with invoice linkage |
| Chart of Accounts | Double-entry bookkeeping — chart of accounts with account types |
| Tax Management | Tax configuration with GST support (CGST, SGST, IGST) |
| Rooms | Room & room category management with availability tracking |
| Users | User management with invite-only onboarding |
| RBAC | Role-based access control with customizable roles and per-module permissions |
| Notifications | Real-time notifications via Socket.IO |
| Authentication | PASETO V4 token-based authentication |
| Series | Auto-numbering / series system for invoices, quotes, credit notes, etc. |
Tech Stack
| Layer | Technology |
|---|---|
| Backend | Node.js, Express.js |
| Database | MongoDB with Mongoose ODM |
| Auth | PASETO V4 (public-key tokens) |
| Real-time | Socket.IO |
| Frontend | Next.js 15, React 19, Tailwind CSS |
| UI Library | shadcn/ui |