This is a full-stack web application for Celia Dunsmore's counseling service. The application enables clients to view services, book appointments, and contact the counselor directly.
- Modern responsive UI built with React and Tailwind CSS
- Online booking system with Google Calendar integration
- Contact form for client inquiries
- Admin dashboard for managing bookings and availability
- Email notifications for booking confirmations
- Frontend: React 18, TypeScript, Tailwind CSS, shadcn/ui components
- Backend: Express.js, Node.js
- Database: PostgreSQL with Drizzle ORM
- API Integrations: Google Calendar, SendGrid
- Build Tools: Vite, esbuild
-
Environment Variables: Make sure to set these in your Replit secrets:
DATABASE_URL: PostgreSQL connection stringGOOGLE_CLIENT_ID: For Google Calendar integrationGOOGLE_CLIENT_SECRET: For Google Calendar integrationSENDGRID_API_KEY: For email notifications
-
Install Dependencies:
npm install -
Database Setup:
npm run db:push -
Development Mode:
npm run dev -
Production Build:
npm run build npm run start
client/: Frontend React applicationserver/: Express.js backendshared/: Shared types and schemas used by both frontend and backendmigrations/: Database migration scripts
This project is configured for easy deployment on Replit:
- The workflow is configured to run the application
- The project uses Replit's PostgreSQL database
- Deployments can be initiated directly from Replit
MIT