Overview
Supabook is a social media web application built using Next.js and Supabase. It is deployed on Vercel and utilizes a tech stack including Next.js, Supabase, SWR, Chakra UI, TypeScript, React icons, Yup, and React hook form. Supabook offers various features such as authentication, posting, friends functionality, and user profiles, among others.
Features
Authentication
- Signup
- Login (with email and password)
- Login with magic link
- Oauth login (upcoming feature)
Post
- Create post
- Delete post
- Like post
- Like count
- Comment count
- Comment on post
- Share post
- Share count
- Tag friends
- Share live location
- Bookmark post
Friends
- Show friends list
- Show friends request sent list
- Show friends request received list
- Send friend request
- Accept friend request
- Ignore friend request
- Cancel sent friend request
- Unfriend friends
Profile
- Profile information
- Friends information
- Posts information
- Edit information
- Update profile picture
- Authorize user to update profile picture and profile information
- Friends count
- Posts count
- Dark theme (upcoming feature)
- Settings (upcoming feature)
Other
- Realtime Chat (upcoming feature)
- Post details
- Video calling using WebRTC and simple-peer (upcoming feature)
- Screen sharing (upcoming feature)
- Show all users around coordinate (upcoming feature)
- Show all friends around on map coordinates (upcoming feature)
- Show posts on map coordinate (upcoming feature)
Installation
To install Supabook, follow these steps:
- Clone the repository:
git clone <repository_url>
- Install dependencies:
cd supabook
npm install
Configure Supabase:
- Create a Supabase account at supabase.io.
- Obtain your Supabase URL and Secret Key.
- Update the Supabase configuration in the project.
Start the application:
npm run dev
- Access the application in your browser at localhost:3000.
Summary
Supabook is a Next.js web application that utilizes the Supabase platform for database storage and authentication. It offers a range of features including authentication, posting, friends functionality, and user profiles. With its easy-to-use Supabase integration, Supabook provides a robust and scalable solution for creating a social media web app.