Visual competitive intelligence for crypto products. Track what wallets, exchanges, and DeFi apps ship — before they announce it. Open http://localhost:3000. - Framework: Next.js 14 (App Router, static export) - Styling: Tailwind CSS - Language: TypeScript - Deploy: Cloudflare Pages Zero-cost, fully local pipeline for screenshotting crypto apps: Run node scripts/wallet-setup.mjs once to configure
Add this skill
npx mdskills install fernikolic/clawdentialsProject documentation for a crypto product intelligence tool, not agent instructions
Visual competitive intelligence for crypto products. Track what wallets, exchanges, and DeFi apps ship — before they announce it.
npm install
npm run dev
Open http://localhost:3000.
src/
├── app/
│ ├── page.tsx # Landing page
│ ├── library/
│ │ ├── page.tsx # Library browse with filters
│ │ └── [slug]/page.tsx # App detail page
│ ├── screens/ # Screen explorer + detail pages
│ ├── changes/ # Change feed
│ ├── flows/ # Flow browser
│ ├── saved/ # Saved collections
│ ├── layout.tsx # Root layout
│ └── globals.css # Tailwind + custom styles
├── components/
│ ├── Header.tsx # Sticky nav
│ ├── Footer.tsx
│ ├── Hero.tsx # Landing hero section
│ ├── ValueProps.tsx # 3-column value props
│ ├── HowItWorks.tsx # 3-step process
│ ├── Pricing.tsx # 3-tier pricing cards
│ ├── LogoCloud.tsx # Tracked apps cloud
│ ├── FilterBar.tsx # Category + flow filters
│ ├── AppCard.tsx # App card for library grid
│ ├── ScreenGallery.tsx # Screenshot gallery grid
│ ├── ScreenModal.tsx # Full-screen screenshot viewer
│ ├── ChangeTimeline.tsx # UI change history timeline
│ └── ...
├── data/
│ └── apps.ts # All app data (types + 39 apps)
└── lib/
├── firebase.ts # Auth + Firestore
├── payments.ts # Payment gating logic
└── stripe.ts # Stripe integration
scripts/
├── crawl-app.mjs # Deterministic Playwright crawler
├── label-local.mjs # Local flow classification + renaming
├── auto-tag.mjs # Auto-infer screen tags
└── wallet-setup.mjs # MetaMask extension setup
Zero-cost, fully local pipeline for screenshotting crypto apps:
crawl-app.mjs → raw screenshots + {slug}-raw.json
label-local.mjs → renamed files + {slug}-manifest.json
auto-tag.mjs → tags added to apps.ts screen entries
| Mode | Command | Use case |
|---|---|---|
| Public | node scripts/crawl-app.mjs --slug aave | Landing pages, marketing sites |
| Login | node scripts/crawl-app.mjs --slug binance --login | Exchanges, dashboards (manual login, auto-crawl) |
| Wallet | node scripts/crawl-app.mjs --slug uniswap --wallet | DeFi apps (MetaMask, auto-approves popups) |
Run node scripts/wallet-setup.mjs once to configure MetaMask before using --wallet.
Edit src/data/apps.ts. Set detailed: true and populate screenshots and changes arrays for apps with full detail pages. Basic listings only need the top-level fields.
npm run buildoutdarkscreen.pages.devTo use a custom domain, add a CNAME record pointing to darkscreen.pages.dev.
npm run build # Static export to out/
npm run start # Serve the built site
Install via CLI
npx mdskills install fernikolic/clawdentialsDarkscreen is a free, open-source AI agent skill. Visual competitive intelligence for crypto products. Track what wallets, exchanges, and DeFi apps ship — before they announce it. Open http://localhost:3000. - Framework: Next.js 14 (App Router, static export) - Styling: Tailwind CSS - Language: TypeScript - Deploy: Cloudflare Pages Zero-cost, fully local pipeline for screenshotting crypto apps: Run node scripts/wallet-setup.mjs once to configure
Install Darkscreen with a single command:
npx mdskills install fernikolic/clawdentialsThis downloads the skill files into your project and your AI agent picks them up automatically.
Darkscreen works with Claude Code, Claude Desktop, Cursor, Vscode Copilot, Windsurf, Continue Dev, Codex, Gemini Cli, Amp, Roo Code, Goose, Opencode, Trae, Qodo, Command Code. Skills use the open SKILL.md format which is compatible with any AI coding agent that reads markdown instructions.