Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/contawo/blog_website
Blog website created with NextJS using TypeScript, Contentful for CMS and Firbase for the Database to store data like blog comments. I have also implemented firebase auth for authenticating users.
https://github.com/contawo/blog_website
blog contentful firebase-auth firebase-realtime-database nextjs typescript
Last synced: 3 days ago
JSON representation
Blog website created with NextJS using TypeScript, Contentful for CMS and Firbase for the Database to store data like blog comments. I have also implemented firebase auth for authenticating users.
- Host: GitHub
- URL: https://github.com/contawo/blog_website
- Owner: contawo
- Created: 2023-11-13T14:09:59.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-03-26T09:31:29.000Z (10 months ago)
- Last Synced: 2024-12-06T08:24:23.167Z (about 2 months ago)
- Topics: blog, contentful, firebase-auth, firebase-realtime-database, nextjs, typescript
- Language: TypeScript
- Homepage: https://contawo.vercel.app
- Size: 2.96 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Next.js Blog with Contentful CMS and Firebase Authentication
Welcome to the **Next.js Blog with Contentful CMS and Firebase Authentication** project! As a developer, I've created a powerful blog platform that combines the best of modern technologies. Whether you're a seasoned coder or a curious learner, this project will provide valuable insights into building a robust blog site. Let's dive in and explore the magic of Next.js, Contentful, and Firebase! 🚀
## Overview
In this project, I've combined several tools to create a feature-rich blog:
- **Next.js**: A powerful React framework for building server-rendered applications.
- **Contentful**: Our headless CMS for managing blog content.
- **Firebase Authentication**: Secure user authentication using GitHub, Google, and email/password.## Features
1. **Blog Posts**:
- Create, edit, and delete blog posts using Contentful.
- Add SEO metadata to each post using Next.js metadata.
2. **User Authentication**:
- Users can log in using GitHub or Google accounts.
- Comment on blog posts after logging in.
3. **Newsletter Signup**:
- Users can sign up for newsletters to receive updates.
- (Note: Email notifications for new posts are not yet implemented.)## Tech Stack
- **Next.js**: Our frontend framework.
- **Contentful**: Our headless CMS.
- **Firebase Authentication**: For secure user logins.
- **CSS**: For styling.## Getting Started
1. **Clone the Repository**: Get started by cloning this repository to your local machine.
2. **Set Up Contentful**:
- Create a Contentful account.
- Set up your content model (e.g., "Blog Post").
- Retrieve your API keys.
3. **Set Up Firebase Authentication**:
- Create a Firebase project.
- Enable authentication providers (GitHub, Google, email/password).
- Retrieve your Firebase config.
4. **Environment Variables**:
- Create a `.env.local` file in your project root.
- Add your Contentful and Firebase config variables.
5. **Install Dependencies**:
- Run `npm install` to install project dependencies.
6. **Run the Application**:
- Run `npm run dev` to start the development server.
- Access the application at `http://localhost:3000`.## License
This project is licensed under the **MIT License**. Feel free to explore, modify, and share. 📜Remember, every blog post is a story waiting to be told. Happy coding! 📝✨