Back to Home

Changelog

Last updated: June 17, 2026

Track the evolution of the DeepSeek API Usage Analytics Dashboard. Every version is documented below, covering new features, improvements, bug fixes, and dependency changes since the initial v0.1.0 release.

v0.6.6

2026-07-19

Improved
  • Homepage SEO metadata optimized — title changed to 'DeepSeek API Cost Tracker & Usage Analytics — Free CSV Dashboard' with keyword-first strategy; description rewritten to include primary keywords in first sentence.
  • Landing page hero section enhanced — added explicit keyword-rich subtitle below H1 on homepage and all three SEO landing pages (Cost Tracker, Cache Analyzer, Pricing Calculator) for improved search engine visibility.
  • Tool landing page metadata refined — Cost Tracker title updated to emphasize 'No Signup'; Cache Analyzer title streamlined; Pricing Calculator description de-emphasized model list in favor of action-oriented copy.

v0.6.5

2026-07-12

Added
  • Schema unit tests added — new `schema.test.ts` test file with validation coverage for JSON-LD schema generation functions, ensuring structured data correctness across versions.
Improved
  • Blog metadata management centralized — extracted all 3 blog article metadata (title, description, tags, publish date, SEO fields) into a shared `blogArticles.ts` module, replacing inline metadata in individual article page files for consistent single-source-of-truth management.
  • Reusable JsonLd component extracted — encapsulated JSON-LD structured data generation into a generic `<JsonLd />` component, simplifying the 5 blog article page files and `layout.tsx` that previously duplicated schema generation logic.
  • AuthorContent team member display refactored — rebuilt team member rendering with array mapping (`TEAM_MEMBERS` config array + `.map()`) replacing individual hardcoded member blocks, reducing code duplication and improving maintainability.
  • Schema module simplified — `schema.ts` streamlined by extracting reusable JSON-LD rendering logic into `JsonLd.tsx` component, reducing the module from 129+ lines of inline schema generation.

v0.6.4

2026-07-10

Added
  • Author & Team page comprehensively revamped — replaced placeholder team section with 4 real member profiles (Gavin Chen, Lindsay Lin, Angela Lee, Simon L.) each with role, description, and initial avatar in a responsive CSS Grid layout; page title updated to "Author & Team" with refined bilingual copy throughout the author page, member bios, and verification sections to reflect the expanded team scope.
  • Tencent Cloud affiliate program added to `affiliates.ts` registry — new referral link integrated into the AffiliateWall component across AuthorPage and CostTrackerPage, alongside expanded developer infrastructure vendor coverage (Vultr, Railway, Silicon Flow, Warp) with updated i18n labels "Recommended Tools We ARE USING" / "我们正在使用的好工具".
  • og-image.png static asset added to `/public` — 1200×630 social preview image for OpenGraph/Twitter cards, enhancing link previews when the site URL is shared on social media platforms.
Improved
  • Blog article cost comparison data refreshed — updated GPT-5.5 ($15.00→$5.00), GPT-5.4 ($5.00→$2.50), GPT-5.4 mini ($0.15→$0.75), Claude Fable 5 ($0.80→$10.00), Opus 4.8 ($15.00→$5.00), Sonnet 5 ($3.00→$2.00), and Haiku 4.5 ($0.25→$1.00) pricing across all comparison tables in the OpenAI vs DeepSeek blog article. Article narrative updated to include Anthropic Claude alongside OpenAI GPT and DeepSeek throughout the migration and cost-benefit analysis sections.
  • Affiliate link system streamlined — `affiliates.ts` registry trimmed and reorganized with updated vendor categories (`serverProviders`, `domainRegistrars`, `aiGateways`); CostTrackerPage recommended tools section switched from Portkey/Helicone to developer infrastructure tools (Vultr, Railway, Tencent Cloud, Silicon Flow, Warp) with new descriptive labels reflecting real usage context.
  • Blog article tag metadata enriched — added "Token Cost", "Claude", "GPT", and "Anthropic" tags to blog index article cards for improved SEO keyword coverage and search relevance across both English and Chinese locales.
