Skip to content

Chessing234/dwaar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dwaar - Society Gated Community Management Platform

A modern, secure platform for housing societies in India to manage their communities efficiently.

Tech Stack

Frontend (Mobile + Web)

  • React Native with Expo - Cross-platform (iOS, Android, Web)
  • TypeScript - Type safety
  • Zustand - State management
  • React Navigation - Navigation
  • Socket.IO Client - Real-time updates

Backend

  • Node.js with Express - API server
  • TypeScript - Type safety
  • PostgreSQL - Primary database
  • Redis - Caching, OTP storage, rate limiting
  • Socket.IO - Real-time WebSocket server
  • Bull - Background job processing

Infrastructure

  • Docker - Containerization
  • AWS/Railway - Deployment
  • GitHub Actions - CI/CD

Project Structure

dwaar/
├── mobile/                 # React Native Expo app
│   ├── src/
│   │   ├── screens/       # Screen components
│   │   ├── components/    # Reusable components
│   │   ├── navigation/    # Navigation config
│   │   ├── services/      # API services
│   │   ├── stores/        # Zustand stores
│   │   ├── hooks/         # Custom hooks
│   │   ├── utils/         # Utilities
│   │   └── types/         # TypeScript types
│   ├── app.json
│   └── package.json
│
├── backend/               # Node.js Express server
│   ├── src/
│   │   ├── routes/       # API routes
│   │   ├── controllers/  # Route handlers
│   │   ├── services/     # Business logic
│   │   ├── models/       # Database models
│   │   ├── middleware/   # Express middleware
│   │   ├── jobs/         # Background jobs
│   │   ├── websocket/    # Socket.IO handlers
│   │   ├── utils/        # Utilities
│   │   └── types/        # TypeScript types
│   ├── prisma/           # Database schema
│   └── package.json
│
├── docker-compose.yml
└── README.md

Quick Start

Prerequisites

  • Node.js 18+
  • Docker & Docker Compose
  • Expo CLI (npm install -g expo-cli)

Development Setup

  1. Clone and install dependencies:
cd dwaar
npm run install:all
  1. Start infrastructure (PostgreSQL + Redis):
docker-compose up -d postgres redis
  1. Set up environment variables:
cp backend/.env.example backend/.env
cp mobile/.env.example mobile/.env
# Edit the .env files with your credentials
  1. Run database migrations:
cd backend && npx prisma migrate dev
  1. Start the backend:
cd backend && npm run dev
  1. Start the mobile app:
cd mobile && npm start

Environment Variables

Backend (.env)

DATABASE_URL=postgresql://user:pass@localhost:5432/dwaar
REDIS_URL=redis://localhost:6379
JWT_SECRET=your-secret-key
JWT_REFRESH_SECRET=your-refresh-secret
MSG91_AUTH_KEY=your-msg91-key
MSG91_SENDER_ID=DWAAR
MSG91_TEMPLATE_ID=your-template-id

Mobile (.env)

API_URL=http://localhost:3000
WS_URL=ws://localhost:3000

Deployment

See DEPLOYMENT.md for production deployment instructions.

License

Proprietary - All rights reserved

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors