freesched/README.md
2025-02-21 15:20:12 -05:00

95 lines
5.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Quick Start
`npm install`
`node server.js`
Browse to http://localhost:3000/admin for admin interface.
Create a UID and follow link in admin interface for frontend.
# Introducing FreeSched: A Simpler Alternative to Cal.com
Youve asked for a much simpler, easy-to-use version of Cal.com, named "FreeSched," that retains the clean and intuitive UI/UX of Cal.com and mirrors the simplicity of Calendly.com. Below, Ill outline what FreeSched is, its core features, how it works, and why its a streamlined alternative to Cal.com—all while keeping the design aesthetic you love.
What is FreeSched?
FreeSched is a lightweight, open-source scheduling tool designed to make booking meetings as simple as possible. Inspired by Cal.com (an open-source scheduling infrastructure) and Calendly.com (a popular scheduling platform), FreeSched strips away complexity to focus on the essentials. Its perfect for individuals—like freelancers, consultants, or anyone needing quick one-on-one scheduling—while maintaining a modern, minimalistic interface similar to Cal.com and Calendly.
Key Features of FreeSched
FreeSched focuses on simplicity without sacrificing usability. Heres what it offers:
Single Event Type
Users set one type of event with a fixed duration (e.g., 30 minutes).
No need to juggle multiple event types—just one straightforward option.
Basic Availability Settings
Set your available days and hours using a simple weekly grid (e.g., Monday to Friday, 9 AM to 5 PM).
Availability is divided into 30-minute slots for easy selection.
Google Calendar Integration
Connects to your Google Calendar to check existing events and prevent double-booking.
Only shows time slots when youre truly free.
Simple Booking Page
A clean, public page (e.g., freesched.example.com/yourname) where others can pick a date and time.
Invitees provide their name and email to confirm the booking.
Email Notifications
Sends confirmation emails to you and the invitee with all the details.
Keeps everyone in the loop without extra effort.
Time Zone Support
Automatically adjusts available times to the invitees time zone.
No more confusion for international scheduling.
How FreeSched Works
FreeSched is designed to be intuitive for both the user (you) and the invitee (the person booking with you). Heres the process:
For You (The User):
Sign Up and Set Up
Log in with Google (which also links your Google Calendar).
Set your availability (e.g., weekdays from 9 AM to 5 PM) and event duration (e.g., 30 minutes).
Share Your Booking Link
Get a unique URL (e.g., freesched.example.com/yourname) to share via email, social media, or anywhere.
Manage Bookings
View upcoming bookings in a simple dashboard.
Cancel bookings if needed, with automatic notifications sent to both parties.
For Invitees (The Booker):
Visit Your Booking Page
They open your link and see a calendar with your available dates.
Pick a Time
They select a date and choose from your available 30-minute slots, adjusted to their time zone.
Confirm the Booking
They enter their name and email, hit confirm, and receive an email with the details.
Once booked, the event is added to your Google Calendar, and both of you get a confirmation email. Thats it—no fuss, no extra steps.
UI/UX: Inspired by Cal.com and Calendly
FreeSched keeps the polished, user-friendly design of Cal.com and Calendly:
Clean Layout: A minimalistic interface with plenty of whitespace, clear fonts, and a simple color scheme.
Intuitive Navigation: Easy-to-use calendar for picking dates and a straightforward list of time slots.
Responsive Design: Works seamlessly on desktops, tablets, and phones.
Booking Flow: Select a date → pick a time → enter details → confirm—all in a few clicks.
Think of Calendlys booking page or Cal.coms sleek dashboard, but pared down to the essentials. The focus is on clarity and ease, avoiding overwhelming options or cluttered screens.
How Its Simpler Than Cal.com
Cal.com is a powerful scheduling infrastructure with tons of features, but that can make it overkill for simple needs. FreeSched simplifies things:
Feature Cal.com FreeSched
Event Types Multiple (15-min, 30-min, etc.) One fixed duration (e.g., 30 min)
Availability Detailed rules and buffers Basic weekly grid
Integrations Multiple calendars, payments, etc. Google Calendar only
Team Support Yes (shared schedules, etc.) Individual use only
Customization Highly customizable Simple, uniform design
FreeSched cuts out the extras to deliver a tool thats fast to set up and easy to use, while still looking and feeling like its more complex cousins.
Technical Overview (For the Curious)
FreeSched is built with modern, open-source tools:
Frontend: Next.js (a React framework for fast, server-rendered pages).
Backend: Node.js with Express.js for handling bookings and logic.
Database: PostgreSQL with Prisma to store user data and bookings.
Authentication: NextAuth.js with Google OAuth for login and calendar access.
Emails: SendGrid or Nodemailer for notifications.
This keeps FreeSched lightweight, secure, and easy to maintain, with a tech stack similar to Cal.com but scaled back for simplicity.
Why Use FreeSched?
FreeSched is for anyone who wants a free, no-nonsense scheduling tool:
Perfect For: Freelancers, tutors, consultants, or anyone needing simple one-on-one bookings.
Benefits: Quick setup, no learning curve, and a professional look inspired by Cal.com and Calendly.
Open-Source: Like Cal.com, its free to use and customizable if youre a developer.
Its scheduling made easy—just share a link and let others book you, all wrapped in a familiar, user-friendly package.