Fixed
  • Blog comparison article URL normalization — sitemap, route metadata (`routeMetadata.ts`), and article page paths corrected from `/blog/openai-vs-deepseek-cost-comparison` to `/blog/openai-claude-vs-deepseek-cost-comparison` to accurately reflect the three-provider comparison scope (OpenAI GPT + Anthropic Claude + DeepSeek).

v0.6.3

2026-07-09

Added
  • CNY/USD currency toggle in Pricing Calculator — users can switch between RMB (¥) and US Dollar ($) for all pricing displays, with real-time conversion at approximate exchange rate.
  • AffiliateWall component — centralized affiliate link showcase section for SEO landing pages, providing structured vendor recommendations (Vultr, DigitalOcean, Namecheap, OpenRouter) with referral links and `rel=sponsored nofollow` compliance.
  • `<noscript>` SEO fallback content for all 3 tool landing pages — `CacheAnalyzerContent`, `CostTrackerContent`, and `PricingCalculatorContent` components provide bilingual crawler-readable content for better search engine indexing, matching the pattern used by PrivacyContent and TermsContent.
  • Expanded LLM cost comparison in the OpenAI vs DeepSeek blog article — added latest GPT models (GPT-4.1, GPT-4.5 Preview, GPT-5) and Claude models (Opus 4.5, Sonnet 4.5, Haiku 4.5) with updated pricing data across all model families for more comprehensive cost-benefit analysis.
Improved
  • Affiliate link system refactored — centralized `affiliates.ts` configuration expanded with additional vendor programs, improved type safety with categorized link groups (`serverProviders`, `domainRegistrars`, `aiGateways`), and better UTM tracking integration across landing pages and blog CTAs.
  • Landing page SEO enhanced — tool landing pages (`/deepseek-api-cost-tracker`, `/deepseek-cache-hit-rate-analyzer`, `/deepseek-api-pricing-calculator`) now include enhanced JSON-LD structured data and bilingual `<noscript>` crawler fallback content for better search engine visibility and EEAT trust signals.
  • Blog article cost comparison accuracy — updated with latest model pricing across GPT, Claude, and DeepSeek families for more accurate cost-benefit analysis in the OpenAI vs DeepSeek comparison article.
Fixed
  • Homepage URL canonicalization — fixed inconsistent canonical path generation for the root URL that could produce duplicate canonical URLs (both `/` and empty path variants). Simplified sitemap generation logic for cleaner, more maintainable output.

v0.6.2

2026-07-06

Added
  • URL-level i18n routing — introduced `/zh` prefix for Chinese locale routes (e.g., `/zh/guideline`, `/zh/blog`). English routes remain prefix-free. Full bilingual URL mirroring for all pages, SEO landing pages, and blog articles. New `localeRouting.ts` module centralizes locale detection, path construction, and redirect logic. New `site.ts` module centralizes site-level constants (SITE_URL, SITE_NAME, OG/logo image URLs). New `pageMetadata.ts` and `routeMetadata.ts` provide shared `generateMetadata()` helpers for all routes. `AppRootLayout.tsx` extracted from old `layout.tsx` to support locale-aware root layout. Each route now has independent SEO metadata generation via `(site)/` and `zh/` route groups.
  • Locale-aware navigation — updated all internal links (TitleBar, FooterBar, LandingPage, GuidelinePage, blog components, sub-pages) to use `buildLocalePath()` for correct locale prefix handling. LanguageSwitcher now uses locale-aware path construction for seamless locale switching without losing current page context.
