Skip to content

keertyverma/blogsphere

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo Blogsphere

CI/CD Pipeline

🔗 Live App: https://blogsphere.sooprr.com


👋 Welcome to Blogsphere, a modern blogging platform built to empower creators and engage curious readers.

  • 🌐 Create, Discover, and Engage — with seamless social and engagement features.
  • AI-powered publishing workflow — instantly generate titles, summaries, and tags.
  • 📱 Responsive, accessible design — sleek on mobile, tablet, and desktop.

📽️ App Demo

🚀 Features

🔍 Blog Discovery

  • Blog Feed: Discover recent and trending blogs with infinite scrolling and a curated list of the top 10 most engaging posts.
  • Search: Quickly find blogs by title, description, tags, or author name. You can also search for users by their full name.
  • Filter by Categories: Browse blogs by specific categories to focus on the topics that interest you most.

👤 User Management

  • 🔐 User Authentication

    • Sign up / Log in with Email-password or Google.
    • Email Verification: Verify your account via email for trusted access, with the option to resend the verification if needed.
    • Password Recovery: Securely reset your password with the easy forgot password process.
    • Session Management: Automatic session expiration and secure token handling for enhanced security.
  • User Profile

    • View and edit your profile, including name, bio, profile image, and social links.
    • Bookmarks: Access and manage all the blogs you've bookmarked for quick and easy reference.
  • Account Settings

    • Change Password: Easily update your login password from the settings.
    • Change Username: Users have a one-time option to change their username, which is initially generated from their name or email.

✍️ Blog Management

  • Full Blog Control: Effortlessly create, edit, and delete both draft and published blogs through a clean, user-friendly dashboard.
  • Rich Text Editor: Create beautifully structured blogs using a block-style editor powered by Editor.js.
    Add headings, paragraphs, lists, images, quotes, code blocks, and more with ease. Need help? Access the dedicated Editor Guide to assist content creation.
  • ✨ AI Blog Metadata Generator: Speed up your publishing workflow with one-click AI-generated metadata - including a compelling title, concise summary, and relevant tags, based on your blog content. Easily review, refine, or undo AI suggestions to stay in control.
  • Draft & Publish Modes:
    • Save blogs as drafts and continue editing anytime.
    • Preview your draft to see exactly how the blog page will look before publishing.
    • Privacy & Access Control: Draft blogs are private and visible only to their authors. Unauthorized users attempting to access them are automatically redirected.

🗨️ Blog Engagement

  • Like & Comment:
    • Engage with content by liking blogs and participating in discussions through comments.
    • The nested comment system supports threaded replies for more meaningful conversations.
  • Bookmark: Save your favorite blogs for quick access and later reading.
  • Share Options: Easily share blogs via X (Twitter) and LinkedIn, or copy the link to your clipboard for effortless sharing anywhere.

🌗 User Experience

  • Dark/Light Theme: Toggle between light and dark mode for a personalized reading experience.
  • Responsive Design: Optimized for mobile, tablet, and desktop devices
  • Minimal, Modern UI: Built for readability and ease of use

🛠️ Tech Stack

Frontend

  • React — A JavaScript library for building fast, interactive, and reusable user interfaces.
  • TypeScript — Strongly typed JavaScript for safer code.
  • Tailwind CSS with shadcn/ui — Utility-first styling with customizable UI components.
  • Zustand — Lightweight state management for React apps.
  • Tanstack Query — Manage server state, caching, and API data fetching efficiently in React.
  • Editor.js — Block-style rich text editor used for blog content creation.

Backend & Database

  • Node.js - JavaScript runtime environment
  • Express — API framework.
  • MongoDB — Document-based NoSQL database to store users, blogs, and comments.
    Fully managed via MongoDB Atlas for data storage and scalability.
  • Google Gemini AI (GenAI) — Powers the AI Blog Metadata Generator by generating titles, summaries, and tags based on blog content.
  • Cloudinary — Manage and deliver blog images and user profile pictures with fast, cloud-based storage and CDN delivery.
  • Firebase — Used for Google authentication integration.
  • Mailgun — Transactional email service used for account verification and password recovery emails.
  • Jest — JavaScript testing framework used for unit and integration tests.

Deployment

  • Backend: Deployed on Google Cloud with an automated CI/CD pipeline using GitHub Actions for continuous integration and deployment.
    Every push to the repository triggers build, test, and deployment processes.
  • Frontend: Deployed on Vercel with an automatic CI/CD pipeline for continuous updates.

✨ Contributing

Contributions from the community are always welcome to make BlogSphere even better.

To contribute, please follow these steps

  1. Fork the repository on GitHub.
  2. Clone your forked repository:
  3. Create a new branch from the main branch.
  4. Make the necessary changes and commit them with descriptive commit messages.
  5. Push your changes to your forked repository and raise PR on this repository

💖👩‍💻 Support

Support the project by giving it a star ⭐.
Feel free to reach out if you have any questions or suggestions.

Twitter Follow Linkedin: Keerty Verma GitHub followers

Releases

No releases published

Packages

No packages published

Languages