- Last Updated: 2025-10-20 Thank you for visiting TrakRF ("we," "us," or "our"). This Privacy
- Policy outlines how we collect, use, and protect your personal and non-personal information
- when you use our website located at https://trakrf.id (the "Website"). By accessing or using
- the Website, you agree to the terms of this Privacy Policy. If you do not agree with the
- practices described in this policy, please do not use the Website. 1. Information We Collect
- 1.1 Personal Data We collect the following personal information from you: Name: We collect
- your name to personalize your experience and communicate with you effectively. Email: We
- collect your email address to send you important information regarding your orders, updates,
- and communication. Payment Information: We collect payment details to process your orders
- securely. However, we do not store your payment information on our servers. Payments are
- processed by trusted third-party payment processors. 1.2 Non-Personal Data We may use web
- cookies and similar technologies to collect non-personal information such as your IP address,
- browser type, device information, and browsing patterns. This information helps us to enhance
- your browsing experience, analyze trends, and improve our services. 2. Purpose of Data
- Collection We collect and use your personal data for the sole purpose of order processing.
- This includes processing your orders, sending order confirmations, providing customer support,
- and keeping you updated about the status of your orders. 3. Data Sharing We do not share your
- personal data with any third parties except as required for order processing (e.g., sharing
- your information with payment processors). We do not sell, trade, or rent your personal
- information to others. 4. Children's Privacy TrakRF is not intended for children under the age
- of 13. We do not knowingly collect personal information from children. If you are a parent or
- guardian and believe that your child has provided us with personal information, please contact
- us at the email address provided below. 5. Updates to the Privacy Policy We may update this
- Privacy Policy from time to time to reflect changes in our practices or for other operational,
- legal, or regulatory reasons. Any updates will be posted on this page, and we may notify you
- via email about significant changes. 6. Contact Information If you have any questions,
- concerns, or requests related to this Privacy Policy, you can contact us at: Email:
- support@trakrf.id For all other inquiries, please visit our Contact Us page on the Website. By
- using TrakRF, you consent to the terms of this Privacy Policy.
-
-
-
-```
-
-**Validation**:
-
-```bash
-pnpm lint
-pnpm typecheck
-pnpm build
-# Verify dist/privacy-policy/index.html exists
-# Verify support@trakrf.id appears in content (not marc@)
-```
-
-### Task 4: Create Terms of Service Page
-
-**File**: `src/pages/tos.astro`
-**Action**: CREATE
-**Source**: `/home/mike/trakrf-web/app/tos/page.tsx` lines 60-92
-
-**Critical Cleanup** (inline during migration):
-
-- ❌❌❌ Line 90: `marc@shipfa.st` → `support@trakrf.id` (CRITICAL ERROR)
-- ❌ Line 60: Update date from `September 26, 2023` to `October 20, 2025`
-- ❌ Line 84: Change `France` → `the United States of America` (governing law)
-- ❌ Remove ChatGPT comments (lines 5-26 from source - don't migrate)
-
-**Implementation**:
-
-```astro
----
-import BaseLayout from '../layouts/BaseLayout.astro';
-
-const title = 'Terms of Service - TrakRF';
-const description = 'Terms of Service for TrakRF - your rights and responsibilities';
----
-
-
-
- Last Updated: October 20, 2025 Welcome to TrakRF! These Terms of Service ("Terms") govern your
- use of the TrakRF website at https://trakrf.id ("Website") and the services provided by
- TrakRF. By using our Website and services, you agree to these Terms. 1. Description of TrakRF
- TrakRF is a platform that offers a JavaScript code boilerplate to assist entrepreneurs in
- launching their startups more efficiently. 2. Ownership and Usage Rights When you purchase a
- package from TrakRF, you gain the right to download and use the code provided for creating
- applications. You own the code you create but do not have the right to resell it. We offer a
- full refund within 7 days of purchase, as specified in our refund policy. 3. User Data and
- Privacy We collect and store user data, including name, email, and payment information, as
- necessary to provide our services. For details on how we handle your data, please refer to our
- Privacy Policy at https://trakrf.id/privacy-policy. 4. Non-Personal Data Collection We use web
- cookies to collect non-personal data for the purpose of improving our services and user
- experience. 5. Governing Law These Terms are governed by the laws of the United States of
- America. 6. Updates to the Terms We may update these Terms from time to time. Users will be
- notified of any changes via email. For any questions or concerns regarding these Terms of
- Service, please contact us at support@trakrf.id. Thank you for using TrakRF!
-
-
-
-```
-
-**Validation**:
-
-```bash
-pnpm lint
-pnpm typecheck
-pnpm build
-# Verify dist/tos/index.html exists
-# Verify support@trakrf.id appears (not marc@shipfa.st)
-# Verify "United States of America" appears (not France)
-```
-
-### Task 5: Add Blog Link to Footer
-
-**File**: `src/components/Footer.astro`
-**Action**: MODIFY (lines 34-44)
-**Pattern**: Add link alongside Support and Pricing
-
-**Implementation**:
-
-Find the LINKS section (lines 34-44) and add blog link:
-
-```astro
-
-```
-
-**Validation**:
-
-```bash
-pnpm lint
-pnpm typecheck
-pnpm build
-# Verify footer has blog link on homepage
-```
-
-### Task 6: Test Multi-Page Navigation
-
-**File**: N/A (manual testing)
-**Action**: VERIFY
-
-**Test Cases**:
-
-1. Start dev server: `pnpm dev`
-2. Navigate to `http://localhost:4321`
-3. Test navigation:
- - Click Footer "Blog" link → Should reach `/blog` placeholder
- - Click Footer "Privacy policy" link → Should reach `/privacy-policy`
- - Click Footer "Terms of services" link → Should reach `/tos`
- - From blog page, click "Back to Home" → Should reach `/`
- - From privacy page, click "Back" → Should reach `/`
- - From TOS page, click "Back" → Should reach `/`
-4. Verify Header/Footer appear consistently on all pages
-5. Verify mobile menu works on all pages (Alpine.js functional)
-6. Verify responsive design works (mobile, tablet, desktop)
-
-**Validation**:
-
-```bash
-# Dev server should be running without errors
-pnpm dev
-# Check browser console for errors (should be 0)
-```
-
-### Task 7: Final Validation Gates
-
-**File**: N/A (validation commands)
-**Action**: RUN ALL GATES
-
-**Validation Sequence**:
-
-```bash
-# Gate 1: Lint (syntax & style)
-pnpm lint
-
-# Gate 2: Typecheck (type safety)
-pnpm typecheck
-
-# Gate 3: Build (production build)
-pnpm build
-
-# Gate 4: Verify all pages generated
-ls -la dist/
-ls -la dist/blog/
-ls -la dist/privacy-policy/
-ls -la dist/tos/
-
-# Gate 5: Manual content verification
-grep -r "marc@" dist/ # Should return 0 results
-grep -r "support@trakrf.id" dist/ # Should find in legal pages
-grep -r "France" dist/ # Should return 0 results
-grep -r "United States of America" dist/ # Should find in TOS
-```
-
-**Success Criteria**:
-
-- ✅ All validation gates pass (lint, typecheck, build)
-- ✅ 5 HTML files generated: index.html, blog/index.html, privacy-policy/index.html, tos/index.html
-- ✅ No `marc@` emails remain in any content
-- ✅ All legal pages use `support@trakrf.id`
-- ✅ TOS shows USA as governing law (not France)
-- ✅ All navigation links functional
-- ✅ Multi-page routing works flawlessly
-
-## Risk Assessment
-
-**Risk**: Legal content may contain additional template references not identified in spec
-**Mitigation**: Manual grep verification for `shipfa.st`, `marc@`, `France` in Task 7
-
-**Risk**: Mobile menu may not work on new pages (Alpine.js not loaded)
-**Mitigation**: BaseLayout includes Alpine.js CDN script (Task 1)
-
-**Risk**: Blog placeholder may look unprofessional or incomplete
-**Mitigation**: Clear "Coming Soon" messaging sets expectations (Task 2)
-
-**Risk**: SEO metadata may be incomplete or missing
-**Mitigation**: BaseLayout enforces consistent SEO metadata across all pages (Task 1)
-
-## Integration Points
-
-- **Header/Footer**: Used consistently across all pages via BaseLayout
-- **Navigation**: Footer gains blog link, all navigation tested in Task 6
-- **Routing**: Astro file-based routing automatically handles new pages
-- **SEO**: BaseLayout provides consistent OpenGraph/Twitter Card metadata
-- **Styling**: Global CSS and DaisyUI already available from Phases 1 & 2
-
-## VALIDATION GATES (MANDATORY)
-
-**CRITICAL**: These are not suggestions - they are GATES that block progress.
-
-After EVERY code change:
-
-```bash
-pnpm lint # Gate 1: Syntax & Style
-pnpm typecheck # Gate 2: Type Safety
-pnpm build # Gate 3: Production Build
-```
-
-**Enforcement Rules**:
-
-- If ANY gate fails → Fix immediately
-- Re-run validation after fix
-- Loop until ALL gates pass
-- After 3 failed attempts → Stop and ask for help
-
-**Do not proceed to next task until current task passes all gates.**
-
-## Validation Sequence
-
-After each task (1-5):
-
-```bash
-pnpm lint && pnpm typecheck && pnpm build
-```
-
-After Task 6 (testing):
-
-```bash
-# Manual testing - no automated gates
-```
-
-After Task 7 (final validation):
-
-```bash
-pnpm lint && pnpm typecheck && pnpm build
-grep -r "marc@" dist/ # Should return 0 results
-grep -r "shipfa.st" dist/ # Should return 0 results
-```
-
-## Plan Quality Assessment
-
-**Complexity Score**: 2/10 (LOW - WELL-SCOPED)
-
-**Confidence Score**: 9/10 (HIGH)
-
-**Confidence Factors**:
-
-- ✅ Clear requirements from spec (blog placeholder, legal pages)
-- ✅ Similar patterns found in codebase at `src/pages/index.astro`
-- ✅ All clarifying questions answered (BaseLayout, DaisyUI buttons, USA law)
-- ✅ Existing Header/Footer components to reuse
-- ✅ Source legal content clearly identified with line numbers
-- ✅ All critical errors documented and addressed in migration plan
-- ✅ No external dependencies or new packages required
-- ✅ Straightforward page creation following existing patterns
-
-**Assessment**: High confidence implementation. This is a straightforward page creation task following well-established patterns from Phases 1 & 2. The critical legal content cleanup is clearly documented and will be addressed inline during migration. Risk is minimal - static pages with no interactivity beyond existing Header mobile menu.
-
-**Estimated one-pass success probability**: 95%
-
-**Reasoning**: All patterns exist, all risks identified, clear task breakdown with validation gates. Only minor risk is human error in content cleanup, mitigated by grep verification in Task 7. This completes the structural migration and achieves clean closure on trakrf-web codebase.
diff --git a/spec/content-migration-phase3/spec.md b/spec/content-migration-phase3/spec.md
deleted file mode 100644
index 27ec7c9..0000000
--- a/spec/content-migration-phase3/spec.md
+++ /dev/null
@@ -1,391 +0,0 @@
-# Feature: TrakRF-Web Content Migration to Astro - Phase 3: Blog Placeholder & Legal Pages
-
-## Metadata
-
-**Type**: feature
-**Depends On**: content-migration-phase2 (completed - PR #4)
-
-## Outcome
-
-Complete the TrakRF marketing site structure by adding a blog placeholder page and legal pages (Privacy Policy, Terms of Service) with proper content cleanup. Extract all remaining structural value from trakrf-web and achieve complete site architecture closure.
-
-## User Story
-
-As a visitor to trakrf.id
-I want to access legal information and see that a blog is planned
-So that I can understand the terms of service and know to check back for future content
-
-## Context
-
-**Current State (Phase 2 Complete)**:
-
-- ✅ Complete homepage with 7 sections (all interactive)
-- ✅ Alpine.js interactivity (accordions, mobile menu, smooth scroll)
-- ✅ Optimized images and build pipeline
-- ✅ 0 validation errors, production-ready
-- ✅ Footer has legal links but pages don't exist yet
-
-**Desired State (Phase 3)**:
-
-- Complete site structure with all routes from trakrf-web
-- Blog placeholder page at `/blog` ("Coming Soon" with Header/Footer)
-- Privacy Policy and Terms of Service pages with critical cleanup
-- All navigation links functional (no dead links)
-- All shipfa.st/marc template references cleaned up
-- Zero reason to revisit trakrf-web codebase
-
-**Scope**: Add 3 new pages (blog placeholder, privacy policy, TOS) to complete structural migration and validate multi-page routing.
-
-**Quality Bar**: Clean legal content, functional blog placeholder, all navigation working, complete architectural extraction from source.
-
-**Philosophy**: Extract all structural value from trakrf-web (routes, navigation, page architecture) without migrating template sample content. Blog posts will be added later as original TrakRF content.
-
-## Technical Requirements
-
-### Phase Status
-
-**Phase 1 (COMPLETE ✅)**: Static foundation - Header, Hero, Problem, Footer
-**Phase 2 (COMPLETE ✅)**: Interactive components - FeaturesAccordion, Pricing, FAQ, CTA
-**Phase 3 (THIS PR)**: Site structure completion - Blog placeholder + Legal pages (3 pages)
-
-### Blog Placeholder Page (1 page)
-
-#### 1. Blog Coming Soon Page
-
-**File**: `src/pages/blog/index.astro`
-**Source**: Structure only (no content migration - template samples)
-
-**Requirements**:
-
-- Simple "Coming Soon" page with Header and Footer
-- Clear message that blog is planned
-- Consistent styling with rest of site
-- Call-to-action to check back or subscribe (optional)
-- SEO metadata for blog page
-
-**Content** (simple & clean):
-
-```astro
-
-
-
Blog Coming Soon
-
- We're working on great content about RFID tracking, tag management, and more. Check back soon!
-