Releases: apoorvdarshan/verceltics
Release list
v1.2.1 — Cleanup & polish
Verceltics 1.2.1
• Streamlined the About tab (removed the What's New card).
• Removed Instagram links across the app and website.
• Landing page SEO improvements.
• Version 1.2.1, build 13.
v1.2 — In-app tips & Support tab
Verceltics 1.2
New
- Tip Jar — leave an optional one-time tip to support development: Coffee ($2.99), Lunch ($5.99), Big ($9.99), or Huge ($19.99). Tips are completely optional and unlock nothing.
- New Support tab — rate, share, star on GitHub, upvote on Product Hunt, and tip the developer, all in one place.
Polish & fixes
- About is now its own tab for app info, update checks, links, help, legal, and subscription management.
- Tips are tracked through RevenueCat alongside subscriptions and the lifetime purchase (consumables — no entitlement, so paywall gating is unaffected).
Version
- App version: 1.2
- Build: 12
v1.1.6 — Web analytics restored
Verceltics 1.1.6
New
- Web Analytics works again — visitors, page views, and trends are restored after Vercel changed its analytics endpoints.
- Top pages, referrers, countries, devices, browsers, and the rest of the breakdowns are back.
- "What's New" card in About — collapsed by default, expands on tap.
Polish & fixes
- Projects, domains, and deployments stay reliable, with clearer request failure copy.
- Bounce rate now shows "—" since Vercel no longer exposes it through token access.
- Web SEO: Organization/WebSite structured data, refreshed sitemap, and subpage OpenGraph.
Version
- App version: 1.1.6
- Build: 10
v1.1.5 — Project detail, navigation, and link polish
Verceltics 1.1.5
New
- Richer project metadata: scope, framework, repository, domains, and recent deployments.
- Deployment details now include build events and more deployment context.
- Follow on Instagram and Support My Work links in About.
Polish & fixes
- Returning from deployment details no longer reloads the previous screen unnecessarily.
- Website, README, App Store copy, privacy, and terms now match the latest support/social links.
Version
- App version: 1.1.5
- Build: 9
v1.1.4 — Purchase and analytics polish
Verceltics 1.1.4
New
- RevenueCat-backed purchase entitlement checks for subscriptions, lifetime unlock, and restores.
- Follow on LinkedIn link in About.
Polish & fixes
- Paid analytics range locks now stay unlocked once data is detected for that account.
- Clearer Web Analytics Plus messaging for UTM sections.
- Internal Xcode project cleanup for the latest recommended settings.
Version
- App version: 1.1.4
- Build: 8
v1.1.3 — Quick project actions
What's New
- Copy project URLs directly from the project card context menu.
- Analytics project domains are now clearer tappable buttons.
Polish & Fixes
- Improved project quick actions without changing the existing native search/account layout.
- Small UI polish for opening live deployments from Analytics.
Build
- Version: 1.1.3
- Build: 6
Thanks to @Wendell-Guan for the project interaction polish in PR #2.
v1.1.2 — Multi-account support
What's New
- Add multiple Vercel accounts.
- Switch accounts directly from Projects.
- Show Vercel profile avatars in the account switcher.
- Add App Store update checks in About.
Polish & Fixes
- Refined the native toolbar search/account layout.
- Existing saved accounts refresh profile metadata safely.
- Fixed account profile status error handling.
- Updated App Store metadata and docs for v1.1.2.
Build
- Version: 1.1.2
- Build: 5
Thanks to @Wendell-Guan for opening the multi-account support PR.
v1.1.0 — Soft paywall · Lifetime tier · UI overhaul · iPad
Verceltics 1.1 is mostly invisible if you're a returning user — but every screen has been touched. The headline change: the app no longer paywalls you at launch. Browse all your projects free; pay only when you open analytics for one.
What's new
Pricing & paywall
- Soft paywall — authenticate with your Vercel token, see the full project list with favicons and live deploy indicators free, pay only when you tap into a specific project's analytics
- Lifetime tier —
$59.99one-time, no recurring charge, ever. Non-consumable in-app purchase. - Yearly trial extended to 7 days (was 3)
- Monthly bumped to
$4.99, yearly to$34.99. Existing subscribers stay on legacy pricing. - The trial badge in the paywall now reads the real duration from StoreKit at runtime — no hardcoded copy.
Analytics chart
- VISITORS hero label with a
Peak <N>indicator pill in idle state - Drag-to-inspect now shows the date as a blue capsule pill next to the value
- Subtle dashed average reference line crossing the plot
- Gradient line stroke (deep blue → light blue), 3-stop area gradient
- Selection state: blue glow ring + white inner dot + soft gradient vertical rule
- Selection haptic on each point you slide to
Project cards
- Live deploy indicator — pulsing green dot when last deployment is < 30 minutes old
- Framework-tinted dots — Astro orange, Vite purple, Remix cyan, Angular red, Eleventy yellow, Next.js soft white, etc., each with a soft colored glow shadow
- Layered gradient card chrome with gradient strokeBorder
- Press-scale animation on tap, light haptic on selection
Favicon resolution (the rabbit hole)
- Detects SVG by content-type /
<svg>sniff and routes throughimages.weserv.nlfor server-side rasterisation - Stops probing
www.<sub>.vercel.app— Vercel's wildcard cert is single-level and ATS rejects, was choking the URLSession pool - Manual full URL encoding for the proxy URL (alphanumerics +
-._~) —URLComponentsleft?,:,/un-encoded which iOS 17+ would mishandle when the inner URL had its own?<hash> - Mozilla User-Agent +
Accept: image/*so anti-bot favicon services serve us properly - Race direct paths in parallel, then HTML scrape, then third-party fallbacks (DuckDuckGo, Google s2, icon.horse) — first valid PNG wins
Domain resolution
enrichProjectsNeedingDomainRefreshnow calls/v9/projects/{id}/domainsand merges every verified non-redirect entry into the project's alias array — picks up short aliases the bulk listing omitsteamIdonly forwards when the account ID starts withteam_— Vercel rejectsuser_…prefixes
iPad
- Adaptive
LazyVGrid(columns: [.adaptive(minimum: 340, maximum: 520)])for projects + analytics breakdowns MainTabViewuses.tabViewStyle(.sidebarAdaptable)for native iPad sidebar- All-orientation support (
UIInterfaceOrientations*) on iPad
Polish
- Stat cards stagger in (cascading 60ms delays, opacity + slide-up spring)
- Project list cards stagger in (40ms each, capped at 11)
- Refresh button in analytics toolbar with single-turn spin animation per tap
- "Updated <relative>" indicator with green dot — shows freshness of fetched data
- Native rate prompt fires for free + paid users 3 seconds after first project load
- About sections regrouped: SUPPORT / LINKS / HELP / ACCOUNT / LEGAL
- About row now has Rate Verceltics (native StoreKit), Share Verceltics (full message with App Store + website link), Star on GitHub, Upvote on Product Hunt
- Login: token field grows blue stroke when focused; Connect button auto-scrolls above the keyboard
Architecture / cleanup
- Swift 6 strict concurrency: data models marked
nonisolatedfor Decodable conformances underSWIFT_DEFAULT_ACTOR_ISOLATION = MainActor - Replaced
plotAreaFrame(deprecated iOS 17) withplotFrame - Added
CLAUDE.mddocumenting the architecture for future contributors / agents - Refreshed
CONTRIBUTING.mdwith the visual style spec, animation scoping rule (.animation(value:)only — neverwithAnimationinsideonAppear), andcontentShape(Rectangle())requirement for HStacks with Spacers - New
SECURITY.mdwith private vulnerability reporting flow
Web (verceltics.com)
- New transparent hero product shot — three iPhones floating with a soft blue glow, no chrome
- Pricing rebuilt as a 3-tier comparison: Monthly / Yearly (featured, 7-day trial) / Lifetime
- Privacy policy expanded with explicit "Favicon Services" section listing weserv.nl / DuckDuckGo / Google s2 / icon.horse and confirming none receive your token
- Terms updated with the new pricing tiers, lifetime non-consumable note, and Apple-handled refund policy
- New "Building From Source" section in Terms pointing to the MIT-licensed repo
Build
- Bundle ID
com.apoorvdarshan.verceltics - Min iOS 18.0
- Universal (iPhone + iPad)
- Build 3
Source-build path
git clone https://github.com/apoorvdarshan/verceltics.git
open ios/verceltics.xcodeproj
# select your team in Signing & Capabilities, Cmd+R
You can use the app fully for free if you build from source with your own Vercel token. App Store distribution funds development.
v1.0.0 — Initial Release
Verceltics v1.0.0
The first public release of Verceltics — Vercel web analytics on your iPhone.
Features
- Analytics Dashboard — Visitors, page views, bounce rate with period comparisons and interactive Swift Charts
- Full Breakdowns — Referrers, countries, UTMs, devices, browsers, OS, pages, routes, hostnames, events, flags, query params
- Multi-Project Support — Switch between all your Vercel projects with search, favicons, and domain detection
- Time Ranges — 24h, 7d, 30d, 3 months, 12 months
- Secure — Token stored in iOS Keychain, never leaves your device
- Paywall — StoreKit 2 subscriptions ($3.99/mo, $29.99/yr) with 3-day free trial
- Dark Mode — Pure black Vercel-style design
- Zero Dependencies — No third-party libraries
Tech Stack
SwiftUI, Swift Charts, async/await, Actors, Observable, iOS Keychain, StoreKit 2
Links
- Website: https://verceltics.site
- Privacy: https://verceltics.site/privacy
- Terms: https://verceltics.site/terms