This repository contains the code for DienerTech, my personal website and blog.
DienerTech is my personal platform for sharing technical deep dives, reflections on software engineering, and creative projects. The site is built using modern web technologies, focusing on performance, accessibility, and design.
- Framework: Nuxt 3
- Styling: Tailwind CSS
- Content: Nuxt Content
- Deployment: Cloudflare Pages
- Analytics: Cloudflare Analytics
- Node.js (v18+)
- npm or yarn
-
Clone the repository:
git clone https://github.com/yourusername/diener-tech.git cd diener-tech -
Install dependencies:
npm install
-
Configure environment variables:
cp .env.example .env
Then edit
.envwith your specific configuration. -
Start the development server:
npm run dev
The site will be available at http://localhost:3000.
This project uses pre-commit to automatically strip EXIF metadata from images before committing them:
# Install pre-commit (Python 3 required)
pip install pre-commit
pre-commit install/content/blog/- Blog posts written in Markdown/components/- Vue components/pages/- Application pages/public/- Static assets/assets/- CSS and other processed assets
Contributions are welcome! This project is open-sourced to:
- Serve as a learning resource for others building personal websites
- Allow community improvements to the platform (not the content)
- Encourage best practices through collaborative development
Please see CONTRIBUTING.md for contribution guidelines.
Note: While the codebase is open-source under the MIT license, all blog content is copyrighted. See LICENSE for details.
The site is deployed to Cloudflare Pages. Any push to the main branch will trigger a new build and deployment.
This project has a dual license:
- Code: MIT License
- Content: Copyright © 2025 Michael Diener, all rights reserved
See the LICENSE file for details.
