Next.jsReactBlog

Nextjs-tailwindcss-blog-template — Next.js Blog Template

By codebucks27

A personal blog template based on Next.js and Tailwind CSS, using Velite to process Markdown content, including home, about, contact and article pages, MIT licensed, with a YouTube tutorial.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-09-30View source

What stands out

A quick read of the recorded project description.

01

A personal blog template built with Next.js and Tailwind CSS

02

Processes Markdown article content through Velite; the main branch has migrated from Contentlayer

03

Includes pages such as home, about, contact and blog articles

04

Provides an online demo site and a companion YouTube tutorial link

05

The code is MIT licensed, allowing modification, commercial use and distribution

06

The README records the 2026 dependency updates, with the package manager changed to Bun

Template Details

This is a personal blog website template. The repository is maintained by codebucks27, built with Next.js and Tailwind CSS, and uses Velite to process Markdown article content. The template provides pages such as home, about, contact and blog articles. The demo site is deployed on Vercel, and the repository includes a YouTube tutorial link, making it suitable as a starting point for learning or building a personal blog.

The repository notes mention that the tutorial video uses Contentlayer, but because Contentlayer is no longer actively maintained, the current main branch has switched to Velite.js; if you need the Contentlayer version, you can switch to the Contentlayer branch. The README also records the 2026 dependency updates: the package manager was changed to Bun, and dependencies such as Next.js, React, Tailwind CSS, ESLint and Shiki were upgraded. Velite now runs through predev / prebuild scripts, and dynamic routes were migrated to async params. The old version code before the update is kept in git history and can be used by checking out the corresponding commit.

In terms of usage scope, the code is MIT licensed, allowing free use, modification, commercial use and distribution, but the copyright notice and license notice must be retained. The demo images in the template come from Unsplash, fonts from Google Fonts, icons from Iconify, and the contact page animation from LottieFiles. These third-party assets must be checked separately under their respective licenses and cannot be judged solely by the code's MIT license.

Next.jsBlog

Is it right for your project?

Use Cases

  • Building a personal technical blog or writing site
  • Learning the blog project structure of Next.js and Tailwind CSS
  • Referencing the implementation of processing Markdown content with Velite
  • Using it as companion code for a tutorial and following the video step by step

Suitable For

  • Developers who want to build a personal blog with Next.js
  • Front-end learners who are studying Next.js and Tailwind CSS
  • Individual authors who need a Markdown-driven content site

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    The current main branch uses Bun as the package manager; the install and run commands are bun install, bun dev, bun run build

  2. 2

    Velite runs through predev / prebuild scripts, rather than the old webpack plugin approach

  3. 3

    If you need the Contentlayer version, switch to the repository's Contentlayer branch

  4. 4

    If you need the old dependency versions from before the update, check out the git commit before the 2026 update

  5. 5

    Third-party assets such as demo images, fonts, icons and animations must be checked separately under their respective licenses

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version of the public repository under the MIT license; the free scope is the code of this version and does not mean that external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use and distribution of this version's code are allowed.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the complete MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • The main branch has migrated from Contentlayer to Velite.js for processing Markdown; if you need the Contentlayer version, you must switch to the repository's Contentlayer branch, as the main branch no longer contains that implementation.
  • The current main branch requires Bun as the package manager; the install, development and build commands are bun install, bun dev, bun run build respectively, and using npm/yarn may not run as documented.
  • Velite runs through predev / prebuild scripts because Turbopack does not support the old webpack plugin approach, and the build process depends on this script configuration.
  • The old version code before the update is only kept in git history; you need to check out the specified commit (such as 186f9ee) to use the original Next.js 15 + Tailwind v3 + ESLint 9 configuration.
  • The role images on the about page come from Bing search and are third-party assets; you must verify the source and authorization yourself and cannot use them solely under the code's MIT license.
  • The Lottie animation on the contact page comes from LottieFiles and its usage conditions must be checked separately under that platform's license.
  • Fonts come from Google Fonts and must be checked separately under each font's license; they cannot be judged solely by the code's MIT license.
  • Icons come from Iconify and their usage conditions must be checked separately under each icon set's license.
  • Images used in the blog all come from third-party sources such as Unsplash and must be checked separately under their respective licenses; they cannot be used solely under the code's MIT license.
  • Demo images, fonts, icons and other third-party assets must be checked under their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments or AI may incur additional charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

