MystTxt is a fun and secure anonymous messaging platform built with Next.js. Create an account, share your unique link, and receive anonymous messages.
-
User Authentication: Sign up and log in (NextAuth) to manage your anonymous messages.
-
Email Verification: Users must verify their email through OTP before accessing their dashboard.
-
Unique Shareable Link: Each user gets a unique link to receive anonymous messages.
-
Anonymous Messaging: Visitors can send messages anonymously without signing in.
-
AI Message Suggestions: Option to generate message suggestions using AI.
-
API Rate Limiting: To prevent spam and abuse of API endpoints
-
Unique Pageview counter: Tracks number of unique views (within 24hrs) to user's message page.
-
Language Profanity filter: Prevents people from using profane language.
- URL:
/api/sign-up - Method:
POST - Body:
{
"username": "string"
"email": "string"
"password": "string"
}- URL:
/api/check-username?username="string" - Method:
GET
- URL:
/api/verify-code - Method:
POST - Body:
{
"username": "string"
"code": "string"
}- URL:
/api/auth/[...nextauth] - Method:
POST - Body:
{
"identifier": "string" //(username or email)
"password": "string"
}- URL:
/api/accept-messages - Method:
GET
- URL:
/api/accept-messages - Method:
POST - Body:
{
"acceptMessages": "boolean"
}- URL:
/api/check-profanity - Method:
GET
- URL:
/api/check-profanity - Method:
POST - Body:
{
"checkProfanity": "boolean"
}- URL:
/api/get-messages?page="number"&limit="number" - Method:
GET
- URL:
/api/delete-message/:messageId - Method:
DELETE
- URL:
/api/delete-account - Method:
DELETE
- URL:
/api/pageview - Method:
GET
- URL:
/api/pageview - Method:
POST - Body:
{
"username": "string"
}- URL:
/api/suggest-messages - Method:
POST
- URL:
/api/send-message - Method:
POST - Body:
{
"username": "string"
"content": "string"
}This project was built by following a YouTube tutorial by Hitesh. You can check out the original tutorial here: Chai aur full stack NextJS.
I have completed the assignment & expanded on the project by making changes such as a revamped UI, responsive design, pagination, language profanity filter and more.