Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tszhong0411/honghong.me
⚡ A monorepo of my personal website and blog built with TypeScript, Next.js, and Tailwind CSS
https://github.com/tszhong0411/honghong.me
blog drizzle-orm mdx monorepo nextjs personal-blog portfolio react tailwindcss turborepo typescript vercel website
Last synced: about 1 month ago
JSON representation
⚡ A monorepo of my personal website and blog built with TypeScript, Next.js, and Tailwind CSS
- Host: GitHub
- URL: https://github.com/tszhong0411/honghong.me
- Owner: tszhong0411
- License: gpl-3.0
- Created: 2022-01-31T19:55:20.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-04T06:27:04.000Z (about 1 month ago)
- Last Synced: 2024-10-10T05:38:39.845Z (about 1 month ago)
- Topics: blog, drizzle-orm, mdx, monorepo, nextjs, personal-blog, portfolio, react, tailwindcss, turborepo, typescript, vercel, website
- Language: TypeScript
- Homepage: https://honghong.me
- Size: 138 MB
- Stars: 567
- Watchers: 5
- Forks: 86
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
honghong.me
Welcome to the monorepo of my personal blog! This repository houses the code for my blog, where I share my thoughts, projects, and insights. Feel free to explore and get inspired.
## ✨ Features
- ⚡️ Next.js 14 with App Router
- 📝 MDX
- 🎨 Tailwind CSS - for styling
- 🌈 Radix UI - accessible UI components
- 🛡 Strict TypeScript and ESLint configuration
- 📱 Responsive design
- 🌗 Light / Dark mode
- 📈 SEO optimized with meta tags and JSON-LD
- 📰 RSS feed
- 🗺 Sitemap
- 📊 Umami Analytics
- 📝 Blog with comments, likes, and post views
- 🔎 Blog post search
- 📖 Table of contents for blog posts
- 📷 Image zoom - zoom in on images in blog posts
- 📝 Code syntax highlighting - using Shiki
- 🎨 Animation - using Framer Motion
- 🏠 LightHouse score of nearly 100
- 🧪 Vitest - unit and integration tests
- 🎭 Playwright - end-to-end tests
- 🔨 Husky & Lint Staged - lint and format code before committing
- ✅ Conventional commit lint - make sure commit messages follow the conventional commit format
- 🔒 NextAuth.js - authentication
- 💄 Prettier - code formatting
- 〰️ Drizzle - ORM
- 👷🏻♂️ t3-env - validate environment variables before building
- 🤖 Auto refresh - fast refresh when updating MDX
- 🌄 Open graph image - using `next/og`
- 📁 Redis - for caching
- 🧯 Upstash - for API rate limiting
- 🪄 CSpell - for spelling checking## 🔨 Requirements
- Node, recommended `>=20.11.0` with [corepack](https://nodejs.org/api/corepack.html) enabled
- pnpm, recommended `>=9.x`
- [Visual Studio Code](https://code.visualstudio.com/) with [recommended extensions](.vscode/extensions.json)
- Optionally [React Developer Tools](https://chrome.google.com/webstore/detail/react-developer-tools/fmkadmapgofadopljbjfkapdkoienihi?hl=en)## 👋 Getting Started
Please refer to the [contributing guidelines](./CONTRIBUTING.md) for detailed information on how to start the app locally and contribute to this project.
## ❤️ Credits
This project has been possible thanks to the wonderful open-source community. Special thanks to [Timothy](https://www.timlrx.com/) for the [Tailwind nextjs starter blog template](https://github.com/timlrx/tailwind-nextjs-starter-blog).
This project also uses / adapts the following open-source projects
Without them, this project would not have been possible:
- Comment System - from [fuma-comment](https://github.com/fuma-nama/fuma-comment)
- Rehype Plugins - from [fuma-docs](https://github.com/fuma-nama/fumadocs)
- MDX Rendering - from [next-mdx-remote](https://github.com/hashicorp/next-mdx-remote)
- MDX Handling - from [contentlayer](https://github.com/contentlayerdev/contentlayer)
- UI - from [shadcn/ui](https://github.com/shadcn-ui/ui)
- ESLint config - from [@antfu/eslint-config](https://github.com/antfu/eslint-config)Referenced the following projects for inspiration:
- [fumadocs](https://fumadocs.vercel.app/)
- [leerob.io](https://leerob.io/)
- [nextra](https://nextra.site/)
- [theodorusclarence.com](https://theodorusclarence.com/)
- [ped.ro](https://ped.ro/)
- [delba.dev](https://delba.dev/)
- [joshwcomeau.com](https://www.joshwcomeau.com/)
- [blog.maximeheckel.com](https://blog.maximeheckel.com/)
- [zenorocha.com](https://zenorocha.com/)
- [jahir.dev](https://jahir.dev/)
- [anishde.dev](https://anishde.dev/)
- [nikolovlazar.com](https://nikolovlazar.com/)
- [samuelkraft.com](https://samuelkraft.com/)
- [bentogrids](https://bentogrids.com/)
- [ui.aceternity.com](https://ui.aceternity.com/)
- [hover.dev](https://www.hover.dev/)
- [vocs.dev](https://vocs.dev/)and more but I can't remember them all 🥹
## ✍🏻 Author
- [@tszhong0411](https://github.com/tszhong0411)
## 🪪 License
Please do not deploy this directly to production. It is not a template and is not intended to be used as one.
This project is open source and available under the [GPL3 License](LICENSE).
## ⭐️ Star History
Made with ❤️ in Hong Kong