Since contentlayer is not actively maintained, I have switched to [Velite.js](https://velite.js.org/) for the markdown files.

Original README

**Bun** is now the package manager (`bun install`, `bun dev`, `bun run build`).

Original README

Velite now runs as a `predev` / `prebuild` script (Turbopack does not support the old custom webpack plugin).

Original README

The pre-update code is preserved in git history — check out commit [`186f9ee`](https://github.com/codebucks27/Nextjs-tailwindcss-blog-template/commit/186f9ee)

Original README

Character image in the About page created by using [Bing Search[(https://www.bing.com/).

Original README

Lottie animation in the contact page: [from here](https://lottiefiles.com/animations/sloth-meditate-SzNofNFhYY)

Original README

Fonts from https://fonts.google.com/

Original README

Icons from https://iconify.design/

Original README

All the images used in the blogs:

Original README
https://github.com/codebucks27/Nextjs-tailwindcss-blog-template/blob/main/LICENSEhttps://github.com/codebucks27/Nextjs-tailwindcss-blog-template/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-09-30. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 91 / 100
Technologies
Next.js · React
Website type
Blog
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-04-25
Screenshot last checked
2026-09-30

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Next.js as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: c5813f559d955c309aa1828a01db8e60d5ecebcd190693ebbfebcc8516a06f4e

2026-09-30T08:08:27.604Z

Source file / repository
# Next.js Blog Tutorial: Build SEO Optimized Personal Blog with Next.js, Contentlayer, and Tailwind CSS 🔥

![GitHub stars](https://img.shields.io/github/stars/codebucks27/Nextjs-tailwindcss-blog-template?style=social&logo=ApacheSpark&label=Stars)  
![GitHub forks](https://img.shields.io/github/forks/codebucks27/Nextjs-tailwindcss-blog-template?style=social&logo=KashFlow&maxAge=3600)  
![Github Followers](https://img.shields.io/github/followers/codebucks27.svg?style=social&label=Follow)&nbsp;&nbsp;<br />

For Demo checkout following links👇: <br />
[Nextjs Personal Blog Website](https://create-blog-with-nextjs.vercel.app/) <br />

Starter Code Files👇: <br />
[Nextjs Personal Blog Website Starter Code](https://github.com/codebucks27/Nextjs-contentlayer-blog) <br />

If you want to learn how to create it please follow below tutorial👇: <br />
https://youtu.be/1QGLHOaRLwM <br />
[![YouTube Video Views](https://img.shields.io/youtube/views/1QGLHOaRLwM?style=social)](https://youtu.be/1QGLHOaRLwM)<br />

---
✨ Checkout my brand new Saas application -> [AI Headshot Generator](https://www.smartheadshots.ai)

---

Checkout My Personal blog: [DevDreaming](https://devdreaming.com/)<br />

---
>### NOTE: In the youtube tutorial I have used contentlayer for the markdown files. Since contentlayer is not actively maintained, I have switched to [Velite.js](https://velite.js.org/) for the markdown files. If you want to checkout the contentlayer please switch to the [contentlayer](https://github.com/codebucks27/Nextjs-tailwindcss-blog-template/tree/Contentlayer) branch.
---

## 🚀 2026 Modernization Update

The repo has been refreshed to run on the latest stable versions of every dependency. Highlights:

- **Bun** is now the package manager (`bun install`, `bun dev`, `bun run build`).
- **Next.js 16** with Turbopack as the default for dev and build.
- **React 19**.
- **Tailwind CSS v4** — CSS-first config in `src/app/globals.css` (`@theme`, `@custom-variant dark`, `@plugin`); `tailwind.config.js` removed and `@tailwindcss/postcss` replaces autoprefixer.
- **ESLint 10 flat config** (`eslint.config.mjs`) with `next/core-web-vitals`.
- **Shiki 4** + latest `rehype-pretty-code`, `velite`, `@supabase/supabase-js`, `react-hook-form`, `next-sitemap`, `sharp`, and all rehype/remark plugins.
- Velite now runs as a `predev` / `prebuild` script (Turbopack does not support the old custom webpack plugin).
- Async `params` migration applied to dynamic routes for Next 16.

> **Looking for the old version?** The pre-update code is preserved in git history — check out commit [`186f9ee`](https://github.com/codebucks27/Nextjs-tailwindcss-blog-template/commit/186f9ee) (or any commit before this update) to use the original Next.js 15 + Tailwind v3 + ESLint 9 setup from the YouTube tutorial.

---

### ⭐DO NOT FORGET TO STAR THIS REPO⭐

### Images of The Portfolio Website:

#### Home
![Nextjs Personal Blog Website](https://github.com/codebucks27/Nextjs-contentlayer-blog/blob/main/project%20images/Home-Big.png?raw=true)

#### About
![Nextjs Personal Blog Website About Page](https://github.com/codebucks27/Nextjs-contentlayer-blog/blob/main/project%20images/About-Big.png?raw=true)

#### Contact
![Next.js Personal Blog Website Contact Page](https://github.com/codebucks27/Nextjs-contentlayer-blog/blob/main/project%20images/Cotnact-Big.png?raw=true)

For more Images please check the [project images](https://github.com/codebucks27/Nextjs-contentlayer-blog/tree/main/project%20images) folder from this repo or check the demo link. 

### Resources Used in This Project

- Character image in the About page created by using [Bing Search[(https://www.bing.com/).
- Lottie animation in the contact page: [from here](https://lottiefiles.com/animations/sloth-meditate-SzNofNFhYY)
- Fonts from https://fonts.google.com/ <br />
- Icons from https://iconify.design/ <br />

### All the images used in the blogs:
- Photo by <a href="https://unsplash.com/@kmuza?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Carlos Muza</a> on <a href="https://unsplash.com/photos/hpjSkU2UYSU?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@marvelous?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Marvin Meyer</a> on <a href="https://unsplash.com/photos/SYTO3xs06fU?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@pinjasaur?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Paul Esch-Laurent</a> on <a href="https://unsplash.com/photos/oZMUrWFHOB4?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@kellysikkema?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Kelly Sikkema</a> on <a href="https://unsplash.com/photos/-1_RZL8BGBM?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@laurenmancke?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Lauren Mancke</a> on <a href="https://unsplash.com/photos/aOC7TSLb1o8?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@lucabravo?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Luca Bravo</a> on <a href="https://unsplash.com/photos/XJXWbfSo2f0?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@wocintechchat?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Christina @ wocintechchat.com</a> on <a href="https://unsplash.com/photos/OtHEYbQXLFU?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@cdx2?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">C D-X</a> on <a href="https://unsplash.com/photos/PDX_a_82obo?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@charlesdeluvio?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">charlesdeluvio</a> on <a href="https://unsplash.com/photos/cZr2sgaxy3Q?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@emilep?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Emile Perron</a> on <a href="https://unsplash.com/photos/xrVDYZRGdw4?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
- Photo by <a href="https://unsplash.com/@synkevych?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Roman Synkevych</a> on <a href="https://unsplash.com/photos/vXInUOv1n84?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>


This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).

Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.