Skip to content

A modern, full-stack social platform featuring real-time chat, video calling, and a rich user experience. Built with a robust tech stack and best practices, Streamify is designed for scalability, reliability, and ease of use.

Notifications You must be signed in to change notification settings

hasnaintypes/chat-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Streamify

A modern, full-stack social platform featuring real-time chat, video calling, and a rich user experience. Built with a robust tech stack and best practices, Streamify is designed for scalability, reliability, and ease of use.


🚀 Tech Stack

  • Node.js & Express: Backend server and RESTful API development
  • MongoDB: Flexible, scalable NoSQL database
  • React: Fast, component-based frontend
  • TanStack Query: Efficient data fetching and caching
  • Tailwind CSS: Utility-first, customizable styling

🔐 Authentication with JWT

  • Secure login and signup flows using JSON Web Tokens
  • Protects user data and sessions
  • Ensures only authenticated users can access sensitive features

📄 Onboarding Flow

  • Guided onboarding for new users
  • Smooth introduction to platform features
  • Personalized setup for a tailored experience

👥 Friends System

  • Add, remove, and manage friends
  • View friends’ statuses and profiles
  • Real-time updates on friend activities

💬 Real-Time Chat

  • Instant messaging with friends
  • Typing indicators and message status
  • Scalable WebSocket-based communication

📹 Video Calling

  • One-on-one and group video calls
  • High-quality, low-latency streaming
  • Seamless integration with chat and friends system

🎨 32 UI Themes

  • Extensive theme selection for personalization
  • Light, dark, and colorful options
  • Instantly switch themes for a unique look

🚨 Protected Routes

  • Route guards to prevent unauthorized access
  • Ensures only eligible users can view certain pages
  • Integrated with authentication system

🛠️ Custom Hooks & Best Practices

  • Modular, reusable React hooks for state and logic
  • Clean, maintainable codebase
  • Follows industry best practices for scalability

🧪 API Testing

  • Comprehensive endpoint testing for reliability
  • Automated and manual tests to ensure robustness
  • Easy to extend and maintain test suite

🚀 Deployment Ready

  • Production-optimized builds for client and server
  • Environment configuration for seamless deployment
  • Ready for cloud hosting and scaling

Getting Started

  1. Clone the repository:
    git clone https://github.com/yourusername/streamify.git
  2. Install dependencies:
    cd streamify
    npm install
    cd client && npm install
    cd ../server && npm install
  3. Configure environment variables:
    • Create .env files in both client and server directories as needed.
  4. Run the development servers:
    • For the backend:
      cd server
      npm run dev
    • For the frontend:
      cd client
      npm run dev

Contributing

Contributions are welcome! Please open issues or submit pull requests for improvements and bug fixes.


License

This project is licensed under the MIT License.

About

A modern, full-stack social platform featuring real-time chat, video calling, and a rich user experience. Built with a robust tech stack and best practices, Streamify is designed for scalability, reliability, and ease of use.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages