{"id":48729097,"url":"https://github.com/theneovimmer/chatty_app","last_synced_at":"2026-04-16T05:02:41.715Z","repository":{"id":310530768,"uuid":"1040235251","full_name":"TheNeovimmer/chatty_app","owner":"TheNeovimmer","description":"A modern, real-time chat application built with the MERN stack (MongoDB, Express, React, Node.js) and Socket.IO for instant messaging capabilities.","archived":false,"fork":false,"pushed_at":"2025-08-18T17:18:46.000Z","size":844,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-12T00:49:28.018Z","etag":null,"topics":["axios","daisyui","react","reacthottoast","reactrouter","socket-io","tailwincss","vite","zustand"],"latest_commit_sha":null,"homepage":"https://chatty-app-69a1.onrender.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TheNeovimmer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-18T16:55:56.000Z","updated_at":"2025-12-04T08:26:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"60bf92b5-70d3-4652-af99-033e1340434b","html_url":"https://github.com/TheNeovimmer/chatty_app","commit_stats":null,"previous_names":["bouzayenilyes/chatty_app","theneovimmer/chatty_app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/TheNeovimmer/chatty_app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheNeovimmer%2Fchatty_app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheNeovimmer%2Fchatty_app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheNeovimmer%2Fchatty_app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheNeovimmer%2Fchatty_app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TheNeovimmer","download_url":"https://codeload.github.com/TheNeovimmer/chatty_app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TheNeovimmer%2Fchatty_app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31872036,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-15T15:24:51.572Z","status":"online","status_checked_at":"2026-04-16T02:00:06.042Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["axios","daisyui","react","reacthottoast","reactrouter","socket-io","tailwincss","vite","zustand"],"created_at":"2026-04-12T00:49:20.228Z","updated_at":"2026-04-16T05:02:41.710Z","avatar_url":"https://github.com/TheNeovimmer.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Chat Application\n\nA modern, real-time chat application built with the MERN stack (MongoDB, Express, React, Node.js) and Socket.IO for instant messaging capabilities.\n\n![Chat App Screenshot](/frontend/public/Screenshot%20-%202025-08-18%2018-12-47.png)\n\n## Features\n\n- **Real-time Messaging**: Instant messaging with WebSocket technology using Socket.IO\n- **User Authentication**: Secure user registration and login with JWT\n- **Responsive Design**: Fully responsive UI that works on desktop and mobile devices\n- **User Profiles**: Customizable user profiles with avatar images\n- **Online Status**: See which users are currently online\n- **Dark/Light Mode**: Toggle between dark and light themes\n- **Persistent Sessions**: Secure session management with HTTP-only cookies\n\n## Tech Stack\n\n### Frontend\n- **React** - Frontend JavaScript library\n- **Vite** - Build tool and development server\n- **Zustand** - State management\n- **React Router** - Client-side routing\n- **Tailwind CSS** - Utility-first CSS framework\n- **DaisyUI** - Component library for Tailwind CSS\n- **Axios** - HTTP client for API requests\n- **Socket.IO Client** - Real-time bidirectional event-based communication\n- **React Hot Toast** - Toast notifications\n\n### Backend\n- **Node.js** - JavaScript runtime\n- **Express** - Web application framework\n- **MongoDB** - NoSQL database\n- **Mongoose** - MongoDB object modeling tool\n- **Socket.IO** - Real-time bidirectional event-based communication\n- **JWT** - Authentication\n- **bcryptjs** - Password hashing\n- **Cloudinary** - Image hosting service\n- **Cookie Parser** - Parse HTTP request cookies\n- **CORS** - Enable cross-origin resource sharing\n- **dotenv** - Environment variables\n\n## Project Structure\n\n```\nchatapp/\n├── backend/              # Backend server code\n│   ├── src/\n│   │   ├── controllers/  # Route controllers\n│   │   ├── lib/          # Library files (DB connection, socket setup)\n│   │   ├── middleware/   # Custom middleware\n│   │   ├── models/       # MongoDB models\n│   │   ├── routes/       # API routes\n│   │   └── seeds/        # Database seeders\n│   └── package.json\n├── frontend/             # React frontend code\n│   ├── public/           # Static assets\n│   ├── src/\n│   │   ├── components/   # React components\n│   │   ├── constants/    # Application constants\n│   │   ├── pages/        # Page components\n│   │   ├── store/        # State management\n│   │   ├── App.jsx       # Main App component\n│   │   └── main.jsx      # Entry point\n│   └── package.json\n└── README.md\n```\n\n## Getting Started\n\n### Prerequisites\n- Node.js (v14 or higher)\n- MongoDB\n- NPM or Yarn\n\n### Installation\n\n1. Clone the repository\n   ```bash\n   git clone https://github.com/bouzayenilyes/chatty_app.git\n   cd chatapp\n   ```\n\n2. Install dependencies for both backend and frontend\n   ```bash\n   npm run build\n   ```\n\n3. Set up environment variables\n   Create a `.env` file in the `backend` directory with the following variables:\n   ```\n   MONGODB_URI=...\n   PORT=5001\n   JWT_SECRET=put_your_jwt_secret_here\n   CLOUDINARY_CLOUD_NAME=...\n   CLOUDINARY_API_KEY=...\n   CLOUDINARY_API_SECRET=...\n   NODE_ENV=development\n   ```\n\n4. Start the development servers\n   ```bash\n   npm start\n   ```\n\n   This will start the backend server. In another terminal, navigate to the frontend directory and run:\n   ```bash\n   cd frontend\n   npm run dev\n   ```\n\n5. Open your browser and navigate to `http://localhost:5173`\n\n## Usage\n\n1. **Sign Up**: Create a new account with your email and password\n2. **Log In**: Access your account with your credentials\n3. **Start Chatting**: Select a user from the online list and begin messaging\n4. **Customize Profile**: Update your profile information and avatar\n5. **Toggle Theme**: Switch between light and dark mode in settings\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n1. Fork the project\n2. Create your feature branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n## License\n\nThis project is licensed under the ISC License - see the [LICENSE](LICENSE) file for details.\n\n## Contact\n\nIlyes Bouzayen - [@Ilyesbouzayen](https://twitter.com/ilyesbouzayen) - ilyesbouzayen@hotmail.com\n\nProject Link: [https://github.com/bouzayenilyes/chatty_app](https://github.com/bouzayenilyes/chatty_app)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheneovimmer%2Fchatty_app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftheneovimmer%2Fchatty_app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheneovimmer%2Fchatty_app/lists"}