Improved
  • Blog article multi-language support — replaced hardcoded English text in BlogArticlePage and BlogPostLayout with i18n translation keys. Blog metadata fetching now uses locale-aware logic, reusing existing blog translation strings for consistent bilingual content.
  • Landing page external link button styling — unified the visual style of outbound link buttons on the landing page, fixing inconsistent button appearances across different sections.
  • Blog index layout refinement — adjusted blog list paragraph max-width to `max-w-3xl` for improved reading experience on wide viewports.
  • Test coverage — added `localeRouting.test.ts` (69 new tests) for the locale routing module. Updated `analytics.test.ts` and `sitemap.test.ts` to cover new route structures.

v0.6.1

2026-07-05

Added
  • Author page (`/author`) — dedicated bilingual profile page for Gavin Chen with bio, skill tags, social links (GitHub, LinkedIn, Email, MindRose, WeChat), JSON-LD Person schema, independent SEO metadata (canonical, OG, Twitter), Apple-minimalist layout, and `<noscript>` crawler fallback via `AuthorContent.tsx`. Navigation link added to FooterBar.
  • Centralized author config module (`src/lib/authors.ts`) — single source of truth for author social/contact URLs (GitHub, LinkedIn, Email, MindRose, WeChat) and team member page URLs. Consumed by AuthorPage, BlogPostLayout (author metadata), and schema.ts (Person/Article JSON-LD). Blog article pages now include full author Person metadata (`sameAs` links, `worksFor` MindRose org) in JSON-LD.
Improved
  • Site-wide SEO metadata pass — added `author` meta tag, `keywords`, and `twitter:site`/`twitter:creator` to all page-level `generateMetadata()` calls (blog articles, tool landing pages, guideline, privacy, terms, changelog). Unified author references across all pages using the new `authors.ts` config.
  • Code cleanup — removed deprecated old landing page image asset. Removed unused module-level imports across page components.

v0.6.0

2026-07-04

Added
  • 3 SEO landing pages — DeepSeek API Cost Tracker, Cache Hit Rate Analyzer, and Pricing Calculator (interactive slider + competitor pricing table). Each page has independent canonical/OG/Twitter SEO metadata, bilingual content, and commerce-oriented modules (affiliate recommendations, MindRose service CTA).
  • Blog infrastructure — blog index with 3-card grid + 3 bilingual articles: Context Caching Guide, Top 5 Cost Optimization Tools comparison, and OpenAI vs DeepSeek cost-benefit analysis. Structured content system (`ArticleRenderer` + `ArticleSection[]`) enables rapid article creation. All articles support EN/ZH switching.
  • Affiliate marketing integration — centralized `affiliates.ts` config module (Vultr, DigitalOcean, Namecheap, OpenRouter referral URLs). Affiliate links added to tool pages and blog CTA areas with `rel=sponsored nofollow` compliance.
  • UTM-based conversion tracking funnel — `trackLandingCTA()`, `trackOutboundClick()`, `trackPageView()` helpers in analytics module. Full GA4 configuration guide at `docs/promotion/GA4_Tracking_Guide.md` with step-by-step setup instructions.
  • Blog navigation in TitleBar (pen icon) and FooterBar (text link). Logo in TitleBar now links to home page.
Improved
  • Responsive TitleBar — mobile layout with `...` popover menu (Agnes, GitHub, Guideline, Blog, Changelog, Theme toggle). Clean logo + title + language switcher on mobile; full icon row on desktop.
  • Enhanced icons — guideline now uses a compass icon (navigation/guide metaphor); blog uses a pen icon (writing/blog metaphor). Meanings are more distinct at small sizes.
  • SEO coverage — sitemap expanded from 5 to 12 entries (3 tool pages + blog index + 3 articles). llms.txt and llms-full.txt updated with all new pages. Page title optimized to include 'Cost Tracker' keyword. Blog index and all articles now have full generateMetadata().

v0.5.4

2026-06-24

Improved
  • Optimized token number display format for Chinese language, more suitable for Chinese users.

v0.5.3

2026-06-21

