A modern blog application built with Next.js 15, TypeScript, and Tailwind CSS.
Before running this application, make sure you have the following installed:
-
Clone the repository (if not already done):
git clone <your-repository-url> cd blog
-
Install dependencies:
bun install
-
Run the development server:
bun dev
-
Open your browser and navigate to:
bun dev- Starts the development server with Turbopackbun build- Builds the application for productionbun start- Starts the production serverbun lint- Runs ESLint to check for code issues (fails on warnings)bun lint:fix- Auto-fixes lint issues where possiblebun format/bun format:check- Formats code with Prettier or checks formattingbun type-check- Runs TypeScript checks without emitting filesbun validate- Runs lint, format check, and type-check togetherbun ci- Runs lint, type-check, tests, and build in CI order
- Husky hooks: run
bun run prepare(orbunx husky install) after installing dependencies to enable git hooks.pre-commit: lint-staged formatting, ESLint, Prettier check, and type-check.pre-push: runs tests and a production build.
- Commitlint: enforces Conventional Commits locally and in CI.
- CI workflow:
.github/workflows/ci.ymlruns lint, type-check, test, and build on pushes and pull requests using Bun.
blog/
├── src/
│ ├── app/
│ │ ├── about/ # About page
│ │ ├── blog/ # Blog listing and individual posts
│ │ ├── contact/ # Contact page
│ │ ├── globals.css # Global styles
│ │ ├── layout.tsx # Root layout
│ │ └── page.tsx # Homepage
│ └── components/
│ ├── Header.tsx # Navigation header
│ └── Footer.tsx # Site footer
├── public/ # Static assets
└── package.json # Dependencies and scripts
- 📱 Responsive design
- 🔍 Blog search and filtering
- 📄 Dynamic blog post pages
- 📧 Contact form
- 🎨 Modern UI with Tailwind CSS
- ⚡ Fast development with Turbopack
- Framework: Next.js 15
- Language: TypeScript
- Styling: Tailwind CSS
- Linting: ESLint
The application uses Next.js App Router and includes:
- Homepage with hero section and featured posts
- Blog listing page with search and pagination
- Individual blog post pages with dynamic routing
- About and Contact pages
- Responsive navigation and footer
This application can be deployed on platforms like:
For production deployment, run:
bun build
bun startFeel free to submit issues and enhancement requests!
This project is open source and available under the MIT License.