Skip to content
29miaoetPublic

About

A web app to count down the days until school ends.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

timeuntil

🎉 Welcome to timeuntil!

Structure


timeuntil/
├── .github/
│   ├── workflows/
│   │   ├── deploy.yml
│   │   ├── format.yml
│   │   ├── test.yml
│   │   └── release.yml
│   │ 
│   ├── dependabot.yml
│   └── CONTRIBUTING.md
│
├── src/
│   ├── styles/
│   │   ├── components/
│   │   │   ├── countdown.css
│   │   │   └── menu.css
│   │   │
│   │   ├── base.css
│   │   ├── media.css
│   │   └── themes.css
│   │ 
│   ├── data/
│   │   ├── schools.json
│   │   └── schedule.json
│   │ 
│   ├── classes/
│   │   ├── day.ts
│   │   └── menu.ts
│   │ 
│   ├── core/
│   │   ├── app.ts
│   │   ├── configReader.ts
│   │   ├── calendar.ts
│   │   └── state.ts
│   │ 
│   ├── modules/
│   │   ├── DayActions.ts
│   │   ├── finish.ts
│   │   ├── setProgress.ts
│   │   └── preferences.ts
│   │ 
│   ├── UI/
│   │   ├── DomUpdate.ts
│   │   ├── InitDom.ts
│   │   ├── RenderError.ts
│   │   ├── countdownSetter.ts
│   │   └── SlowDomUpdate.ts
│   │ 
│   ├── helpers/
│   │   └── fetchCalendar.ts
│   │ 
│   ├── tests/
│   │   ├── fixtures/
│   │   │   └── calendar.json
│   │   │
│   │   ├── calendar.test.ts
│   │   ├── day.test.ts
│   │   ├── menu.test.ts
│   │   └── fetchCalendar.test.ts
│   │ 
│   ├── types/
│   │   ├── global.d.ts
│   │   └── vite-env.d.ts
│   │ 
│   └── main.ts
│
├── public/
│   ├── calendars/
│   │   ├── gci.json
│   │   ├── dci.json
│   │   ├── cjs.json
│   │   └── burland.json
│   │
│   ├── manifest.webmanifest
│   ├── favicon.svg
│   └── github.svg
│
├── scripts/
│   ├── fetchVersion.ts
│   ├── fetch_calendar.py
│   └── scrape_id.py
│
├── .gitignore
├── .prettierignore
├── .prettierrc
├── index.html
├── package.json
├── package-lock.json
├── tsconfig.json
├── vite.config.ts
│
├── LICENSE
└── README.md

Overview

Timeuntil is a project focused on counting down the exact time until school ends. Unlike a typical school calendar, it gives you the information you want to know at a glance, without any other distractions, so you can focus on the important stuff.
This app runs entirely in your browser (because I don't have a server, not because I care about your privacy). As of the latest version, the entire website fits under 13.42KB gzipped, which means it can fit into a single TCP round-trip, making page load almost unoticable.

Attributes

  • ✅ Responsive UI layout
  • ✅ Customization options
  • ✅ Modern HTML, CSS and TypeScript code
  • ✅ Modern npm build stack
  • ✅ Only ~10ms drift between displays

Requisites

  • Modern GUI browser
  • JavaScript enabled

Contributing

Please refer to CONTRIBUTING.md.

Technology Stack

Layer Technology Notes
Hosting GitHub Pages Static site deployment
Frontend HTML, CSS, TypeScript Modern language stack
Build vite.js Fast and efficient build step
DevOps Github Actions Automated tests and formatting checks

Future Path

  • Add functionality to UI buttons.
  • Finish basic website UI.
  • Organize and shorten code by using more functions.
  • Harden code logic.
  • Add and configure vitest.
  • Refactor and split source files.
  • Add and configure ESlint after TypeScript 7.1 is released.
  • Migrate UI handlers to React.
  • Transform static CSS into Sass.

Stats

  • Release
  • License
  • Deployed
  • Website status
  • Code style
  • Repo size
  • Total commits
  • Last commit
  • Average commit activity
  • Language count
  • Top language
  • Issues
  • Closed issues
  • Pull requests
  • Closed Pull requests

Utilized Tools

License

This project is published under the MIT license, for more details, view the LICENSE.

©2026 – Ethan Miao - MIT License

About

A web app to count down the days until school ends.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Used by

Contributors

Languages