Added
  • SEO enhancements — added keywords, twitter:site/creator, and author meta tags to all pages. Added Organization JSON-LD structured data for Google Knowledge Panel brand recognition. Expanded BreadcrumbList JSON-LD with all sub-page entries. Differentiated sitemap lastModified dates per route. Landing page OG image support for richer social media link previews.
  • GA4 conversion events — added upload_csv, share_card, tab_switch, and language_switch event tracking via a shared trackEvent() analytics helper. Only active when NEXT_PUBLIC_GA_ID is configured.
  • Community infrastructure — added CONTRIBUTING.md, CODE_OF_CONDUCT.md, GitHub issue templates (bug report + feature request), and a pull request template to lower the contribution barrier.
Improved
  • Responsive hero numbers — hero text now scales down on mobile screens (text-5xl → sm:text-6xl → md:text-[5rem]), preventing horizontal overflow on small viewports.
  • Chart accessibility — all ECharts instances now have descriptive aria-labels for screen readers.
Fixed
  • Critical: DropZone error handling — added missing catch clause for ZIP/CSV processing errors. Previously, a corrupt file or extraction failure would leave the UI stuck in an infinite "Processing" spinner. Now shows a user-visible error message with the ability to retry. Same fix applied to Dashboard re-upload flow.
  • DataContext parser crash protection — wrapped parseDeepSeekData() in a try/catch inside the setTimeout callback. Previously, a synchronous parser crash would throw into the void with no user feedback. Now routes to the ErrorDisplay component.
  • Empty states — OverviewView, KeyView, TrendsView, and ProjectView now show descriptive empty-state messages when data is zero/empty after model filtering, instead of blank charts or tables.

v0.5.2

2026-06-17

Added
  • Social media share card — each dashboard tab (Overview / Projects / Keys / Cache / Trends) can now generate a 1200×630 infographic for sharing. Features customizable "From XXX" signature, optional quote message, per-tab ECharts mini charts, QR code pointing to deepseek-usage.xyz, app logo watermark, one-click copy to clipboard (paste directly into WeChat/Feishu/DingTalk), and PNG download.
Dependencies
  • Added `html2canvas` (DOM-to-canvas screenshot capture) and `qrcode` (client-side QR code generation) packages.

v0.5.1

Added
  • Changelog page (/changelog) — a dedicated page showcasing the complete version history, in Apple-minimalist bilingual design matching privacy/terms pages. Includes JSON-LD WebPage schema, independent SEO metadata (canonical, OpenGraph, Twitter), and version entries organized by category (Added/Improved/Fixed/Dependencies) with color-coded dots.
  • TitleBar clock icon linking to the changelog page, alongside the existing guideline book icon.
  • LandingPage About section "View Changelog →" link below the social link pills.
Improved
  • TitleBar tooltips (User Guide, Changelog) now properly support i18n, displaying localized text in both English and Chinese.
  • Sitemap (sitemap.xml) expanded with /changelog entry (priority 0.5, monthly change frequency).
  • Translation system extended with changelog.* group (en + zh).

v0.5.0

Added
  • ZIP file upload support — users can now drag DeepSeek platform ZIP exports directly into the dashboard. ZIP archives containing CSV files are automatically extracted and processed in-browser. Huge thanks to @taylord0ng for this contribution.
  • Custom project grouping for API keys — a new "By Project" tab lets you organize API keys into user-defined project groups via drag-and-drop, with per-project cost aggregation, token usage tracking, and cache hit rate analysis. Inspired by @taylord0ng.
  • Project configuration modal — drag-and-drop interface for assigning keys to custom projects, with local persistence via localStorage, reset-to-default, empty-state prompts, keyboard-friendly operation, and dropdown menus for unassigned keys.
  • Reusable CopyButton component — encapsulated clipboard copy logic with hover tooltip and i18n-aware success messages. All inline copy functionality (KeyView, ProjectView) now uses this shared component.
  • One-click cost copy — copy total cost from the Overview hero number with a single click.
  • 50MB per-file upload size limit — protects against accidental or malicious oversized file uploads that could freeze the browser. Includes user-facing warning prompts and a dedicated FAQ entry.
