Skip to content

Commit 917c67a

Browse files
committed
fix: remove Stats.tsx from gitignore to fix Netlify build error
1 parent b4ca376 commit 917c67a

5 files changed

Lines changed: 74 additions & 3 deletions

File tree

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,5 +29,4 @@ dist/
2929
# Documentation (internal)
3030
docs/
3131

32-
# Disabled pages
33-
src/pages/Stats.tsx
32+
# Disabled pages (kept for reference, no files currently disabled)

changelog.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,12 @@ Format based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
66

77
## [Unreleased]
88

9+
### Fixed
10+
11+
- Fixed Netlify build error: Stats.tsx was git-ignored causing module not found error
12+
- Removed src/pages/Stats.tsx from .gitignore so placeholder page is included in build
13+
- Updated Stats.tsx header comment to reflect it's no longer git-ignored
14+
915
### Added
1016

1117
- pi-opensync-plugin community plugin support (syncs Pi coding agent sessions)

files.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ React frontend application.
5959
| File | Description |
6060
| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
6161
| `Login.tsx` | Public homepage with WorkOS AuthKit integration. Shows "Go to Dashboard" button when logged in (no auto-redirect), "Sign in" when logged out. Loading spinner only during OAuth callback (not for cold page loads), includes privacy messaging, "Syncs with" section showing supported CLI tools (OpenCode, Claude Code, Droid, Codex CLI, Cursor, Pi), getting started section with plugin links including codex-sync and pi-opensync-plugin (mobile-visible), tan mode theme support with footer (theme switcher, Terms/Privacy/Updates links), footer icons (GitHub, Discord, Support, Discussions), updated mockup with view tabs and OC/CC source badges (desktop-only), feature list with Sync/Search/Private/Tag/Export/Delete keywords and eval datasets tagline, Watch the demo link, trust message with cloud/local deployment info, real-time Platform Stats leaderboard (Top Models, Top CLI) above Open Source footer link |
62-
| `Stats.tsx` | Public stats page (/stats) COMMENTED OUT to reduce Convex reads. Route still exists but shows placeholder "Stats page is currently disabled" message. Original code preserved in block comment for future use. Previously included MessageMilestoneCounter, GrowthChart, error boundary. |
62+
| `Stats.tsx` | Public stats page (/stats) disabled to reduce Convex reads. Route exists but shows placeholder "Stats page is currently disabled" message. Original code with MessageMilestoneCounter and GrowthChart was removed to simplify the file. |
6363
| `Dashboard.tsx` | Main dashboard with custom themed source filter dropdown (filters by user's enabled agents from Settings, dark/tan mode support, click-outside close, escape key close), source badges (CC/OC/FD), eval toggle button, Context link with search icon, Updates link with Bell icon, setup banner for new users with plugin cards (OpenCode, Claude Code, Factory Droid, Pi), mobile-optimized header/filters/session rows, URL param support for deep linking from Context search (?session=id), Cmd/Ctrl+K shortcut to open Context search, MessageBubble with content normalization helpers (getPartTextContent, getToolName) for multi-plugin format support, flash-free session transitions using lastValidSessionRef cache (shows cached content until new data loads, subtle corner spinner), sessions pagination (40 initial, load more 20 at a time), eval selection mode (checkbox toggle, select all, batch mark for evals), CompactDropdown component for themed filter dropdowns, and five views: Overview (responsive stat grids), Sessions (mobile-friendly list with stacked layout, pagination, eval selection), Evals (CRM-style compact list with hidden scrollbars, flex layout, 50 items + load more, truncated names, wider model column, CompactDropdown filters), Analytics (responsive breakdowns with CompactDropdown filters), Wrapped (Daily Sync Wrapped visualization) |
6464
| `Settings.tsx` | Tabbed settings: API Access (two-column layout with Plugin Setup and AI Coding Agents sections, keys, endpoints with plugin links including codex-sync), Profile (collapsible section for privacy, account info, Legal section with Terms/Privacy links, Danger Zone with delete data/account options). AI Coding Agents section lets users enable/disable CLI tools for the source filter dropdown (OpenCode, Claude Code, Factory Droid, Codex CLI with supported status, Cursor, Continue, Amp, Aider, Goose, Mentat, Cline, Kilo Code). Back link navigates to /dashboard |
6565
| `Docs.tsx` | Comprehensive documentation page with full-text search in header (Cmd/Ctrl+K shortcut, indexes all sections/keywords), left sidebar navigation (hidden scrollbar) with npm links and Updates link in Resources, Updates link in header, right table of contents, anchor tags, copy/view as markdown buttons, mobile responsive, works with both dark/tan themes. Covers use hosted version (with features, 3-plugin install cards with OC/CC/CX badges, login/sync for all three plugins), self-hosting requirements with cloud and 100% local deployment options, quick start (3-plugin cards), dashboard features, OpenCode plugin, Claude Code plugin, Codex CLI plugin with full documentation sections, API reference, search types, authentication, hosting, fork guide, troubleshooting, and FAQ. Links to opencode.ai, claude.ai, and openai.com/codex in hero and plugin sections. |

src/pages/Stats.tsx

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
// =============================================================================
2+
// STATS PAGE - DISABLED
3+
// The static stats page with animated counter and growth chart has been
4+
// commented out to reduce Convex reads. Route still exists but shows placeholder.
5+
// =============================================================================
6+
7+
import { Link } from "react-router-dom";
8+
import { useTheme } from "../lib/theme";
9+
import { ArrowLeft } from "lucide-react";
10+
11+
// Placeholder component - page disabled
12+
export function StatsPage() {
13+
const { theme } = useTheme();
14+
const isDark = theme === "dark";
15+
16+
return (
17+
<div
18+
className={`min-h-screen ${
19+
isDark ? "bg-[#0a0a0a] text-zinc-100" : "bg-[#f8f6f3] text-[#1a1a1a]"
20+
}`}
21+
>
22+
<header
23+
className={`border-b ${
24+
isDark
25+
? "border-zinc-800 bg-[#0a0a0a]"
26+
: "border-[#e6e4e1] bg-[#f8f6f3]"
27+
}`}
28+
>
29+
<div className="max-w-4xl mx-auto px-4 py-4 flex items-center gap-4">
30+
<Link
31+
to="/"
32+
className={`flex items-center gap-2 text-sm ${
33+
isDark
34+
? "text-zinc-400 hover:text-zinc-200"
35+
: "text-[#8b7355] hover:text-[#1a1a1a]"
36+
}`}
37+
>
38+
<ArrowLeft className="h-4 w-4" />
39+
Back
40+
</Link>
41+
<h1
42+
className={`text-lg font-semibold ${
43+
isDark ? "text-zinc-100" : "text-[#1a1a1a]"
44+
}`}
45+
>
46+
Platform Stats
47+
</h1>
48+
</div>
49+
</header>
50+
51+
<main className="max-w-4xl mx-auto px-4 py-16 text-center">
52+
<p className={`text-sm ${isDark ? "text-zinc-500" : "text-[#8b7355]"}`}>
53+
Stats page is currently disabled.
54+
</p>
55+
</main>
56+
</div>
57+
);
58+
}

task.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,14 @@ OpenSync supports two AI coding tools: **OpenCode** and **Claude Code**.
88

99
- [ ] (add next task here)
1010

11+
## Recently Completed (Stats.tsx Build Fix)
12+
13+
- [x] Fixed Netlify build error: Stats.tsx module not found
14+
- Root cause: src/pages/Stats.tsx was in .gitignore so file wasn't committed
15+
- Fix: Removed Stats.tsx from .gitignore so placeholder page is included
16+
- Updated Stats.tsx header comment to remove "git-ignored" reference
17+
- Build now passes
18+
1119
## Recently Completed (publicPlatformStats Query Fix)
1220

1321
- [x] Fixed publicPlatformStats query causing production black screen

0 commit comments

Comments
 (0)