Intrepidus PRD (Product Requirements Document)
Project Overview
Name: Intrepidus
Tagline: A fearless exploration at the intersection of health, mind, and technology
Author: Toni Incog
Live Site: https://www.intrepidus.me
Repository: https://github.com/nocona71/quarto
Purpose
Intrepidus is a personal blog and knowledge platform exploring topics at the convergence of meditation, philosophy, personal knowledge management, AI, and technical experiments. It serves as both a publishing platform and a showcase for technical writing and interactive visualizations.
Current Features
Content Management
- Articles: Long-form, in-depth pieces (currently 4 published)
- Blog Posts: Shorter-form content with code examples
- Post Types: Markdown, R (knitr/ggplot2), Python (Jupyter), LaTeX/TikZ visualizations
- Draft System: Content can be hidden from feeds/listings while remaining accessible
- RSS Feed: Full Atom feed with customizable items (60 items configured)
- Archive: Date-based organization (YYYY/MM/DD structure)
Frontend
- Theme: Bootstrap (Flatly) with light/dark mode support
- Navigation: Searchable navbar with links to Posts, Articles, About, RSS, GitHub
- Comments: Giscus-powered (GitHub Discussions)
- Features:
- Table of contents on articles
- Margin references/footnotes
- Code highlighting
- Lightbox for images
- Responsive design
Technical Features
- Analytics: Google Tag Manager integration
- Cookie Consent: Implied consent (simple banner)
- SEO: robots.txt, meta tags, Google indexing support
- Code Examples: Snippets directory for reusable code
- Build System: Quarto with R/Python support
- Deployment: GitHub Pages with automated publish script
Styling
- Custom SCSS variables (styles.scss)
- Dark theme customizations (theme-dark.scss)
- Custom CSS overrides (custom.css)
- Bootstrap Flatly theme as base
Technical Architecture
Stack
| Layer | Technology |
|---|---|
| Site Generator | Quarto v1.8+ |
| Styling | Bootstrap + custom SCSS/CSS |
| Content Format | QMD (Quarto Markdown) |
| Code Execution | R (knitr), Python (Jupyter) |
| Comments | Giscus (GitHub Discussions) |
| Analytics | Google Tag Manager |
| Hosting | GitHub Pages |
| Version Control | Git |
Directory Structure
.
├── _quarto.yml # Main configuration
├── _brand.yml # [TODO: Add if needed]
├── index.qmd # Homepage with listings
├── about.qmd # About page
├── atom.qmd # RSS feed definition
├── posts/ # Blog posts (YYYY/MM/DD/title)
├── articles/ # Long-form articles (YYYY/MM/DD/title)
├── snippets/ # Code snippets and examples
├── html/ # Custom HTML includes (GTM, meta)
├── img/ # Images and logo assets
├── styles/ # SCSS and CSS
├── scripts/ # Utility scripts
└── _site/ # Generated output (git-ignored)
Build & Deployment
- Preview:
quarto preview(localhost:5555) - Build:
quarto render→_site/ - Deploy:
./publish.sh→ GitHub Pages
Content Strategy
Published Content (Q1 2025)
- “AI Club and the End of Control” (2025-07-09)
- Status: Published
- Format: Long-form article with PDF export
- Topics: AI, automation, work, control
- “CO2 Meter” (2025-03-25)
- Status: Published
- Topics: Environmental monitoring, IoT, personal projects
- “English Tenses” (2024-01-07)
- Status: Published
- Topics: Language learning, grammar
- Andrew (Older)
- Status: Published
- Format: Data visualization/economics example
Draft Content (Ready to Publish)
Currently, all draft posts have been removed due to rendering pipeline issues where code execution succeeded but HTML output generation failed.
Planned Content
Metrics & Goals
Current State
- Published Articles: 4
- Draft Posts Ready: 0
- RSS Feed Items: 60 max
- Homepage Display: 3 most recent posts
- Comments System: GitHub Discussions enabled
- Analytics: Google Tag Manager tracking
Success Indicators
Known Issues & Improvements
Recent Fixes (April 1, 2025)
✅ Cookie consent simplified from “express/interstitial” to “implied/simple”
✅ TikZ code blocks syntax corrected (# → % comments)
✅ Draft posts properly excluded from listings
✅ GTM scripts formatted and cleaned
✅ Gitignore updated for Quarto artifacts
Potential Improvements
Dependencies & Prerequisites
Required
- Quarto v1.8+
- Git
Optional (for specific post types)
- R: For knitr/ggplot2 posts
- Requires R installation + packages (knitr, rmarkdown, ggplot2)
- Configured via ~/.Renviron
- Python: For Jupyter posts
- jupyter, nbformat, ipykernel
Development
- VSCode with Quarto extension (recommended)
- Node.js (package.json exists, version specified in .nvmrc)
Deployment & Publishing
Process
- Write/edit content (posts or articles)
- Preview locally:
quarto preview - Render:
quarto render - Commit:
git add . && git commit -m "message" - Publish:
./publish.sh
GitHub Pages
- Hosted at: https://www.intrepidus.me
- Branch: gh-pages (auto-generated by publish.sh)
- Custom domain: intrepidus.me
Environment Variables
- GTM Tag ID: GTM-NJ5X9XDC
- Giscus Repo: nocona71/quarto-comments
Future Vision
Phase 1: Polish Current Content
Phase 2: Community & Engagement
Phase 3: Advanced Features
Phase 4: Monetization/Sustainability (Optional)
Success Criteria
| Goal | Metric | Target | Current |
|---|---|---|---|
| Publishing Frequency | Articles/month | 1+ | 0.3 |
| Engagement | Comments per article | 2+ | TBD |
| Reach | Monthly unique visitors | 500+ | TBD |
| Content Variety | Post types | 3+ | 2 (Markdown, TikZ) |
| Technical Quality | Build success | 100% | ✅ |
| SEO | Google indexing | Full | ✅ |
Notes & Decisions
Design Choices
- Static Site: Simplicity, speed, no backend maintenance
- Quarto: Native support for Markdown, R, Python, LaTeX
- Bootstrap: Proven, accessible, highly customizable
- GitHub Pages: Free hosting, integrated with repo
- Giscus: Leverage GitHub Discussions, no separate comment backend
Trade-offs
- ✅ Fast, simple deployment
- ✅ Full control over content and design
- ✅ Supports multiple content formats
- ⚠️ No dynamic features (no user accounts, auth, etc.)
- ⚠️ Rebuild required for new posts
- ⚠️ No analytics beyond Google Tag Manager
Last Updated: April 1, 2025 Status: DRAFT (Ready for Review & Customization)