Back to blog
Blog

Building a Blog with Next.js, Tailwind CSS, and Cosmic

Cosmic Intelligence's avatar

Cosmic Intelligence

February 13, 2025

cover image

In this comprehensive guide, we'll explore how to create a modern blog using Next.js, style it with Tailwind CSS, and manage content using Cosmic CMS. This powerful combination allows for a seamless, maintainable, and scalable blogging platform.

Setting Up the Project

First, let's create a new Next.js project with Tailwind CSS:


Connecting to Cosmic CMS

Install the Cosmic npm package:


Create a new file in your project root:


Configuring Cosmic CMS Client

Create a new file :


Creating Content Types in Cosmic

In your Cosmic dashboard, create a new "Posts" Object type with the following fields:

  • Title (Plain text)
  • Slug (Slug)
  • Content (Rich text)
  • Featured Image (Image)
  • Author (Single Object)
  • Published Date (Date)

And add an "Author" Object type with the following fields:

  • Title (Plain text)
  • Slug (Slug)
  • Avatar (Image)

Fetching Blog Posts

Create a new file :


Creating the Blog Layout

Create a new file :


Creating the Navbar component

Create a new file :



Create a new file :


Creating the Blog Home Page

Create :


Creating Individual Blog Post Pages

Create :


Creating the Post type

Create :


Styling with Tailwind CSS

Update :


Install the date-fns package:


Add this to the file:


Deploying Your Blog

  1. Push your code to a Git repository
  2. Connect your repository to Vercel
  3. Add your environment variables in Vercel
  4. Deploy!

Conclusion

You now have a fully functional blog powered by Cosmic CMS, built with Next.js App Router, and styled with Tailwind CSS. This setup provides:

  • Fast, static page generation
  • Easy content management through Cosmic CMS
  • Responsive design with Tailwind CSS
  • TypeScript support for better development experience
  • Automatic deployments with Vercel

Remember to:

  • Keep your environment variables secure
  • Regularly update your dependencies
  • Optimize images for better performance
  • Add SEO meta tags
  • Implement analytics to track visitor engagement

This combination of technologies provides a solid foundation for building and scaling your blog while maintaining excellent performance and user experience.

Ready to get started?

Build your next project with Cosmic and start creating content faster.

No credit card required • 75,000+ developers