A modern web application that streamlines meeting scheduling and email communication in one unified workflow.
Schedulo solves the problem of juggling multiple apps for meeting scheduling and email communication. Instead of switching between calendar apps, email clients, and video conferencing tools, users can create professional emails with embedded meeting details in one seamless workflow.
Who it's for: Professionals, teams, and anyone who regularly schedules meetings and sends email invitations.
- Frontend: Next.js 15.3, React 19, TypeScript
- Styling: Tailwind CSS v4, shadcn/ui components
- Authentication: NextAuth.js v5 with Google OAuth
- APIs: Google Calendar, Gmail, Meet APIs
- Email: Nodemailer with Gmail SMTP
- Forms: React Hook Form v7 with Zod validation
- Editor: TipTap rich text editor
- Unified Workflow: Create emails and schedule meetings in one process
- Google Meet Integration: Automatic meeting link generation
- Interactive Calendar: Month navigation for date selection
- Timezone Support: Schedule across different time zones
- Rich Text Editor: Professional email formatting
- Google OAuth: Secure authentication
- Responsive Design: Clean UI for all devices
-
Clone the repository
git clone https://github.com/Marvellousz/schedulo.git cd schedulo
-
Install dependencies
npm install
-
Set up environment variables
cp .env.example .env.local
Create
.env.local
with:NEXTAUTH_SECRET=your-secret-key-here NEXTAUTH_URL=http://localhost:3000 GOOGLE_CLIENT_ID=your-google-client-id GOOGLE_CLIENT_SECRET=your-google-client-secret EMAIL_SERVER_USER=your-gmail-address@gmail.com EMAIL_SERVER_PASSWORD=your-app-password EMAIL_SERVER_HOST=smtp.gmail.com EMAIL_SERVER_PORT=587 EMAIL_FROM=your-gmail-address@gmail.com
-
Run the application
npm run dev
Visit http://localhost:3000
to use the application.
- Sign in with your Google account
- Compose your email using the rich text editor
- Toggle "Create a Google Meet" if you need a meeting
- Select meeting date from the interactive calendar
- Configure details (time, duration, timezone)
- Send - email with meeting details goes to all recipients
- Calendar sync - meeting appears in Google Calendar automatically
- Connect your GitHub repository to Vercel
- Add environment variables in Vercel dashboard
- Deploy - Vercel handles the build automatically
# Build the application
npm run build
# Start production server
npm start
Ensure all environment variables are set in your deployment platform:
NEXTAUTH_SECRET
NEXTAUTH_URL
(your production domain)GOOGLE_CLIENT_ID
GOOGLE_CLIENT_SECRET
- Email service credentials
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Email: pranavmurali024@gmail.com
- GitHub: https://github.com/Marvellousz/schedulo
Built with ❤️ for productivity