A simple and intuitive scheduling application that helps you manage your time effectively. Schedule-it allows users to create, edit, and organize events, and collaborate with others on shared calendars. Built with React, TailwindCSS, shadcn/ui and Supabase.
Try it out here: https://schedule-it-now.netlify.app
These are the necessary steps to host the app yourself if you do not want to use the deployed version:
-
Build the app using
pnpm build
and deploy to Netlify, Vercel, GitHub Pages, etc. -
Create a new Supabase project
-
Populate the following environment variables (either in an .env file or using the Environment Variables option of your host):
VITE_SUPABASE_URL
(your Supabase project URL) andVITE_SUPABASE_ANON_KEY
(your Supabase anon key). -
Create following database tables (make sure RLS is disabled, these tables are supposed to be publicly available through their id):
-
schedules:
id (primary key) title name icon created_at text (unique) text text text timestamptz -
appointments:
id (primary key) schedule (foreign key rel -> id of schedules; cascade) name start_time end_time created_at int8 text text timestamptz timestamptz timestamptz
-
-
You're ready to go! Enjoy!
- Generate project slugs using dictionary words (e.g. funny-tortoise-book); should be unique so they can be used as an ID
- Create new table for schedules and link it to appointments using a foreign key relation
- Save newly created schedules to localstorage and also allow add button to add them from slug ("My Schedules" section on homepage)
- Turn it into a PWA for more convenient usage from mobile devices
- Add dark/light mode toggle
- Allow removing individual appointments from the timelines
Copyright (c) 2024, darius-it. Licensed under the BSD 3-Clause License.