Welcome to the Appwrite Chat App! 🚀 This application is built using React, TypeScript, and Vite, and leverages Appwrite for backend functionalities like database, authentication, and real-time messaging.
- Real-time Messaging: Instant message updates using Appwrite Realtime.
- Authentication: User login and signup via Appwrite.
- Responsive UI: Optimized for mobile, tablet, and desktop views.
- Message Management: Create, read, and delete messages securely.
- Scalable Frontend: Powered by Vite for fast development and builds.
Follow these steps to set up and run the project locally:
- Node.js (>= 16.x)
- Appwrite Server (self-hosted or Appwrite Cloud)
- A modern browser
-
Clone the repository:
git clone https://github.com/your-username/appwrite-chat-app.git cd appwrite-chat-app
-
Install dependencies:
npm install
-
Create a
.env
file at the root of the project with the following variables:VITE_APPWRITE_URL='' VITE_APPWRITE_PROJECT_ID='' VITE_APPWRITE_DATABASE_ID='' VITE_APPWRITE_COLLECTION_Category_ID='' VITE_APPWRITE_COLLECTION_Message_ID=''
-
Start the development server:
npm run dev
-
Open your browser and navigate to:
http://localhost:5173
To create an optimized production build:
npm run build
Serve the dist
folder on your preferred hosting platform, such as Netlify, Vercel, or Firebase Hosting.
- Go to the Appwrite Console.
- Create a new project and note the project ID.
- Add a database and collection for messages.
- Configure security rules to restrict access based on user IDs.
Enable real-time updates in your Appwrite project by subscribing to database changes in your collection.
- Frontend: React, TypeScript, Tailwind CSS
- Backend: Appwrite (Database, Authentication, Realtime)
- Development Tools: Vite, ESLint, Prettier
Contributions are welcome! To contribute:
- Fork the repository.
- Create a feature branch:
git checkout -b feature-name
. - Commit your changes:
git commit -m "Add new feature"
. - Push to the branch:
git push origin feature-name
. - Open a pull request.
This project is licensed under the MIT License.