BLOGPOST

BLOGPOST

A full-stack social blogging platform built with React, Redux Toolkit, Bootstrap and Supabase. People can share stories, follow other writers, like, comment on and save posts, and discover content by tag.

BLOGPOST web application

Overview

BLOGPOST is an engaging platform where users can share blogs about their life experiences and stories. To keep the experience secure and personal, users sign in before posting, with authentication powered by Supabase. Protected routes send signed-out visitors to the sign-in page.

Beyond publishing, BLOGPOST is built around community. Writers can follow each other, get a personalised feed of posts from the people they follow, react to posts with likes and comments, and save posts to read later.

Key Features

✍️ Writing

  • Create, view and delete posts
  • Tag posts by topic
  • Detailed post pages
  • Sign up and sign in with Supabase Auth

🤝 Social

  • Follow and unfollow writers
  • Followers and following lists
  • Personalised feed from people you follow
  • Likes, comments and saved posts

🔎 Discovery

  • Browse all posts, users and tags
  • Tag pages that group related posts
  • Search across posts and users
  • User profile pages

How It’s Built

  • Frontend: React 18 with React Router v6 for page routing, and a protected-route component that guards pages for signed-in users only.
  • UI: Bootstrap 5 and React Bootstrap, with Bootstrap Icons and Font Awesome, and toast notifications through react-hot-toast.
  • State management: Redux Toolkit holds the signed-in user’s session, with async thunks for sign-up, sign-in and sign-out.
  • Backend: Supabase provides authentication and a PostgreSQL database. Core tables cover posts, users, follows, likes, comments, saves and tags, with a join table linking posts to tags.
  • Data access: Components query Supabase directly through its JavaScript client, so there’s no separate API layer to maintain.
  • Hosting: Deployed on Vercel.

Tech Stack

JavaScript · React · React Router · Redux Toolkit · Bootstrap 5 · Supabase (PostgreSQL + Auth) · Vercel