94 lines
5.8 KiB
Markdown
94 lines
5.8 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to Pulse (frontend and product) are documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and Pulse uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html) with a **0.x.y** version scheme while in initial development. The leading `0` indicates that the public API and behaviour may change until we release **1.0.0**.
|
|
|
|
## [Unreleased]
|
|
|
|
## [0.7.0-alpha] - 2026-02-17
|
|
|
|
### Changed
|
|
|
|
- **ciphera-ui consolidation.** Migrated shared components and utilities to @ciphera-net/ui (v0.0.57): SwissFlagIcon, CodeBlock, Spinner, format utilities (formatNumber, formatDuration, formatDate, getDateRange, formatUpdatedAgo, formatRelativeTime), and auth error utilities (getAuthErrorMessage, authMessageFromStatus, authMessageFromErrorType). Removed 6 local duplicate files (LoadingOverlay, SwissFlagIcon, CodeBlock, authErrors.ts, format.ts).
|
|
- **Form card border radius.** Login, signup, invite accept, verify, reset-password, forgot-password, and organization create cards now use rounded-2xl to match design system.
|
|
- **Hardcoded brand colors.** Uptime page chart uses CSS variable var(--color-brand-orange) instead of #FD5E0F.
|
|
- **Selection styling.** Removed redundant selection:bg-brand-orange/20 from page wrappers; relies on ciphera-ui base styles.
|
|
- **Inline spinners.** Dashboard widgets (TopReferrers, Locations, TechSpecs, Campaigns, ContentStats), notifications page, and OrganizationSettings now use Spinner from ciphera-ui.
|
|
- **Footer layout.** Authenticated footer container aligned to max-w-6xl (matches site dashboard and page-container-app).
|
|
|
|
### Removed
|
|
|
|
- **Dead components.** LoadingOverlay.tsx (unused; all usage already from ciphera-ui).
|
|
|
|
## [0.6.0-alpha] - 2026-02-13
|
|
|
|
### Added
|
|
|
|
- **Notification settings.** New Notifications tab in organization settings lets owners and admins toggle billing and uptime notification categories. Disabling a category stops new notifications of that type from being created.
|
|
- **In-app notification center.** Bell icon in the header with dropdown of recent notifications. Uptime monitor status changes (down, degraded, recovered) create in-app notifications with links to the uptime page.
|
|
- **Notifications UX improvements.** Bell dropdown links to "Manage settings" and "View all" notifications page. Unread count polls every 90 seconds. Full notifications page at /notifications with pagination.
|
|
- **Notifications tab visibility.** Notifications tab in organization settings is hidden from members (owners and admins only).
|
|
- **Audit log for notification settings.** Changes to notification preferences are recorded in the organization audit log.
|
|
- **Payment failed notifications.** When Stripe sends `invoice.payment_failed`, owners and admins receive an in-app notification with a link to update payment method. Members do not see billing notifications.
|
|
- **Pageview limit notifications.** Owners and admins are notified when usage reaches 80%, 90%, or 100% of the plan limit (checked every 6 hours).
|
|
- **Trial ending soon.** When a trial ends within 7 days, owners and admins receive a notification. Triggered by Stripe webhooks and a periodic checker.
|
|
- **Subscription canceled.** When a subscription is canceled, owners and admins are notified with a link to billing.
|
|
|
|
## [0.5.1-alpha] - 2026-02-12
|
|
|
|
### Changed
|
|
|
|
- **Top Referrers: X icon instead of Twitter bird.** Referrers from x.com and t.co now show the X logo instead of the legacy bird.
|
|
|
|
## [0.5.0-alpha] - 2026-02-11
|
|
|
|
### Added
|
|
|
|
- **Live chart and KPIs.** Chart and stats refresh every 30 seconds. "Live · Xs ago" indicator with green dot in the chart corner counts in real time.
|
|
- **Polling indicator.** Shows when data was last updated (bottom-right of chart card).
|
|
|
|
### Changed
|
|
|
|
- **Analytics chart improvements.** Clearer labels, compare mode shows which period you're comparing against, mini trend lines on each stat, export chart as image, and a better experience on mobile.
|
|
- **Trend context for all date ranges.** "vs yesterday" or "vs previous 7 days" now shows for Today, 7 days, and 30 days.
|
|
- **Compare label shortened.** "Compare with previous period" → "Compare".
|
|
- **Chart axes layout.** Y-axis space matches X-axis; metric label moved above chart; compact duration format for axis ticks.
|
|
|
|
## [0.4.0-alpha] - 2026-02-11
|
|
|
|
### Changed
|
|
|
|
- **Campaigns block improvements (PULSE-53).** Sortable columns, favicons and friendly names for sources, pageviews column, and export to CSV. Full dashboard export now includes campaigns.
|
|
|
|
## [0.3.0-alpha] - 2026-02-11
|
|
|
|
### Changed
|
|
|
|
- **Top Referrers favicons and names (PULSE-52).** Real favicons (Google, ChatGPT, etc.) and friendly names instead of raw URLs. Same referrer from different URLs is merged into one row.
|
|
|
|
## [0.2.0-alpha] - 2026-02-11
|
|
|
|
### Added
|
|
|
|
- **Smarter unique visitor counts.** Visitors opening several tabs/windows are counted as one person.
|
|
- **Visitor count options.** Choose "one per tab" (more private) or "one per person" (default). Dashboard shows the right embed snippet for each.
|
|
|
|
## [0.1.0-alpha] - 2026-02-09
|
|
|
|
### Added
|
|
|
|
- Initial changelog and release process.
|
|
|
|
---
|
|
|
|
[Unreleased]: https://github.com/ciphera-net/pulse/compare/v0.7.0-alpha...HEAD
|
|
[0.7.0-alpha]: https://github.com/ciphera-net/pulse/compare/v0.6.0-alpha...v0.7.0-alpha
|
|
[0.6.0-alpha]: https://github.com/ciphera-net/pulse/compare/v0.5.1-alpha...v0.6.0-alpha
|
|
[0.5.1-alpha]: https://github.com/ciphera-net/pulse/compare/v0.5.0-alpha...v0.5.1-alpha
|
|
[0.5.0-alpha]: https://github.com/ciphera-net/pulse/compare/v0.4.0-alpha...v0.5.0-alpha
|
|
[0.4.0-alpha]: https://github.com/ciphera-net/pulse/compare/v0.3.0-alpha...v0.4.0-alpha
|
|
[0.3.0-alpha]: https://github.com/ciphera-net/pulse/compare/v0.2.0-alpha...v0.3.0-alpha
|
|
[0.2.0-alpha]: https://github.com/ciphera-net/pulse/compare/v0.1.0-alpha...v0.2.0-alpha
|
|
[0.1.0-alpha]: https://github.com/ciphera-net/pulse/releases/tag/v0.1.0-alpha
|