Architected & Developed by Shivendra Singh
SynapseConnect is a high-performance, real-time communication platform engineered for seamless connectivity and scalability. Leveraging an event-driven architecture, it facilitates instantaneous data transmission and state synchronization using WebSockets, ensuring low-latency interactions for end-users.
The core of SynapseConnect is built upon a robust full-stack environment designed for speed and reliability:
- Core Framework: React 18 - Utilizing the Virtual DOM and fiber architecture for optimal rendering performance.
- Build System: Vite - Utilizing native ES modules for lightning-fast HMR (Hot Module Replacement) and optimized production builds.
- State Management: Zustand - A small, fast, and scalable bearbones state-management solution using simplified flux principles.
- Styling Engine: TailwindCSS - Utility-first CSS framework for rapid UI development and highly optimized production bundles.
- UI Components: DaisyUI - Component classes for Tailwind CSS.
- Iconography: Lucide React - Lightweight, consistent icon set.
- Runtime Environment: Node.js - Asynchronous event-driven JavaScript runtime.
- API Framework: Express.js - Minimalist web framework for handling RESTful API routes and middleware pipelines.
- Real-Time Engine: Socket.IO - Enabling bidirectional, event-based communication between clients and server.
- Database: MongoDB - NoSQL database for flexible schema design and scalable document storage, interfaced via Mongoose ODM.
- Security:
- JWT (JSON Web Tokens): Stateless authentication mechanism.
- Bcrypt.js: Salting and hashing for secure password storage.
- Bidirectional Event Stream: Real-time messaging capability powered by persistent WebSocket connections.
- Optimistic UI Updates: Instant feedback loops for message delivery states.
- Authentication & Authorization: Secure user sessions with token-based verification and protected routes.
- Presence System: Real-time online/offline status tracking of connected users.
- Theme Engine: Dynamic theme switching capability supporting 32+ distinct visual modes.
- Responsive Layout: Fluid design adapting to all viewports (Mobile, Tablet, Desktop).
- Node.js (v18+ recommended)
- MongoDB instance (Local or Atlas Cluster)
- NPM or Yarn package manager
git clone https://github.com/ShivendraSingh/SynapseConnect.git
cd SynapseConnectNavigate to the backend service and install dependencies:
cd backend
npm installCreate a .env file in the backend directory with the following variables:
PORT=5001
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_strong_jwt_secret
CLOUDINARY_CLOUD_NAME=your_cloud_name
CLOUDINARY_API_KEY=your_api_key
CLOUDINARY_API_SECRET=your_api_secret
NODE_ENV=developmentStart the backend server:
npm run devOpen a new terminal, navigate to the frontend directory, and install dependencies:
cd frontend
npm installStart the development server:
npm run devTo generate optimized static assets for production deployment:
npm run buildShivendra Singh
Full Stack Software Engineer
Copyright ยฉ 2024 Shivendra Singh. All rights reserved.