This is a blog application built with Next.js and GraphQL, enabling CRUD operations for managing blog posts.
- Create, Read, Update, and Delete blog posts
- Next.js for server-side rendering and seamless page transitions
- GraphQL for efficient data fetching
- Responsive design for a great user experience on various devices
To run this project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/ikramdeveloper/nextjs-graphql-blog.git
-
Navigate to the project directory:
cd nextjs-graphql-blog
-
Install dependencies
npm install
-
Set up the required environment variables. Create a .env file in the root directory and add the necessary variables. You can use the .env.example file as a template.
-
Run the application:
npm run dev
The application will be accessible at http://localhost:3000.
This project makes use of the following technologies:
- Next.js: A React framework for building web applications.
- GraphQL: A query language for APIs, used here for efficient data fetching.
- Zustand: A state management library for React applications.
- Zod: A TypeScript-first schema declaration and validation library.
- Redis: An in-memory data structure store used as a caching mechanism.
- Mongoose: A MongoDB object modeling tool designed to work in an asynchronous environment.
- @typegoose/typegoose: A TypeScript library that allows you to define Mongoose models using TypeScript classes.
- @tanstack/react-query: A data-fetching library for React applications that makes server state management simple and scalable.
- React Hook Form: A library for managing forms in React applications.
- Tailwind CSS: A utility-first CSS framework for rapidly building custom designs.
This project was built with the help of nextjs-typegraphql repo
👋 Hello, I'm Ikram Ul Haq - Web Developer & Programmer
🚀 Follow Me: