Skip to content

Sarthak-Developer-Coder/Allify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

7 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Allify - MERN Chatting Application

Where chatting, fun, and friends come alive

A full-stack MERN (MongoDB, Express.js, React.js, Node.js, Socket.IO) online chatting application ๐Ÿ’ฌ with friends additionally with a Personal Chatbot. ๐Ÿค–

Allify is a chat-app with various features like:

  • ๐Ÿ” Authentication:
    โœจ SignUp,
    ๐Ÿ”‘ Login,
    ๐Ÿ“ฒ Login with OTP,
    ๐Ÿ“ธ Profile Photo Uploading.

  • ๐ŸŽจ Styling/Theming:
    ๐ŸŒ A fully responsive app,
    ๐ŸŒ™ Dark and โ˜€๏ธ Light mode.

  • ๐Ÿค– Personalized AI Chatbot:
    ๐Ÿง  Remembers the context for personalized interactions.

  • ๐ŸŒ Web Sockets:
    ๐Ÿ’ฌ Real-time chatting,
    ๐Ÿ”” Message Notifications,
    ๐Ÿ–‹๏ธ Real-Time Typing Animation,
    โŒ Message Deletion,
    ๐ŸŸข Active Now / โŒ› Last Seen status tracking,
    โœ… Message Seen status,
    ๐Ÿ–ผ๏ธ Sending Image messages with captions.

license last-commit repo-top-language repo-language-count

Built with the tools and technologies:

npm MongoDB React Node.js HTML/CSS Express.js Socket.IO Amazon S3 Docker

Guest User login accounts:

username : guestuser1@gmail.com, guestuser2@gmail.com
password: 1234guest

Allify โ€” Modern MERN Chat Platform

Where chatting, fun, and friends come alive.

A fullโ€‘stack MERN (MongoDB, Express, React, Node) realtime chat with Socket.IO, media uploads, AI assistant, and a delightful UI/UX (Chakra UI + Framer Motion).

license stack node


๐Ÿ”— Table of Contents

  • Overview
  • Screenshots
  • Features
  • Architecture
  • Project Structure
  • Getting Started
  • Quickstart (Recruiters)
  • Author
  • License

๐Ÿ“ Overview

Allify is a Snapchatโ€‘inspired, productionโ€‘ready chat experience. Beyond DMs and groups, it layers Stories, Snaps, Streaks, Reactions, Memories, Spotlight/Discover, Map, Notifications, Admin tools, and a Personal AI Assistant. The frontend is React 18 + Chakra UI + Framer Motion with tasteful effects (Lamp glow on Home, animated Butterflies behind routes). The backend is Node/Express + MongoDB with Socket.IO, Cloudinary/AWS S3, web-push, and optional Google Generative AI.

๐Ÿ‘พ Features

  • Authentication
    • Email/password; OTP login; profile photo
  • Realtime chat (Socket.IO)
    • DMs, typing indicator, read receipts, online/lastโ€‘seen, delete for me/everyone
    • Image messages with captions
  • Social layer
    • Snaps, Stories, Streaks, Reactions, Memories, Spotlight/Discover, Best friends & snap score
  • Assistant & Utilities
    • Personal AI assistant with memory; captions; reminders; notifications (webโ€‘push)
  • Media & Cloud
    • Cloudinary/AWS S3 uploads; transforms; HLS music rooms; map with Leaflet
  • Security & Reliability
    • AESโ€‘GCM encryption for sensitive payloads; scheduler for cleanups; audit logs
  • Delightful UI/UX
    • Chakra theme, Motion buttons, Animated route transitions, Lamp effect, Butterflies

๐Ÿงฑ Architecture (highโ€‘level)

  • Frontend: React 18 (CRACO) + Chakra UI + Framer Motion + React Router v6
  • Backend: Node.js/Express + MongoDB/Mongoose + Socket.IO
  • Media/Cloud: Cloudinary and/or AWS S3 for assets; web-push for notifications
  • Optional AI: Google Generative AI / Vertex AI

๐Ÿ“ Project Structure (abridged)

root/
	backend/    # Express API, models, routes, sockets
	frontend/   # React app (Chakra + Motion), effects
	screenshots/ # repo images used in README

๐Ÿš€ Getting Started

Prerequisites

  • Node.js 18+ and npm
  • MongoDB connection string
  • Cloudinary or AWS S3 creds (for media)
  • Optional: VAPID keys for push; Google AI key

Env setup

From repo root, copy the template and fill values:

Copy-Item .env.example backend/.env

Key vars (see .env.example):

  • Backend: PORT, MONGO_URI, JWT_SECRET, CLOUDINARY_, AWS_, EMAIL/PASSWORD, VAPID_*
  • Frontend: REACT_APP_API (defaults to http://localhost:5000)

Install & Run (dev)

# backend
cd .\backend; npm i; npm run dev

# new terminal โ†’ frontend
cd ..\frontend; npm i; npm start

Frontend runs on 3001; API on 5000 by default.

Build

cd .\frontend; npm run build

โšก Quickstart (recruiters)

  1. Copy envs: Copy-Item .env.example backend/.env and add your Mongo URI + JWT secret at minimum.
  2. Start API: cd .\backend; npm i; npm run dev.
  3. Start UI: open a new terminal โ†’ cd ..\\frontend; npm i; npm start.
  4. Login and explore: Dashboard โ†’ chats, images, typing, read receipts; try Stories/Snaps.

๐Ÿ‘ค Author

๐ŸŽ— License

MIT โ€” free to use, remix, and learn. โ”‚ โ”‚ โ”œโ”€โ”€ Dashboard

About

Allify - MERN Chatting Application A full-stack MERN (MongoDB, Express.js, React.js, Node.js, Socket.IO) online chatting application ๐Ÿ’ฌ with friends additionally with a Personal Chatbot. ๐Ÿค–

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages