Planzit is a calendar scheduling platform built with Next.js, styled using Tailwind CSS and shadcn-ui components. It leverages Supabase for database management, Nylas for scheduling and storage, and integrates Google Cloud and GitHub for authentication. Designed to streamline personal and collaborative planning, Planzit offers a seamless, intuitive experience—all implemented using free tools and services.
- Get started in minutes with a simple sign-up process.
- Personalize your profile with relevant details to help others connect with you easily.
- Manage meetings and events within Planzit.
- Google Calendar Sync: Keep everything synced across platforms to avoid missed meetings and double bookings.
- Easily schedule meetings by sharing your availability with others.
- Send invites, track RSVPs, and manage attendee status directly from Planzit.
- Quickly check your availability and avoid conflicts with live updates.
- Integrated notifications to remind you of upcoming meetings or last-minute changes.
- Access meeting links and join calls with a single tap from your dashboard.
- Stay on top of all your events without juggling multiple apps.
- Clean, responsive design for smooth navigation across all devices.
- Tailored for both personal and professional use, catering to freelancers, businesses, and individuals.
- View and manage all meetings, tasks, and events from a single interface.
- Flexible scheduling tools to organize your day with ease.
With Planzit, everything you need to manage your time effectively is at your fingertips—whether you’re scheduling a business meeting, setting personal goals, or coordinating events. Simplify your planning, save time, and never miss an important moment!
You can Add, Edit, Delete or Preview and Manage Your Events Will full Accessibility
Follow these steps to set up the Planzit project locally.
Make sure you have the following installed:
- Node.js (v18.x or higher)
- npm or yarn (for package management)
- Git
- PostgreSQL (if required for database setup)
- Nylas Developer Account (for Nylas API integration)
Open your terminal and run:
git clone https://github.com/arushsingh03/planzit.git cd planzit
npm install
yarn install
Environment Variable | Description |
---|---|
AUTH_SECRET |
Secret key used to sign and verify authentication tokens. |
AUTH_GITHUB_ID / AUTH_GITHUB_SECRET |
GitHub OAuth credentials for enabling GitHub login. |
AUTH_GOOGLE_ID / AUTH_GOOGLE_SECRET |
Google OAuth credentials for Google login integration. |
DATABASE_URL |
Connection string for accessing the primary database. |
DIRECT_URL |
Direct access URL for specific database operations or APIs. |
NYLAS_API_SECRET_KEY / NYLAS_API_URI / NYLAS_CLIENT_ID |
Nylas API credentials for email, calendar, or communication sync. |
NEXT_PUBLIC_URL |
Public URL for the app, used for client-side requests. |
UPLOADTHING_TOKEN |
Token for managing file uploads through UploadThing service. |
If you are using PostgreSQL, make sure the database is running. You can set up the schema by running:
npx prisma migrate dev
Run the following command to start the development server:
npm run dev
yarn dev
http://localhost:3000
Ensure that your GitHub and Google OAuth integrations are correctly configured by testing the login flows. You may need to whitelist http://localhost:3000 in the OAuth provider's settings.
Make sure you have set up your Nylas credentials and configured the API access properly. Verify that the Nylas sync works for scheduling features.
Run the following commands to ensure code quality:
npm run lint
npm run format
To create a production build:
npm run build
If you plan to contribute, create a new branch:
git checkout -b your-feature-branch After making changes, push your branch and open a pull request.
Port Conflict: If 3000 is in use, update NEXT_PUBLIC_URL in the .env and run the server on a different port:
PORT=4000/5000 npm run dev
Database Issues: Make sure your DATABASE_URL is correct and PostgreSQL is running.