Improved
  • Upload validation — file size check with clear error messaging, duplicate project name validation with inline hints, and unsaved-changes confirmation dialog when closing the project config modal.
  • Keyboard accessibility — full keyboard navigation support in the project configuration modal: Enter to confirm, Escape to close, arrow keys to navigate, plus on-screen keyboard shortcut hints.
  • UI polish — fixed drag highlight state glitch in project key lists, resolved React key warnings in config lists, adjusted modal layout for better visual balance.
  • i18n coverage — all new UI elements (project view, copy button, upload limits, config modal) fully translated in both English and Chinese.
  • Fixed CopyButton timer memory leak — timers now properly cleaned up on unmount, preventing stale state updates.
  • User guide and landing page — updated FAQ (new entries for file size limits and project grouping), usage guide screenshots and documentation, and landing page copy to reflect new features.
Dependencies
  • Added `jszip` dependency for client-side ZIP extraction.

v0.4.0

Added
  • Privacy Policy page (/privacy) — bilingual (en/zh) legal content covering 7 sections, independent SEO metadata (canonical, OpenGraph, Twitter), JSON-LD WebPage schema, Apple-minimalist legal-text layout with GitHub source links for transparency verification.
  • Terms of Use page (/terms) — bilingual (en/zh) legal content covering 8 sections, independent SEO metadata and JSON-LD WebPage schema.
  • MIT LICENSE file — added to the project root for open-source licensing clarity.
  • FooterBar now links to Privacy Policy and Terms of Use pages alongside Guideline, GitHub, and version.
Improved
  • sitemap.xml expanded to include /privacy and /terms entries (priority 0.5, monthly change frequency).
  • Translation system extended with privacy.* (21 keys) and terms.* (22 keys) groups in both English and Chinese.
  • SEO metadata: NEXT_PUBLIC_SITE_URL now injected into privacy and terms page metadata generation.

v0.3.3

Added
  • Cache hit rate percentage display on the hits-vs-misses stacked bar chart in CacheView: hit rate shown in tooltip and as labels on top of each key's bar.
  • vercel.json with production security headers (CSP, HSTS, X-Frame-Options, etc.) and optimized static asset caching rules.
Fixed
  • Cache hit rate chart accumulation bug in TrendsView: daily ratios were incorrectly summed instead of computing hit/(hit+miss) from raw token totals, causing values to potentially exceed 100%.

v0.3.2

Added
  • User Guide page (/guideline) — comprehensive usage documentation covering dashboard overview, CSV export, data upload, chart interpretation, and troubleshooting; bilingual (en/zh) with annotated screenshots.
  • Guideline navigation links in TitleBar (book icon), FooterBar (text link), and LandingPage (below How It Works section).
  • 3 new FAQ entries (Q5–Q7): "Why does my cost show as $0?", "What does Incomplete Upload mean?", and "Where can I find more troubleshooting help?".
  • Dashboard overview screenshot and logo in README files (en + zh).
Improved
  • SEO: added /guideline to sitemap.xml.
  • JSON-LD FAQPage schema expanded with Q5–Q7 entries (bilingual).
  • Added /docs/ to .gitignore.

v0.3.1

Added
  • JSON-LD BreadcrumbList schema (bilingual en/zh) for better search engine understanding of site structure.
