{"id":32843944,"url":"https://github.com/omkarardekar12/textory","last_synced_at":"2025-11-08T06:02:08.797Z","repository":{"id":317247737,"uuid":"1066102334","full_name":"OmkarArdekar12/Textory","owner":"OmkarArdekar12","description":"Textory is a real-time chat application built with the MERN stack, integrated with Socket.IO for live messaging. The frontend uses React, Tailwind CSS and DaisyUI, with Zustand for state management. Users can create accounts, login, and chat in real time with other users. Additionally, Textory comes with 35 pre-integrated UI themes.","archived":false,"fork":false,"pushed_at":"2025-11-06T08:08:34.000Z","size":3632,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-06T09:10:45.370Z","etag":null,"topics":["axios","daisyui","express","jwt-authentication","mongodb","mongoose","nodejs","react","react-hot-toast","react-router-dom","render-deployment","responsive-ui-design","socket-io","socket-io-client","tailwindcss","vercel-deployment","zustand","zustand-state-management"],"latest_commit_sha":null,"homepage":"https://textory.vercel.app/","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/OmkarArdekar12.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-09-29T02:54:25.000Z","updated_at":"2025-11-06T08:10:12.000Z","dependencies_parsed_at":"2025-09-29T20:38:15.055Z","dependency_job_id":null,"html_url":"https://github.com/OmkarArdekar12/Textory","commit_stats":null,"previous_names":["omkarardekar12/textory"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/OmkarArdekar12/Textory","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OmkarArdekar12%2FTextory","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OmkarArdekar12%2FTextory/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OmkarArdekar12%2FTextory/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OmkarArdekar12%2FTextory/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OmkarArdekar12","download_url":"https://codeload.github.com/OmkarArdekar12/Textory/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OmkarArdekar12%2FTextory/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":283307727,"owners_count":26814472,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-08T02:00:06.281Z","response_time":57,"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","express","jwt-authentication","mongodb","mongoose","nodejs","react","react-hot-toast","react-router-dom","render-deployment","responsive-ui-design","socket-io","socket-io-client","tailwindcss","vercel-deployment","zustand","zustand-state-management"],"created_at":"2025-11-08T06:00:52.305Z","updated_at":"2025-11-08T06:02:08.784Z","avatar_url":"https://github.com/OmkarArdekar12.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1\u003e\u003cimg src=\"./frontend/public/Logo.png\" width=\"45px\" valign=\"middle\"/\u003e Textory - Real-time Chat Application\u003c/h1\u003e\n\n\u003cdiv\u003e\n\u003cimg src=\"https://img.shields.io/badge/Express.js-000000?style=for-the-badge\u0026logo=express\u0026logoColor=white\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/Node.js-339933?style=for-the-badge\u0026logo=nodedotjs\u0026logoColor=white\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/MongoDB-47A248?style=for-the-badge\u0026logo=mongodb\u0026logoColor=white\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/Socket.IO-010101?style=for-the-badge\u0026logo=socketdotio\u0026logoColor=white\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/React-61DAFB?style=for-the-badge\u0026logo=react\u0026logoColor=black\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/Zustand-764ABC?style=for-the-badge\u0026logo=zustand\u0026logoColor=white\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/Tailwind%20CSS-38B2AC?style=for-the-badge\u0026logo=tailwindcss\u0026logoColor=white\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/DaisyUI-5A0EF8?style=for-the-badge\u0026logo=daisyui\u0026logoColor=white\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/Render-46E3B7?style=for-the-badge\u0026logo=render\u0026logoColor=white\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/Vercel-000000?style=for-the-badge\u0026logo=vercel\u0026logoColor=white\"/\u003e\n\u003c/div\u003e\n\n\u003ch2\u003eTextory - Stay Connect\u003c/h2\u003e\n\n### Textory is a real-time chat application built using the MERN Stack (MongoDB, Express.js, React, Node.js) and powered by Socket.IO for live two-way communication. \u003cbr\u003eIt allows users to create accounts, log in securely, and chat instantly with others in real time. \u003cbr\u003eThe frontend is developed with React, styled using Tailwind CSS and DaisyUI, while Zustand efficiently manages global state. \u003cbr\u003eUsers can also customize their chat interface with 35 pre-integrated UI themes, enhancing personalization and user engagement. \u003cbr\u003eCloudinary is integrated for image storage, and JWT authentication ensures secure communication between client and server. \u003cbr\u003eTextory offers a modern, fast, and responsive experience for staying connected anytime, anywhere.\n\n#### Textory = Text + Story \u003cbr\u003eIt represents a platform where every conversation becomes a _story_ — a connection that continues to grow in real time.\n\n\u003ch2\u003e\u003ca href=\"https://textory.vercel.app/\" rel=\"noopener noreferrer\" target=\"_blank\"\u003eTextory  \u003cimg src=\"./frontend/public/Logo.png\" width=\"25px\" valign=\"middle\"/\u003e Live Link: https://textory.vercel.app\u003c/a\u003e\u003c/h2\u003e\n\n## Features\n\n\u003ch3\u003e\n\u003cul align=\"left\"\u003e\n\u003cli\u003eReal-time chat system using Socket.IO\u003c/li\u003e\n\u003cli\u003eGlobal state management using Zustand\u003c/li\u003e\n\u003cli\u003eProfile management for users\u003c/li\u003e\n\u003cli\u003eUser authentication and secure sessions with JWT\u003c/li\u003e\n\u003cli\u003eOnline users list - showing active users in real time\u003c/li\u003e\n\u003cli\u003ePassword hashing and security using bcrypt\u003c/li\u003e\n\u003cli\u003eCloudinary integration for storing images\u003c/li\u003e\n\u003cli\u003eResponsive and modern UI built with Tailwind CSS and DaisyUI\u003c/li\u003e\n\u003cli\u003e35 pre-integrated UI themes to personalize the UI/UX and chat experience\u003c/li\u003e\n\u003cli\u003eDeployed Backend on Render and Frontend on Vercel\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/h3\u003e\n\n## Tech Stack\n\n\u003ch3\u003e\n\u003cul\u003e\n\u003cli\u003eFrontend: React, Socket.IO Client, Tailwind CSS, DaisyUI, Zustand, React Router, Axios, React Hot Toast, Lucide React, React Icons\u003c/li\u003e\n\u003cli\u003eBackend: Node.js, Express.js, MongoDB, Mongoose, Socket.IO, JWT\u003c/li\u003e\n\u003cli\u003eAuthentication \u0026 Security: JWT, bcryptjs, cookie-parser, dotenv\u003c/li\u003e\n\u003cli\u003eState Management: 35 UI Themes, Responsive Design\u003c/li\u003e\n\u003cli\u003eUI/UX Enhancements: Zustand\u003c/li\u003e\n\u003cli\u003eDeployment: Render (Backend), Vercel (Frontend)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/h3\u003e\n\n## Installation\n\n### Textory Installation\n\n```\ngit clone \u003ctextory-repo-url\u003e\n```\n\n\u003cp align=\"center\"\u003eOR\u003c/p\u003e\n\n```\ngit clone https://github.com/OmkarArdekar12/Textory.git\n```\n\n### Backend Setup\n\n```\ncd backend\nnpm install\nnpm run dev   # runs the server with nodemon in development mode\n```\n\n\u003cp align=\"center\"\u003eOR\u003c/p\u003e\n\n```\ncd backend\nnpm i\nnpm start\n```\n\n### Frontend Setup\n\n```\ncd frontend\nnpm install\nnpm run dev\n```\n\n### Configuration\n\n##### 1. Create a `.env` file in the backend folder with the following keys:\n\n```\nPORT=5001 or your_port\nMONGODB_URI=your_mongodb_connection_string\nJWT_SECRET=your_jwt_secret_key\nCLOUDINARY_CLOUD_NAME=your_cloud_name\nCLOUDINARY_CLOUD_API_KEY=your_api_key\nCLOUDINARY_CLOUD_API_SECRET=your_api_secret\nFRONTEND_URL=http://localhost:5173 or your_frontend_url\nNODE_ENV=development or production in deployment (optional)\n```\n\n##### Create a `.env` file in the backend folder with the following keys:\n\n```\nVITE_BACKEND_URL=http://localhost:5001 or your_backend_url\n```\n\n\u003cbr\u003e\n\u003cbr\u003e\n\u003chr\u003e\n\n\u003c!-- ### Textory is a real-time chat application built with the MERN stack (MongoDB, Express.js, React, Node.js), integrated with Socket.IO for live messaging. The frontend uses React, Tailwind CSS and DaisyUI, with Zustand for state management. Users can create accounts, login, and chat in real time with other users. Additionally, Textory comes with 35 pre-integrated UI themes, allowing users to personalize their chat interface for a richer and more interactive experience. --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomkarardekar12%2Ftextory","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fomkarardekar12%2Ftextory","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomkarardekar12%2Ftextory/lists"}