Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chill Pill

A medication reminder and calendar web application that helps users (and their families) stay on top of medication schedules.

Created by Dushyant Saini, Jack Koskie, and Eric Du for ICS4U.

Features

  • Track when medications need to be taken, with a calendar view
  • Monitor remaining medication supply and get reminded to refill
  • View a family member's medication history to help them stay up to date
  • Google OAuth sign-in
  • Multi-language support (English, Spanish, French, Traditional Chinese, Simplified Chinese)

Tech stack

SvelteKit · TypeScript · Drizzle ORM · Cloudflare D1 (SQLite) · Cloudflare Pages/Workers · Tailwind CSS + daisyUI · Paraglide for i18n

Getting started

1. Install dependencies

npm install

2. Set up environment variables

Copy .env.example to .env and fill in your own values:

cp .env.example .env

You'll need a Google OAuth client ID/secret for sign-in to work locally. The Cloudflare variables are only needed for production database migrations.

3. Set up the local database

This project uses Cloudflare D1 (SQLite) via Drizzle ORM. For local development, Wrangler emulates D1 automatically:

npm run dev

To generate or run migrations after changing the schema (src/lib/db/schema/):

npm run db:generate
npm run db:migrate

You can also inspect the database visually with:

npm run db:studio

4. Run the dev server

npm run dev

The app will be available at http://localhost:5173.

Other useful scripts

Command Description
npm run build Build for production
npm run preview Build and preview locally via Wrangler
npm run deploy Build and deploy to Cloudflare Pages
npm run check Type-check the project
npm run lint Check formatting and lint rules
npm run format Auto-format the codebase with Prettier

Project structure

src/
├── lib/
│   ├── auth/       # Google OAuth + session handling
│   ├── db/schema/  # Drizzle schema: users, medications, history, family
│   └── utils/
├── routes/
│   ├── dashboard/  # Main medication overview
│   ├── calendar/   # Calendar view of medication schedule
│   ├── history/    # Medication history log
│   ├── settings/   # User + family settings
│   └── login/      # Google OAuth login flow
messages/           # i18n translation files (en, es, fr, zh-Hant, zh-cn)
drizzle/            # Generated SQL migrations

Known bugs

None currently tracked.

Support

For support, please open a GitHub issue or pull request.

License

MIT — see LICENSE.

About

Medication reminder and calendar app with family sharing — built with SvelteKit, Cloudflare D1, and Drizzle ORM, with Google OAuth and 5-language support.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages