TutorLoom
The learning platform for companies, colleges and training institutes. Free and open source, with an Enterprise edition.
See where your classes are, check if you can make it between classes, and find a dorm close to them.
EducationJavaScript · CSSGitHub @xojejxjsOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
WalkMyWeek: see where your classes are, check if you can walk between back-to-back classes in time, and find a dorm close to them.
Taken from the repository README
Loading the full README.
Read the full README ↗Your week on a map. WalkMyWeek helps Boston University students:
Try it: https://walkmyweek.com/
An independent student project. Not affiliated with Boston University.
The icon is my initials, ML, written as one walking route: start at the hollow circle, pass two classes, and end on the green dot: on time.
Warren, StuVi, Myles, 188 Bay State Road). The selected building is outlined on the map.CAS 211 or PHO 206, using official BU building codes.#, which browsers never send to any server, so nothing is uploaded.Between listed places (every dorm, building and class code in data.json), times are real walking routes along streets and paths. They were precomputed once with the openrouteservice foot-walking matrix API (tools/fetch-walk-times.js) and saved to walk-times.json, so the site answers instantly and no API key is ever exposed in the browser.
For a typed address that isn't in the list, the tool falls back to a rough estimate and says so on the page:
A route is 🟢 if you arrive with at least 3 minutes to spare, 🟡 if you make it with 0–2 minutes to spare (arriving exactly on time counts as 🟡), and 🔴 if you would be late.
Sanity check: BU Housing says Peabody Hall on the Fenway Campus is "about a 15-minute walk" from main campus. The real route Peabody Hall → CAS takes 17 minutes.
What real routes changed: the old straight-line estimate was usually too pessimistic along Comm Ave (real times are about 0.87× the estimate), but too optimistic where you have to go around something. CAS → FitRec dropped from 17 to 13 minutes.
Entrances: routing snaps each point to the nearest path, which isn't always the door people use. A few buildings (e.g. MCS and PSY on Cummington Mall) have an entrance coordinate in data.json that is used for routing only.
data.json holds all dorm and building data; shapes.json holds building outlines| File | What it does |
|---|---|
index.html | Page structure: My week, dorm info and ranking, directions, map |
style.css | Layout and styling, including the phone layout |
data.json | Dorm and building data only — no logic |
shapes.json | Building outlines, generated by tools/fetch-shapes.js |
distance.js | Distance and walking-time calculations only |
geocode.js | Turns a typed address into coordinates (OpenStreetMap Nominatim) |
map.js | Everything on the map: markers, legend, route line, building outline |
app.js | Main logic: load data, read user input, calculate, rank, update the page |
walk-times.json | Real walking times and distances between every pair of listed places |
tools/fetch-walk-times.js | One-off Node script that precomputes walk-times.json (needs an openrouteservice key in .env) |
tools/fetch-shapes.js | One-off Node script that downloads building outlines from OpenStreetMap |
In the project folder, start a local web server:
python3 -m http.server 8000
Then open http://localhost:8000. (Opening index.html directly won't work, because browsers block fetch from reading local files.)
After changing how schedules are read (schedule.js, schedule-import.js), run the reader tests. They need only Node, no browser:
node tools/test-parser.js
After adding places to data.json or changing coordinates, regenerate the building outlines:
node tools/fetch-shapes.js
This is an independent student project and is not affiliated with Boston University.
© 2026 Menglu Wu. All rights reserved. The code is public so the site can be viewed and read, but it is not open source: please don't copy, reuse or redistribute it without written permission. See LICENSE.