Improved
  • SEO: extended Chinese meta.description with privacy and team info (~100 characters, up from ~37).
  • SEO: added alternateLocale: ["zh_CN"] to OpenGraph metadata, complementing existing hreflang alternates.
  • SEO: added id attributes to landing page sections (#how-it-works, #faq, #about) for direct anchor linking.
  • JSON-LD: added version field to SoftwareApplication schema.
  • Performance: added content-visibility: auto to below-the-fold landing page sections (How It Works, FAQ, About) to reduce initial render cost.

v0.3.0

Added
  • Rebuilt About section: expanded from a single paragraph into 4 themed subsections — Why We Built This, Under the Hood: Privacy & Tech, About MindRose, and Let's Work Together — each separated by dashed <hr> dividers.
  • Email copy button in the Contact area: one-click clipboard copy with textarea fallback, anti-scraping dynamic address concatenation, and SVG checkmark copy feedback with 2s toast.
  • Social link pills: GitHub repository, Gavin's LinkedIn, and MindRose website — each with themed SVG icons, rounded borders, and hover background.
Improved
  • Landing page sections now separated by thin horizontal <hr> dividers for clearer visual hierarchy.
  • Added 14 new landing.* translation keys (en + zh) for all About sub-sections.
  • Rebranded site title to "DeepSeek API Usage Analytics Dashboard by Gavin & Mindrose Team" across metadata, JSON-LD schema, footer, and translations.
  • Fixed landing page heading hierarchy: section titles upgraded from <h3> to <h2>, sub-section titles from <h4> to <h3>.

v0.2.3

Added
  • Full-site SEO: generateMetadata() with canonical URLs, OpenGraph, Twitter cards, and hreflang alternates.
  • JSON-LD structured data: bilingual SoftwareApplication + FAQPage schemas (via src/lib/schema.ts).
  • robots.txt and sitemap.xml generation at build time (via src/app/robots.ts and src/app/sitemap.ts).
  • <noscript> crawler fallback content (LandingContent.tsx) for search engines that don't execute JavaScript.
  • Theme-aware landing page background images — CSV and chart themed sketches that swap with light/dark mode.
  • Semantic hidden H1 on dashboard view for screen readers and SEO.
Improved
  • layout.tsx upgraded to generateMetadata() for dynamic build-time SEO injection.
  • FooterBar.tsx extracted as standalone component with animate and sectionRef props.
  • TitleBar.tsx extracted as standalone component with logo, GitHub icon, and unified layout.
  • Added warning translation group (date mismatch, no cost match, partial cache data, schema drift).

v0.2.2

Added
  • Logo icon and favicon.ico — added brand identity assets to TitleBar and browser tab.
  • Replaced default English font with local Hubot Sans WOFF2 files (3 weights: 400/500/700).
Improved
  • Redesigned LanguageSwitcher as Apple-style pill segmented control with role="radio" accessibility.
  • Redesigned ThemeSwitcher as SVG sun/moon icon button with hover background.
  • Added GitHub icon link to TitleBar for quick repository access.
  • FooterBar now displays app version number alongside copyright and GitHub link.
  • Landing page content container widened from max-w-3xl to max-w-6xl for better visual balance.
  • Added scroll-reveal fade-in + slide-up animations on landing page sections via Intersection Observer.
  • Added accordion expand/collapse animation for the QA section.
  • Added global accessibility styles: smooth scrolling, prefers-reduced-motion support, color-scheme for native UI, focus-visible outlines.

v0.2.1

Added
  • Landing page — built a complete pre-upload landing page with Hero, upload area, How It Works steps, FAQ, and About sections.

v0.2.0

Added
  • Full light/dark theme switching — refactored global CSS with custom properties for unified dual-theme color management.
  • Model filter — added Apple-style segmented capsule filter in Dashboard, optimized UI and data presentation.
Improved
  • Refined overall UI interactions and visual styling.
  • Refactored all view components to render from filtered data; added Hero big-number summary sections at the top of each view.

v0.1.0

Added
  • Built the DeepSeek API usage analytics dashboard — implemented CSV parsing, multi-month file concatenation, and error validation logic; all data processing runs purely in the browser.
  • Developed drag-and-drop upload component, data context layer, and multi-dimensional visualization dashboard.
  • Added full i18n support with language switching, and refactored numeric formatting utilities to adapt unit display rules for different locales.


GitHub Repository