Pingify is a modern web application designed to facilitate real-time chat and user management. The project is structured as a full-stack application with a React-based frontend and a Node.js/Express backend.
- User authentication (login, registration)
- Real-time chat interface
- User profile management
- Responsive and modern UI
Pingify/
├── client/ # Frontend (React + Vite)
│ ├── public/ # Static assets
│ ├── src/ # Source code
│ │ ├── assets/ # Images and icons
│ │ ├── components/ # React components (ChatContainer, Sidebar, RightPanel)
│ │ ├── lib/ # Utility libraries (db.js)
│ │ ├── pages/ # Page components (HomePage, LoginPage, ProfilePage)
│ │ ├── store/ # This contains state management for Zustand
│ │ ├── App.jsx # Main app component
│ │ ├── main.jsx # Entry point
│ │ └── index.css # Global styles
│ ├── package.json # Frontend dependencies
│ └── vite.config.js # Vite configuration
├── server/ # Backend (Node.js + Express)
│ ├── src/
│ │ ├── controllers/ # Route controllers (auth.controller.js)
│ │ ├── lib/ # Backend utilities
│ │ ├── middleware/ # Express middleware
│ │ ├── models/ # Database models
│ │ └── routes/ # API routes (auth.route.js)
│ │ ├── emails/ # handle sending email to new user
│ └── package.json # Backend dependencies
└── README.md # Project documentation
- Node.js (v16 or higher recommended)
- npm or yarn
-
Clone the repository:
git clone https://github.com/Vijayaa21/Pingify.git cd Pingify -
Install dependencies for both client and server:
cd client npm install cd ../server npm install
cd server
npm run devcd client
npm run devThe frontend will typically run on http://localhost:5173 and the backend on http://localhost:3000 by default.
This project is licensed under the MIT License.