Commit Graph
1681 Commits
Author SHA1 Message Date
Matthew Meszaros 5262347eb6 feat: add open source landing showcase
Introduce a full-width open-source band with GitHub CTAs, self-host terminal copy, stack details, contribution links, and self-hosting notes.
2026-06-06 18:12:39 +02:00
Matthew Meszaros 06164fea28 feat: add fullscreen mobile site menu
Replace the compact mobile nav with a fullscreen menu that supports accordions, animated open and close states, escape handling, and scroll locking.
2026-06-06 18:12:35 +02:00
Matthew Meszaros a9805efe51 feat: remove obsolete showcase scroll hook
Drop the unused schedule block scroll animation now that the mocks manage their own demo motion.
2026-06-06 11:58:05 +02:00
Matthew Meszaros b8d1e440c4 feat: clarify developer demo dismissal
Update developer mock comments to match the cursor flow that dismisses the modal through the scrim.
2026-06-06 11:57:51 +02:00
Matthew Meszaros 9d112dc75c feat: refine ai assistant demo controls
Keep tone chips and the generate button stable while aligning the demo cursor with the intended actions.
2026-06-06 11:57:47 +02:00
Matthew Meszaros 00fa4e1689 feat: stabilize unibox composer controls
Keep the reply composer controls on a single row and prevent recipient chips from wrapping awkwardly.
2026-06-06 11:57:30 +02:00
Matthew Meszaros 541fbb57e4 feat: refine analytics share mock
Prevent analytics export controls from wrapping and make the share modal dismiss through the demo cursor timeline.
2026-06-06 11:57:24 +02:00
Matthew Meszaros e29899624b feat: stabilize ai assistant toolbar controls
Keep the AI assistant composer actions on one row in the fixed-width landing mock.
2026-06-06 11:57:19 +02:00
Matthew Meszaros 5094e79c54 feat: respect reduced motion in crm mock
Disable the CRM add-deal target animation when visitors prefer reduced motion.
2026-06-06 11:57:00 +02:00
Matthew Meszaros 184d9d43d2 feat: stabilize developer mock controls
Keep API-key controls and modal actions stable while adjusting the developer demo cursor positions.
2026-06-06 11:56:57 +02:00
Matthew Meszaros ee337df82b feat: stabilize integrations mock controls
Prevent integration status pills and action controls from wrapping while refining the Slack connection cursor path.
2026-06-06 11:56:52 +02:00
Matthew Meszaros 96ac201423 feat: refine unibox demo interaction
Adjust the unibox mock cursor so the composer opens from Reply and closes from the thread area without animating the send control.
2026-06-06 11:56:48 +02:00
Matthew Meszaros 86e0daebef feat: compact campaign builder toolbar controls
Keep the campaign builder composer controls from wrapping inside the fixed-width product mock.
2026-06-06 11:56:44 +02:00
Matthew Meszaros 931168e2a9 feat: stabilize crm mock toolbar controls
Keep CRM toolbar actions and filters from wrapping while preserving the animated add-deal target.
2026-06-06 11:56:13 +02:00
Matthew Meszaros 4e65e3a8f0 feat: stabilize schedule mock date controls
Prevent campaign date labels from wrapping inside the schedule landing mock controls.
2026-06-06 11:56:09 +02:00
Matthew Meszaros 06fac3f4a3 feat: refine campaign builder demo cursor
Adjust the landing mock cursor path so it opens the drawer and dismisses it from the canvas with cleaner timing.
2026-06-06 11:56:05 +02:00
Matthew Meszaros fe0feeb1eb feat: wire landing page feature showcase
Replace the older feature bands with the new product-window tour, add the supporting showcase sections, and hook the scroll animations into the page.
2026-06-06 11:55:40 +02:00
Matthew Meszaros eaa201b5a1 feat: add templating landing showcase
Add a Go templating section that explains merge fields and fallback behavior on the landing page.
2026-06-06 11:55:35 +02:00
Matthew Meszaros 6ca3d2e924 feat: add changelog landing showcase
Introduce a compact changelog section to highlight recent platform updates after the product feature tour.
2026-06-06 11:55:31 +02:00
Matthew Meszaros ef2ba2af28 feat: add crm pipeline landing mock
Show how positive replies become pipeline deals with stages, owners, notes, and tasks.
2026-06-06 11:55:28 +02:00
Matthew Meszaros 5cd4e0cad2 feat: add developer api landing mock
Add the API keys and webhook mock that supports the developer-focused landing section.
2026-06-06 11:55:23 +02:00
Matthew Meszaros 2c32940ee3 feat: add integrations landing mock
Show provider connections, signed webhook configuration, and encrypted-token positioning for the integrations section.
2026-06-06 11:55:19 +02:00
Matthew Meszaros 77fa10a3dd feat: add ai assistant landing mock
Add the writing assistant screen that demonstrates prompt-driven email drafting and tone controls.
2026-06-06 11:55:15 +02:00
Matthew Meszaros 9d4cf33880 feat: add analytics landing mock
Show deliverability metrics, campaign ranking, and account health in a product-style analytics screen.
2026-06-06 11:55:10 +02:00
Matthew Meszaros c66c0a4856 feat: add unified inbox landing mock
Present the reply triage workflow with mailbox filters, message classification, and an inline reply pane.
2026-06-06 11:55:07 +02:00
Matthew Meszaros 26abb6e17c feat: add campaign schedule landing mock
Add a weekly sending-window editor mock with preset controls, timezone details, and drag-to-create animation hooks.
2026-06-06 11:55:01 +02:00
Matthew Meszaros 7badea0a1b feat: add campaign builder landing mock
Show the sequence builder canvas with branching, step controls, and an email composer for the campaign feature section.
2026-06-06 11:54:58 +02:00
Matthew Meszaros 417db48b14 feat: add reusable feature showcase section
Introduce the framed product-window section used to present each landing-page feature with consistent copy, callouts, and scaling.
2026-06-06 11:54:53 +02:00
Matthew Meszaros 5a0e42620b feat: allow sequence mock step limits
Let the sequence mock render a compact subset of steps for smaller landing-page showcase contexts.
2026-06-06 11:54:48 +02:00
Matthew Meszaros 098c65377c feat: normalize dashboard mock copy punctuation
Align the existing dashboard mock comments with the site copy guidance before adding the new landing sections.
2026-06-06 11:54:43 +02:00
Matthew Meszaros c3489b3bee feat: widen site content containers
Give landing sections a shared wider content measure so the new feature showcase aligns with the header, hero, and footer.
2026-06-06 11:54:39 +02:00
Matthew Meszaros 82f3677a94 feat: add site copy style guidance
Document the house rule for avoiding overused em dashes in user-facing site and web copy.
2026-06-06 11:54:34 +02:00
Matthew Meszaros 6abb26192b Merge pull request #27 from warmbly/feature/campaign-experience-2
feat: campaign experience overhaul
2026-06-06 09:01:38 +02:00
Matthew Meszaros 8bc85efe07 feat: authenticate protoc setup in ci
Pass the GitHub token to arduino/setup-protoc so Go CI avoids unauthenticated GitHub API rate limits.
2026-06-06 08:39:42 +02:00
Matthew Meszaros 3f6935a3bb feat: polish live activity indicators
Add distinct live activity indicators for warming mailboxes, animate dashboard counters, and tighten lead progress labels.
2026-06-06 08:34:47 +02:00
Matthew Meszaros 10ffc2ad67 feat: mark live campaign analytics
Show a live indicator beside campaign performance metrics while a campaign is actively sending.
2026-06-06 07:53:15 +02:00
Matthew Meszaros a4801de99a feat: animate campaign overview stats
Use the animated number primitive for live campaign overview counters and rates.
2026-06-06 07:52:43 +02:00
Matthew Meszaros b047c30243 feat: allow rich stat values
Let shared stat cards render React nodes so dashboard counters can use richer animated or formatted values.
2026-06-06 07:52:10 +02:00
Matthew Meszaros 8d42dabff3 feat: add animated number primitive
Add a reusable realtime-friendly count-up number component for dashboard stats.
2026-06-06 07:51:18 +02:00
Matthew Meszaros 8b93230c19 feat: document data modeling guidance
Add repository guidance for typed columns versus jsonb configuration blobs and track the schema placeholder.
2026-06-06 07:50:46 +02:00
Matthew Meszaros cd1b503575 feat: add personalization guide
Document merge variables, custom fields, and conditional template syntax in the public Learn section.
2026-06-06 07:50:32 +02:00
Matthew Meszaros aa4f43b284 feat: wire settings profile updates
Persist profile and workspace setting edits, show live billing usage, and remove the unused bulk email API helper.
2026-06-06 07:50:26 +02:00
Matthew Meszaros ce8181de0e feat: show campaign lead progress
Surface per-lead campaign progress in the embedded Leads table with status pills, current step, activity dates, and a compact progress strip.
2026-06-06 07:50:18 +02:00
Matthew Meszaros ac7aa9de87 feat: polish campaign launch and folders
Add the launch dialog, campaign folder controls, completed status filtering, folder chips, and shared UI affordances for campaign organization.
2026-06-06 07:50:10 +02:00
Matthew Meszaros 8a0683e9de feat: add campaign sequence action editor
Add action nodes to the campaign flow canvas, richer personalization insertion, conditional previews, and the shared activity indicator styling.
2026-06-06 07:50:00 +02:00
Matthew Meszaros da82993846 feat: add campaign workflow backend support
Add sequence action-node storage and execution, template conditional rendering, lead progress state, profile updates, webhook fan-out throttling, and supporting repository fixes.
2026-06-06 07:49:52 +02:00
Matthew Meszaros 21edf45dbd feat: flatten analytics share card
Remove decorative cloud layers and shadows from the shared analytics image card so generated previews stay flat and artifact-free.
2026-06-05 16:44:32 +02:00
Matthew Meszaros 1663065b56 feat: fix analytics share image edge
Pin analytics share exports to the card dimensions and avoid white fallback pixels along the generated image edge.
2026-06-05 16:36:34 +02:00
Matthew Meszaros 49f1b28bd1 feat: add campaign lead order api
Wire campaign lead ordering through handlers, service methods, and campaign routes.
2026-06-05 15:44:26 +02:00
Matthew Meszaros b0ac1d2435 feat: add campaign lead import actions
Allow campaign lead views to create or import contacts directly into the current campaign.
2026-06-05 15:43:37 +02:00