From 560427afc2956b5b082b7952a3fc3bff5b3ee898 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 8 Jun 2026 13:50:37 +0000 Subject: [PATCH 1/4] docs: correct Node version requirement and add README badges - Fix Node.js requirement to 20.9+ (Next.js 16 minimum) across README, AGENTS, CONTRIBUTING, docs, and webapp-testing skill (was incorrectly 18+) - Add engines field to package.json to enforce/document the Node requirement - Add license, Next.js, React, TypeScript, and PRs-welcome badges to README --- .github/skills/webapp-testing/SKILL.md | 4 ++-- AGENTS.md | 2 +- CONTRIBUTING.md | 2 +- README.md | 8 +++++++- docs/PRD.md | 2 +- docs/PROJECT_SUMMARY.md | 4 ++-- package.json | 3 +++ 7 files changed, 17 insertions(+), 8 deletions(-) diff --git a/.github/skills/webapp-testing/SKILL.md b/.github/skills/webapp-testing/SKILL.md index a5fb3bc..1849c56 100644 --- a/.github/skills/webapp-testing/SKILL.md +++ b/.github/skills/webapp-testing/SKILL.md @@ -23,7 +23,7 @@ Use this skill when you need to: ## Prerequisites -- Node.js 18+ installed (20+ recommended) +- Node.js 20.9+ installed (required by Next.js 16) - BitSleuth website running locally on port 3000 - Playwright will be installed automatically if not present @@ -250,7 +250,7 @@ When testing the BitSleuth website, verify: ## Limitations -- Requires Node.js 18+ environment +- Requires Node.js 20.9+ environment - Cannot test native mobile apps (BitSleuth is web-only) - May have issues with complex authentication flows (if implemented) - Next.js App Router may require waiting for hydration to complete diff --git a/AGENTS.md b/AGENTS.md index b6e13b6..2fc548f 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -16,7 +16,7 @@ - **Framework:** Next.js 16.0.10 (App Router) - **Language:** TypeScript 5.9.3 (strict mode enabled) - **Runtime:** React 19.2.0 -- **Node.js:** 18+ (20+ recommended) +- **Node.js:** 20.9+ (required by Next.js 16) ### UI & Styling - **CSS Framework:** Tailwind CSS 3.4.18 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6195707..760992b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -24,7 +24,7 @@ When creating new documentation (guides, specifications, strategies, etc.), alwa ## 🚀 Getting Started ### Prerequisites -- **Node.js**: 18+ (20+ recommended) +- **Node.js**: 20.9+ (required by Next.js 16) - **npm**: Latest version - **Git**: For version control diff --git a/README.md b/README.md index 789a8f0..ea63592 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,12 @@ > **Bitcoin Wallet Analysis & Privacy Tools** +[![License: AGPL-3.0](https://img.shields.io/badge/License-AGPL_3.0-blue.svg)](./LICENSE) +![Next.js](https://img.shields.io/badge/Next.js-16.1.1-black?logo=next.js) +![React](https://img.shields.io/badge/React-19.2.3-149eca?logo=react) +![TypeScript](https://img.shields.io/badge/TypeScript-5.9.3-3178c6?logo=typescript) +![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg) + BitSleuth is a comprehensive Next.js 16.1.1 website that serves as the primary marketing and educational learning hub for Bitcoin analysis tools. The platform includes product landing pages for a Bitcoin wallet analyzer and Bitcoin wallet app, as well as an extensive educational glossary, SEO optimization, and privacy-compliant analytics. - **🌐 Production:** [https://www.bitsleuth.ai](https://www.bitsleuth.ai) @@ -57,7 +63,7 @@ npm run ci # Runs lint + typecheck + test + build ## 🚀 Development Workflow ### Prerequisites -- **Node.js**: 18+ (20+ recommended) +- **Node.js**: 20.9+ (required by Next.js 16) - **npm**: Latest version (11.7.0 configured via `packageManager`) - **Git**: For version control diff --git a/docs/PRD.md b/docs/PRD.md index 4040ca2..ec916d6 100644 --- a/docs/PRD.md +++ b/docs/PRD.md @@ -83,7 +83,7 @@ - **Firebase:** Hosting platform and potential future integration for user management **Dependencies:** -- Node.js 18+ (20+ recommended) +- Node.js 20.9+ (required by Next.js 16) - Google Analytics Measurement ID for tracking - Firebase App Hosting for deployment diff --git a/docs/PROJECT_SUMMARY.md b/docs/PROJECT_SUMMARY.md index cb3a924..bcd761e 100644 --- a/docs/PROJECT_SUMMARY.md +++ b/docs/PROJECT_SUMMARY.md @@ -49,7 +49,7 @@ BitSleuth is a comprehensive Next.js 16 website serving as the primary marketing - **Next.js:** 16.0.10 (App Router) - **React:** 19.2.0 - **TypeScript:** 5.9.3 -- **Node.js:** 18+ (20+ recommended) +- **Node.js:** 20.9+ (required by Next.js 16) ### Styling & UI - **Tailwind CSS:** 3.4.18 (stable v3) @@ -467,7 +467,7 @@ All Radix UI primitives updated to latest versions: ### Development Workflow #### Prerequisites -- Node.js 18+ (20+ recommended) +- Node.js 20.9+ (required by Next.js 16) - npm (latest version) #### Local Development diff --git a/package.json b/package.json index 137d37f..3b50a69 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,9 @@ }, "private": true, "packageManager": "npm@11.7.0", + "engines": { + "node": ">=20.9.0" + }, "scripts": { "dev": "next dev --turbopack -p 3000", "build": "next build --webpack", From b30caa64aed45f22e577f2baa48803db567e45d5 Mon Sep 17 00:00:00 2001 From: James Pepper Date: Mon, 8 Jun 2026 15:00:43 +0100 Subject: [PATCH 2/4] Remove development link from README Removed development link from the README file. --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index ea63592..5d58854 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,6 @@ BitSleuth is a comprehensive Next.js 16.1.1 website that serves as the primary marketing and educational learning hub for Bitcoin analysis tools. The platform includes product landing pages for a Bitcoin wallet analyzer and Bitcoin wallet app, as well as an extensive educational glossary, SEO optimization, and privacy-compliant analytics. - **🌐 Production:** [https://www.bitsleuth.ai](https://www.bitsleuth.ai) -- **🧑‍💻 Development:** [https://website-dev--bitsleuth.us-central1.hosted.app](https://website-dev--bitsleuth.us-central1.hosted.app) ## ✨ Key Features From c81c2b0fee9dcd9e19cb376dc74e45e648d2ca98 Mon Sep 17 00:00:00 2001 From: James Pepper Date: Mon, 8 Jun 2026 15:08:05 +0100 Subject: [PATCH 3/4] Add files via upload --- public/1200x630.png | Bin 0 -> 7695 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 public/1200x630.png diff --git a/public/1200x630.png b/public/1200x630.png new file mode 100644 index 0000000000000000000000000000000000000000..d83a5593232f584d578a1054195606d8f8e441ce GIT binary patch literal 7695 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 s7 Date: Mon, 8 Jun 2026 15:08:48 +0100 Subject: [PATCH 4/4] Add BitSleuth image to README Added an image to the README for visual enhancement. --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 5d58854..818c3f2 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,8 @@ BitSleuth is a comprehensive Next.js 16.1.1 website that serves as the primary marketing and educational learning hub for Bitcoin analysis tools. The platform includes product landing pages for a Bitcoin wallet analyzer and Bitcoin wallet app, as well as an extensive educational glossary, SEO optimization, and privacy-compliant analytics. +![BitSleuth](public/1200x630.png) + - **🌐 Production:** [https://www.bitsleuth.ai](https://www.bitsleuth.ai) ## ✨ Key Features