Tracking the evolution from utility tool to enterprise-grade AI ecosystem.
/api/subscription/cancel) to immediately terminate active subscriptions on Stripe, PayPal, Razorpay, and Flutterwave while updating database status to canceled.getFeatureById.Math.ceil(baseCost * 1.5)) in the UI.admin@example.com).window.location.protocol) rather than forcing HTTPS prefixes locally.subscriptions table in database/schema.sql with a gateway tracking column to track active transaction vendors.lightweight-charts library.Ctrl/Cmd + K), timeframe selectors, and collapsible side and indicator panels.database/schema.sql) with four new tables: trading_watchlists, trading_signals, trading_alerts, and trading_portfolio, with appropriate indices and row-level security.trading-terminal feature.| Package | Version | Purpose |
|---|---|---|
lightweight-charts | ^5.2.0 | High-Performance interactive charting canvas |
/dashboard/notifications) supporting notification search, read/unread filters, single/all-read marking, deletion, and rich HTML detail viewing./admin/notifications) to draft, broadcast, schedule, and pin notifications, as well as respond to user reply threads.database/schema.sql and database seed utilities with three new tables (notifications, notification_recipients, and notification_messages).db.ts) to calculate monthly recurring revenue in addition to total lifetime revenue.app/api/browser/proxy/route.ts) to rotate request user-agents and perform exponential retry backoffs.showSettings = true) for improved discoverability.webhook_events tracking system to securely prevent duplicate processing of external gateway events.database/schema.sql to centrally manage the new security columns, 2FA mechanisms, and custom domain mapping states.razorpay.ts) using direct API endpoints.gateway-factory.ts to dynamically instantiate Razorpay checkout handlers based on the active administrative configuration.AdminSettings.tsx and SettingsContext.tsx to allow platform operators to securely manage Razorpay API keys and webhook secrets.PricingPage.tsx to seamlessly render Razorpay payment flows during plan upgrades and token purchases.database/schema.sql and db.ts to securely persist the new Razorpay configuration fields within the global settings structure.AdminModelUsage.tsx), backed by dedicated tracking endpoints.AdminTokenUsage.tsx) for user-level auditing and system-wide cost analysis.AdminDomains.tsx) to oversee mapped custom domains, monitor site statuses, and manage tenant routing.app/sites/[subdomain], enabling seamless subdomains for user-generated websites.middleware.ts to securely map incoming domain requests to their respective site configurations.WebsiteDesign and WebpageTools components for a smoother drag-and-drop experience.ElementSetting properties panel and ChatSection to offer deeper customization controls for generated UI components.htmlProcessor.ts capabilities to seamlessly compile and render AI-generated blocks into the live preview canvas./api/keepalive endpoint to maintain warm serverless functions during idle periods.database/schema.sql to accommodate the new domain mapping tables and enhanced analytics tracking.gemini-2.5-flash. Generates short, conversational, human-like voice responses (1-3 sentences), automatically stripping markdown/formatting for voice synthesis.voice_agent_config, voice_calls, voice_transcripts).middleware.ts) with a global credit interceptor. Clones and parses POST API requests to verify user credits before execution./api/internal/validate-token endpoint and dynamically maps requests to their configured token cost, blocking unauthorized API overuse with clean 403 errors.x-deducted-cost and x-deducted-feature request headers.FlutterwaveGateway) with real-time webhooks (/api/webhook/flutterwave).| Package | Version | Purpose |
|---|---|---|
react-phone-number-input | ^3.4.16 | International Phone Fields & Flags |
Fabric.js and react-rnd for advanced, drag-and-drop marketing asset customization.database/schema.sql system. The database is now the single source of truth for the entire application ecosystem.npm run migrate command with a dedicated runner (migrate.ts) for seamless environment synchronization.proxy.ts to a native Next.js middleware.ts for superior routing performance and security.Zustand for high-performance, predictable client-side state across complex multi-step workflows.| Package | Version | Purpose |
|---|---|---|
fabric | ^7.3.1 | Advanced Canvas Editing |
zustand | ^5.0.13 | Global State Management |
react-rnd | ^10.5.3 | Resizable/Draggable UI |
html-to-image | ^1.11.13 | Asset Export Pipeline |
Music Generator module and its associated dependencies to reduce the overall application bundle size.system_settings table instead of transiently in session or local state. newSettingsContext and AdminSettings components to correctly sync and fetch database-backed state, resolving configuration loss across user sessions./api/admin/settings route to perform direct database updates and removed aggressive caching that previously interfered with state hydration.yet-another-react-lightbox for a sophisticated full-screen image viewing experience with zoom and gallery support. newmarketing_assets, marketing_tasks, marketing_avatars, and marketing_products tables with full RLS security.yet-another-react-lightbox ^3.31.0 — Sophisticated image gallery and lightbox component.Website Wiki transforms any URL into a structured, editable wiki document using AI-powered content refinement. newTurndown HTML-to-Markdown conversion with automatic boilerplate removal (scripts, nav, footer, aside)./api/ai/stream endpoint, ensuring full model compatibility via selectedModel.wiki-exporter.ts.BannerManager.tsx) with live preview, gradient color picker, date scheduling, CTA button configuration, and priority ordering.contentEditable-based WYSIWYG component (rich-text-editor.tsx) for banner message formatting — supports Bold, Italic, Underline, Strikethrough, Links, and keyboard shortcuts.localStorage tracking prevents dismissed banners from reappearing.--banner-height dynamically adjusts layout to prevent header/sidebar clipping when banners are active.announcement_banners — supports message, scheduling (start/end date), gradient styling, CTA buttons, priority, and enable/dismiss flags.schema.sql updated from 13.6 KB → 14.6 KB with full RLS policies for the new table.GET /api/banners — returns the highest-priority active banner within its scheduled time window./api/admin/banners — full CRUD endpoints (GET, POST, PATCH, DELETE) for banner management.POST /api/website-wiki/extract — server-side URL scraping with Turndown conversion (30K char limit for AI context).app/layout.tsx restructured with flex column layout and h-dvh overflow-hidden for proper viewport management. AnnouncementBanner renders above the main scroll container.sidebar-routes.tsx updated with Website Wiki entry under Core Tools, marked as isNew.src/scripts/list-models.js utility for debugging available Gemini API models.turndown ^7.2.4 — HTML to Markdown conversion for wiki scrapingdocx ^9.6.1 — DOCX document generation for wiki exportfile-saver ^2.0.5 — Client-side file download utility@types/turndown, @types/file-saver — TypeScript type definitionsLOWER(user_email)..env and the project to resolve the OpenAI API issue.package-lock introduced.pdf-parse with pdf2json for robust extraction./website component for site management.