1f6f8e417e
MIGRATION SUMMARY: - Moved skeleton loader logic from hyperscript to JavaScript (main.js) - Changed from htmx:oobAfterSwap to htmx:afterSettle event - Changed OOB swap from innerHTML to outerHTML for proper element replacement - Added languageSwitching flag for state tracking - Added 100ms delay after afterSettle for final render completion DOCUMENTATION UPDATES: - 2-MODERN-WEB-TECHNIQUES.md: Updated skeleton loader section with
140 lines
5.0 KiB
Markdown
140 lines
5.0 KiB
Markdown
# CV Project Documentation
|
|
|
|
**Complete documentation for the Go + HTMX CV website project.**
|
|
|
|
---
|
|
|
|
## 📚 Quick Navigation
|
|
|
|
### For Developers
|
|
|
|
**Getting Started**
|
|
- [1. Architecture Overview](1-ARCHITECTURE.md) - System design and Go backend architecture
|
|
- [2. Modern Web Techniques](2-MODERN-WEB-TECHNIQUES.md) - Frontend architecture (HTMX, Hyperscript, CSS) ⭐
|
|
- [3. API Reference](3-API.md) - Complete API documentation with endpoints and responses
|
|
|
|
**Technical Implementation**
|
|
- [4. Hyperscript Rules](4-HYPERSCRIPT-RULES.md) - Hyperscript conventions and best practices
|
|
- [5. Zoom Implementation](5-ZOOM-IMPLEMENTATION.md) - Custom zoom feature technical details
|
|
|
|
**Deployment & Operations**
|
|
- [8. Deployment Guide](8-DEPLOYMENT.md) - Production deployment instructions
|
|
- [9. Security Policies](9-SECURITY.md) - Security guidelines and vulnerability reporting
|
|
|
|
---
|
|
|
|
### For Users & Customizers
|
|
|
|
- [6. User Guide](6-USER-GUIDE.md) - End-user documentation for CV features
|
|
- [7. Customization Guide](7-CUSTOMIZATION.md) - How to customize your CV content and styling
|
|
- [10. Privacy Policy](10-PRIVACY.md) - Data handling and privacy information
|
|
|
|
---
|
|
|
|
## 📖 Documentation Overview
|
|
|
|
### Core Technical Documentation
|
|
|
|
| # | Document | Purpose | Audience |
|
|
|---|----------|---------|----------|
|
|
| 1 | [ARCHITECTURE.md](1-ARCHITECTURE.md) | Go backend architecture, package structure, design patterns | Backend developers |
|
|
| 2 | [MODERN-WEB-TECHNIQUES.md](2-MODERN-WEB-TECHNIQUES.md) | HTMX/Hyperscript frontend architecture, component patterns, ADRs | Frontend developers |
|
|
| 3 | [API.md](3-API.md) | Complete API reference with all endpoints | API consumers, integrators |
|
|
| 4 | [HYPERSCRIPT-RULES.md](4-HYPERSCRIPT-RULES.md) | Hyperscript coding conventions | Frontend developers |
|
|
| 5 | [ZOOM_IMPLEMENTATION.md](5-ZOOM-IMPLEMENTATION.md) | Zoom feature implementation details | Feature developers |
|
|
|
|
### User & Operations Documentation
|
|
|
|
| # | Document | Purpose | Audience |
|
|
|---|----------|---------|----------|
|
|
| 6 | [USER_GUIDE.md](6-USER-GUIDE.md) | End-user feature documentation | CV users |
|
|
| 7 | [CUSTOMIZATION.md](7-CUSTOMIZATION.md) | Content and style customization | CV customizers |
|
|
| 8 | [DEPLOYMENT.md](8-DEPLOYMENT.md) | Deployment instructions and operations | DevOps, site operators |
|
|
| 9 | [SECURITY.md](9-SECURITY.md) | Security policies and reporting | Security teams |
|
|
| 10 | [PRIVACY.md](10-PRIVACY.md) | Privacy policy and data handling | Legal, compliance |
|
|
|
|
---
|
|
|
|
## 🏗️ Architecture Quick Reference
|
|
|
|
**Backend**: Go (Hono-inspired routing)
|
|
- Clean package structure (`internal/` pattern)
|
|
- Template caching and rendering
|
|
- JSON-based CV data model
|
|
- Middleware: logging, security headers, CORS
|
|
|
|
**Frontend**: HTMX + Hyperscript + Vanilla CSS
|
|
- Hypermedia-driven architecture (minimal JavaScript)
|
|
- Server-side rendering with HTMX partial updates
|
|
- Declarative behaviors with Hyperscript
|
|
- Component-level skeleton loaders
|
|
- Light/dark/auto color themes
|
|
|
|
**Key Features**:
|
|
- ✅ Custom zoom control (25%-175%)
|
|
- ✅ Bilingual support (English/Spanish)
|
|
- ✅ Keyboard shortcuts (L/I/V/?)
|
|
- ✅ Print-optimized CSS
|
|
- ✅ Mobile responsive
|
|
- ✅ Accessibility (WCAG AA compliance)
|
|
|
|
---
|
|
|
|
## 🎯 Common Tasks
|
|
|
|
### "I want to..."
|
|
|
|
**...understand the system architecture**
|
|
→ Start with [1-ARCHITECTURE.md](1-ARCHITECTURE.md) (backend) and [2-MODERN-WEB-TECHNIQUES.md](2-MODERN-WEB-TECHNIQUES.md) (frontend)
|
|
|
|
**...add a new feature**
|
|
→ Read [2-MODERN-WEB-TECHNIQUES.md](2-MODERN-WEB-TECHNIQUES.md) for frontend patterns, [3-API.md](3-API.md) for backend APIs
|
|
|
|
**...customize my CV content**
|
|
→ Follow [7-CUSTOMIZATION.md](7-CUSTOMIZATION.md) for content and styling changes
|
|
|
|
**...deploy to production**
|
|
→ Use [8-DEPLOYMENT.md](8-DEPLOYMENT.md) for step-by-step deployment instructions
|
|
|
|
**...understand HTMX patterns**
|
|
→ Check [2-MODERN-WEB-TECHNIQUES.md](2-MODERN-WEB-TECHNIQUES.md) Section 6 (HTMX Patterns)
|
|
|
|
**...write Hyperscript code**
|
|
→ Follow conventions in [4-HYPERSCRIPT-RULES.md](4-HYPERSCRIPT-RULES.md)
|
|
|
|
**...report a security issue**
|
|
→ See [9-SECURITY.md](9-SECURITY.md) for responsible disclosure process
|
|
|
|
---
|
|
|
|
## 📦 Archive
|
|
|
|
Historical documentation (bug fixes, testing reports, implementation notes) is stored in [`archive/`](archive/) for reference. These documents are not actively maintained but preserved for historical context.
|
|
|
|
---
|
|
|
|
## 🔗 External Resources
|
|
|
|
- **HTMX Documentation**: https://htmx.org/
|
|
- **Hyperscript**: https://hyperscript.org/
|
|
- **Go Documentation**: https://go.dev/doc/
|
|
- **Playwright Testing**: https://playwright.dev/
|
|
|
|
---
|
|
|
|
## 📝 Documentation Standards
|
|
|
|
All documentation in this project follows these standards:
|
|
|
|
- **Markdown format** with GitHub-flavored syntax
|
|
- **Clear structure** with table of contents for long documents
|
|
- **Code examples** with syntax highlighting
|
|
- **Up-to-date** reflecting current implementation
|
|
- **Versioned** via Git with meaningful commit messages
|
|
|
|
---
|
|
|
|
**Last Updated**: 2025-11-18
|
|
**Documentation Status**: ✅ Clean, organized, zero redundancy
|
|
**Total Active Docs**: 11 core documents + archive
|