# David Hartman Portfolio and Playground > David Hartman's personal portfolio, photography gallery, and interactive web playground. Built with Next.js, React, Tailwind CSS, and Firebase. ## About This Site This is the personal portfolio and digital playground of David Hartman. It includes technical experiments, interactive components, a blog, and a photography gallery. ## Key Projects and Features - **Photography Gallery:** A high-fidelity image gallery featuring dynamic luminosity animation systems for image transitions. - **Olympia Typewriter Client:** An interactive digital typewriter with mechanical sound effects, authentic layering, and realistic tactile feedback. - **Blog:** A personal technical and creative blog featuring swipe navigation for mobile devices. ## Technical Stack - **Framework:** Next.js (App Router) - **UI Library:** React - **Styling:** Tailwind CSS and PostCSS - **Backend Services:** Firebase (Authentication, Emulators), Google Cloud Storage - **Testing:** Playwright (E2E) - **Deployment:** Firebase App Hosting ## Site Structure & Routing - `/`: The Home page. - `/about`: Details about David Hartman's background and work. - `/blog`: The main index page for typewritten thoughts and reflections. - `/contact`: A contact form to reach out for collaborations. - `/iching`: An interactive introduction and philosophical guide to the I Ching (Book of Changes). - `/photography`: The main portfolio gallery showcasing photography work. - `/photography/[gallerySlug]`: Dynamic route displaying specific image galleries. - `/typewriter`: An interactive digital typewriter simulation. - `/[contentType]/[slug]`: Dynamic markdown article viewer (used for blog posts, stories, etc.). - `/cookie-policy`: Standard cookie policy documentation. - `/privacy-policy`: Standard privacy policy documentation. - `/terms-and-conditions`: Standard terms and conditions documentation. ## Optional Details - Images and metadata are synchronized and processed from Google Cloud Storage using automated scripts. - The project implements specialized route proxies and edge handlers for secure and performant delivery.