Skip to content
1 viewer

rust 1,854,448 · typescript 233,181 · javascript 132,491 · python 19,572 · 6,381 files · digest 17250db9be6a · built in 2.2 s · crystals off

cre8-app-schedule schedule cargo crate

ScheduleApp — temporal coordination: reservations, conflict detection, recurrence, availability, free-slot search, plus the Booking.* public booking surface (meeting types, working hours, guardrails, invitee self-service). (2026-06-01).

crates/cre8-app-schedule · level 18 · 44,163 lines (37,416 code) · 64 files · 1,906 fns (532 tests) · cyclomatic Σ 5,296

23workspace deps
4direct dependents
28transitive dependents
778calls out
47calls in
1755call-graph weight
0.0%exact crystals

Neighbourhood

Left: crates that declare this one. Right: crates it declares (dev-dependencies included). Edge width grows with resolved calls.

normal dep · 40 callsnormal dep · 1 callsnormal dep · 32 callsnormal dep · 5 callsnormal dep · 23 callsnormal dep · 8 callsnormal dep · 225 callsnormal dep · 1 callsnormal dep · 2 callsnormal dep · 35 callsnormal dep · 69 callsnormal dep · 98 callsnormal dep · 61 callsnormal dep · 6 callsnormal dep · 1 callsnormal dep · 6 callsnormal dep · 0 callsnormal dep · 5 callsnormal dep · 83 callsnormal dep · 37 callsnormal dep · 5 callsnormal dep · 21 callsnormal dep · 1 callsnormal dep · 50 callsnormal dep · 4 callsnormal dep · 6 callsnormal dep · 0 callsdev dep · 0 calls · never namedapp-scheduleL18 · 37,416 linescre8-app-scheduleapp-eventL19 · 14,197 linescre8-app-eventapp-legislationL20 · 5,309 linescre8-app-legislationapp-googleL9 · 2,588 linescre8-app-googleapp-manifoldL9 · 18,864 linescre8-app-manifoldapp-passport-modelL4 · 2,418 linescre8-app-passport-modelapp-paymentL17 · 9,147 linescre8-app-paymentapp-protocolL8 · 25,233 linescre8-app-protocolapp-shop-apiL6 · 77 linescre8-app-shop-apiapp-shop-modelL5 · 916 linescre8-app-shop-modelapp-truthL6 · 20,464 linescre8-app-truthapp-view-libL7 · 87,064 linescre8-app-view-libplatform-timeL3 · 65 linescre8-platform-timeruntime-app-typesL5 · 2,860 linescre8-runtime-app-typesruntime-contractsL0 · 6,077 linescre8-runtime-contractsruntime-coreL2 · 747 linescre8-runtime-coreruntime-dispatch-apiL6 · 496 linescre8-runtime-dispatch-apiruntime-hostL1 · 1,649 linescre8-runtime-hostutil-cryptoL3 · 749 linescre8-util-cryptoutil-graph-vertexL0 · 173 linescre8-util-graph-vertexutil-icalL0 · 3,058 linescre8-util-icalutil-jsonL0 · 296 linescre8-util-jsonutil-secretL0 · 109 linescre8-util-secretutil-textL0 · 37 linescre8-util-textutil-view-htmlL0 · 1,660 linescre8-util-view-htmlplatform-httpL3 · 852 linescre8-platform-httpapp-taskL20 · 5,124 linescre8-app-taskruntime-app-catalogL27 · 676 linescre8-runtime-app-catalogruntime-test-suiteL0 · 0 linescre8-runtime-test-suite

Files

lowhigh
crates/cre8-app-schedule/src/app.rs · 1,944 lines · 18 fnsapp.rscrates/cre8-app-schedule/src/assets/booking_page.js · 346 lines · 23 fnsbooking…crates/cre8-app-schedule/src/assets/console_page.js · 687 lines · 42 fnsconsole_page.jscrates/cre8-app-schedule/src/assets/customer_bookings.js · 24 lines · 2 fnscrates/cre8-app-schedule/src/assets/manage_page.js · 274 lines · 13 fnsmanage_…crates/cre8-app-schedule/src/assets/session_history.js · 70 lines · 6 fnscrates/cre8-app-schedule/src/assets/session_packages.js · 104 lines · 5 fnscrates/cre8-app-schedule/src/booking.rs · 1,827 lines · 129 fnsbooking.rscrates/cre8-app-schedule/src/booking_calendar.rs · 198 lines · 19 fnscrates/cre8-app-schedule/src/booking_connection.rs · 3,919 lines · 160 fnsbooking_connection.rscrates/cre8-app-schedule/src/booking_connection/host_alert.rs · 86 lines · 4 fnscrates/cre8-app-schedule/src/booking_connection/lifecycle_tests.rs · 445 lines · 26 fnslifecycle_…crates/cre8-app-schedule/src/booking_connection/reminders.rs · 313 lines · 22 fnsreminde…crates/cre8-app-schedule/src/booking_connection/tests.rs · 1,902 lines · 83 fnstests.rscrates/cre8-app-schedule/src/calendar.rs · 212 lines · 19 fnscalend…crates/cre8-app-schedule/src/calendar_connection.rs · 579 lines · 22 fnscalendar_con…crates/cre8-app-schedule/src/calendar_views.rs · 977 lines · 44 fnscalendar_views.rscrates/cre8-app-schedule/src/calendar_views/tests.rs · 385 lines · 26 fnstests.rscrates/cre8-app-schedule/src/calendars/connection.rs · 577 lines · 23 fnsconnection…crates/cre8-app-schedule/src/calendars/events.rs · 425 lines · 22 fnsevents.rscrates/cre8-app-schedule/src/calendars/mod.rs · 105 lines · 3 fnscrates/cre8-app-schedule/src/calendars/store.rs · 326 lines · 32 fnsstore.rscrates/cre8-app-schedule/src/calendars/tests.rs · 549 lines · 27 fnstests.rscrates/cre8-app-schedule/src/calendars/wire.rs · 248 lines · 12 fnswire.rscrates/cre8-app-schedule/src/connection.rs · 1,902 lines · 97 fnsconnection.rscrates/cre8-app-schedule/src/contract.rs · 66 lines · 5 fnscrates/cre8-app-schedule/src/customer.rs · 242 lines · 9 fnscustome…crates/cre8-app-schedule/src/customer/tests.rs · 184 lines · 10 fnscrates/cre8-app-schedule/src/e2e_tests.rs · 448 lines · 29 fnse2e_tests.…crates/cre8-app-schedule/src/google_calendar.rs · 325 lines · 22 fnsgoogle_…crates/cre8-app-schedule/src/ical.rs · 653 lines · 48 fnsical.rscrates/cre8-app-schedule/src/init.rs · 5 lines · 1 fnscrates/cre8-app-schedule/src/lib.rs · 57 lines · 0 fnscrates/cre8-app-schedule/src/model.rs · 703 lines · 61 fnsmodel.rscrates/cre8-app-schedule/src/outcome.rs · 328 lines · 18 fnsoutcome…crates/cre8-app-schedule/src/pay_step.rs · 161 lines · 17 fnscrates/cre8-app-schedule/src/practice/connection.rs · 813 lines · 28 fnsconnection.rscrates/cre8-app-schedule/src/practice/mod.rs · 31 lines · 0 fnscrates/cre8-app-schedule/src/practice/model.rs · 395 lines · 27 fnsmodel.rscrates/cre8-app-schedule/src/practice/projection.rs · 200 lines · 11 fnscrates/cre8-app-schedule/src/practice/tests.rs · 425 lines · 26 fnstests.rscrates/cre8-app-schedule/src/practice/view_tests.rs · 337 lines · 19 fnsview_te…crates/cre8-app-schedule/src/practice/views.rs · 1,214 lines · 54 fnsviews.rscrates/cre8-app-schedule/src/practice/waitlist.rs · 551 lines · 25 fnswaitlist.rscrates/cre8-app-schedule/src/practice/waitlist_tests.rs · 261 lines · 15 fnswaitlis…crates/cre8-app-schedule/src/public_meetings.rs · 234 lines · 12 fnspublic_…crates/cre8-app-schedule/src/session_credits.rs · 212 lines · 12 fnscrates/cre8-app-schedule/src/session_credits/activity.rs · 128 lines · 5 fnscrates/cre8-app-schedule/src/session_credits/ledger.rs · 74 lines · 8 fnscrates/cre8-app-schedule/src/session_credits/tests.rs · 99 lines · 7 fnscrates/cre8-app-schedule/src/site_attribution.rs · 102 lines · 3 fnscrates/cre8-app-schedule/src/slots.rs · 770 lines · 59 fnsslots.rscrates/cre8-app-schedule/src/sync/caldav.rs · 1,349 lines · 76 fnscaldav.rscrates/cre8-app-schedule/src/sync/connection.rs · 1,206 lines · 45 fnsconnection.rscrates/cre8-app-schedule/src/sync/google.rs · 602 lines · 34 fnsgoogle.rscrates/cre8-app-schedule/src/sync/ics.rs · 169 lines · 5 fnscrates/cre8-app-schedule/src/sync/microsoft.rs · 1,234 lines · 63 fnsmicrosoft.rscrates/cre8-app-schedule/src/sync/mirror.rs · 329 lines · 14 fnsmirror.…crates/cre8-app-schedule/src/sync/mod.rs · 609 lines · 52 fnsmod.rscrates/cre8-app-schedule/src/sync/push.rs · 580 lines · 20 fnspush.rscrates/cre8-app-schedule/src/sync/test_support.rs · 203 lines · 20 fnscrates/cre8-app-schedule/src/tz.rs · 243 lines · 29 fnstz.rscrates/cre8-app-schedule/src/view_templates.rs · 2,483 lines · 81 fnsview_templates.rscrates/cre8-app-schedule/src/view_templates/tests.rs · 967 lines · 57 fnstests.rs

File call graph

Resolved calls between this crate's files, callers left of callees. Showing the 48 of 58 files most involved in calls.

1 calls1 calls1 calls1 calls1 calls1 calls2 calls1 calls3 calls9 calls6 calls6 calls156 calls3 calls1 calls1 calls2 calls1 calls3 calls2 calls11 calls4 calls5 calls1 calls7 calls6 calls4 calls7 calls2 calls59 calls2 calls14 calls1 calls2 calls42 calls100 calls3 calls1 calls7 calls2 calls16 calls9 calls3 calls1 calls1 calls2 calls2 calls4 calls8 calls2 calls1 calls1 calls15 calls4 calls27 calls10 calls2 calls3 calls3 calls5 calls31 calls5 calls10 calls1 calls2 calls9 calls10 calls2 calls1 calls7 calls9 calls1 calls2 calls15 calls7 calls8 calls12 calls46 calls24 calls3 calls22 calls12 calls6 calls1 calls1 calls12 calls57 calls1 calls1 calls7 calls8 calls3 calls10 calls2 calls4 calls10 calls20 calls3 calls14 calls14 calls1 calls12 calls8 calls3 calls1 calls1 calls1 calls7 calls2 calls13 calls14 calls2 calls1 calls2 calls18 calls4 calls1 calls8 calls13 calls1 calls2 calls7 calls1 calls9 calls1 calls13 calls7 calls2 calls11 calls16 calls2 calls1 calls1 calls40 calls15 calls5 calls1 calls4 calls1 calls8 calls1 calls1 calls1 calls6 calls1 calls14 calls4 calls10 calls1 calls8 calls4 calls1 calls58 calls8 calls2 calls3 calls1 calls7 calls1 calls2 calls3 calls25 calls17 calls4 calls2 calls14 calls1 calls1 calls1 calls2 calls3 calls6 calls5 calls8 calls25 calls6 calls3 calls8 calls2 calls10 calls13 calls1 calls13 calls7 calls62 calls2 calls37 calls1 calls6 calls1 calls1 calls1 calls1 calls2 calls3 calls3 calls6 calls8 calls3 calls2 calls3 calls9 calls2 calls20 calls27 calls1 calls3 calls16 calls1 calls6 calls2 calls4 calls4 calls2 calls4 calls1 calls2 calls46 calls5 calls2 calls44 calls2 calls1 calls1 calls1 calls1 calls1 calls5 calls2 calls2 calls2 calls2 calls19 calls29 calls4 calls1 calls7 calls4 calls109 callsbooking.rsbookingcrates/cre8-app-schedule/src/booking.rs · 479 call sites in/outbooking_connection.rsbooking_connectioncrates/cre8-app-schedule/src/booking_connection.rs · 362 call sites in/outtests.rsbooking_connection::testscrates/cre8-app-schedule/src/booking_connection/tests.rs · 216 call sites in/outview_templates.rsview_templatescrates/cre8-app-schedule/src/view_templates.rs · 204 call sites in/outtests.rscalendars::testscrates/cre8-app-schedule/src/calendars/tests.rs · 182 call sites in/outconnection.rssync::connectioncrates/cre8-app-schedule/src/sync/connection.rs · 173 call sites in/outtz.rstzcrates/cre8-app-schedule/src/tz.rs · 155 call sites in/outtests.rsview_templates::testscrates/cre8-app-schedule/src/view_templates/tests.rs · 154 call sites in/outmod.rssynccrates/cre8-app-schedule/src/sync/mod.rs · 150 call sites in/outtests.rspractice::testscrates/cre8-app-schedule/src/practice/tests.rs · 149 call sites in/outmodel.rsmodelcrates/cre8-app-schedule/src/model.rs · 146 call sites in/outstore.rscalendars::storecrates/cre8-app-schedule/src/calendars/store.rs · 115 call sites in/outtest_support.rssync::test_supportcrates/cre8-app-schedule/src/sync/test_support.rs · 105 call sites in/outconnection.rsconnectioncrates/cre8-app-schedule/src/connection.rs · 100 call sites in/outpush.rssync::pushcrates/cre8-app-schedule/src/sync/push.rs · 88 call sites in/outtests.rscalendar_views::testscrates/cre8-app-schedule/src/calendar_views/tests.rs · 85 call sites in/outevents.rscalendars::eventscrates/cre8-app-schedule/src/calendars/events.rs · 84 call sites in/outmicrosoft.rssync::microsoftcrates/cre8-app-schedule/src/sync/microsoft.rs · 81 call sites in/outcaldav.rssync::caldavcrates/cre8-app-schedule/src/sync/caldav.rs · 75 call sites in/outmodel.rspractice::modelcrates/cre8-app-schedule/src/practice/model.rs · 74 call sites in/outlifecycle_tests.rsbooking_connection::lifecycle_t…crates/cre8-app-schedule/src/booking_connection/lifecycle_tests.rs · 71 call sites in/outwaitlist_tests.rspractice::waitlist_testscrates/cre8-app-schedule/src/practice/waitlist_tests.rs · 70 call sites in/outconnection.rscalendars::connectioncrates/cre8-app-schedule/src/calendars/connection.rs · 69 call sites in/outconnection.rspractice::connectioncrates/cre8-app-schedule/src/practice/connection.rs · 63 call sites in/outcalendar_views.rscalendar_viewscrates/cre8-app-schedule/src/calendar_views.rs · 62 call sites in/outview_tests.rspractice::view_testscrates/cre8-app-schedule/src/practice/view_tests.rs · 62 call sites in/outviews.rspractice::viewscrates/cre8-app-schedule/src/practice/views.rs · 62 call sites in/outslots.rsslotscrates/cre8-app-schedule/src/slots.rs · 58 call sites in/oute2e_tests.rse2e_testscrates/cre8-app-schedule/src/e2e_tests.rs · 52 call sites in/outsession_credits.rssession_creditscrates/cre8-app-schedule/src/session_credits.rs · 44 call sites in/outcustomer.rscustomercrates/cre8-app-schedule/src/customer.rs · 42 call sites in/outwire.rscalendars::wirecrates/cre8-app-schedule/src/calendars/wire.rs · 40 call sites in/outprojection.rspractice::projectioncrates/cre8-app-schedule/src/practice/projection.rs · 39 call sites in/outwaitlist.rspractice::waitlistcrates/cre8-app-schedule/src/practice/waitlist.rs · 39 call sites in/outgoogle.rssync::googlecrates/cre8-app-schedule/src/sync/google.rs · 39 call sites in/outmirror.rssync::mirrorcrates/cre8-app-schedule/src/sync/mirror.rs · 39 call sites in/outcalendar_connection.rscalendar_connectioncrates/cre8-app-schedule/src/calendar_connection.rs · 35 call sites in/outtests.rscustomer::testscrates/cre8-app-schedule/src/customer/tests.rs · 30 call sites in/outtests.rssession_credits::testscrates/cre8-app-schedule/src/session_credits/tests.rs · 28 call sites in/outics.rssync::icscrates/cre8-app-schedule/src/sync/ics.rs · 27 call sites in/outbooking_calendar.rsbooking_calendarcrates/cre8-app-schedule/src/booking_calendar.rs · 25 call sites in/outreminders.rsbooking_connection::reminderscrates/cre8-app-schedule/src/booking_connection/reminders.rs · 22 call sites in/outical.rsicalcrates/cre8-app-schedule/src/ical.rs · 22 call sites in/outcalendar.rscalendarcrates/cre8-app-schedule/src/calendar.rs · 19 call sites in/outpay_step.rspay_stepcrates/cre8-app-schedule/src/pay_step.rs · 18 call sites in/outapp.rsappcrates/cre8-app-schedule/src/app.rs · 11 call sites in/outactivity.rssession_credits::activitycrates/cre8-app-schedule/src/session_credits/activity.rs · 11 call sites in/outgoogle_calendar.rsgoogle_calendarcrates/cre8-app-schedule/src/google_calendar.rs · 10 call sites in/out

Heaviest functions

By call-graph weight (PageRank; 1.0 is the average function). 1,906 functions in all.

functionkindlinescyclomaticcallerscalleesweightcrystal
days_from_civilsrc/calendars/events.rs:58fn9224017.8
try_connectsrc/booking_connection.rs:442fn20632516.5
slugifysrc/booking.rs:127fn3119114.8
BookingType::newsrc/booking.rs:711method51158312.9
Booking::newsrc/booking.rs:1523method5516239
callsrc/booking_connection/tests.rs:40fn315318.3
HostZone::utcsrc/tz.rs:75method313007.4
HourRule::newsrc/booking.rs:143method311407.1
format_offset_namesrc/tz.rs:210fn52406.6
HostZone::minute_of_daysrc/tz.rs:167method711306.5
BookingType::is_pricedsrc/booking.rs:823method311106.5
url_originsrc/sync/caldav.rs:262fn81406.4
HostZone::day_indexsrc/tz.rs:112method712516.2
definesrc/booking_connection/tests.rs:20fn1113625.4
HostZone::fixedsrc/tz.rs:69method51615.3
derive_booking_type_idsrc/booking.rs:72fn51415.3
normalize_booking_typesrc/booking.rs:977fn91221995.3
HostZone::resolvesrc/tz.rs:58method933115.2
sample_typesrc/view_templates/tests.rs:19fn813335
HostZone::local_textsrc/tz.rs:184method922314.9
parse_icalsrc/ical.rs:72fn1211024.9
contextsrc/booking_connection/tests.rs:6fn314624.9
write_opsrc/session_credits.rs:24fn102514.9
HostZone::clocksrc/tz.rs:176method41114.7
connectsrc/connection.rs:473fn3297114.6
default_hourssrc/booking.rs:154fn31214.6
HostZone::weekday_of_daysrc/tz.rs:122method1121404.5
derive_reservation_idsrc/model.rs:38fn51504.5
Booking::holds_slotsrc/booking.rs:1631method331134.4
verified_callersrc/booking_connection.rs:513fn311904.4
available_slots_pooledsrc/slots.rs:104fn254434.3
parse_iso_datesrc/booking_connection.rs:87fn15171614.3
Reservation::newsrc/model.rs:437method2912214.2
list_bookingssrc/booking.rs:1752fn511324.2
future_mondaysrc/booking_connection/tests.rs:11fn825034.2
calendar_id_forsrc/calendars/store.rs:269fn31404
normalize_practicesrc/practice/model.rs:371fn9213474
trimmedsrc/calendars/connection.rs:128fn311204
list_reservationssrc/model.rs:532fn311623.8
is_known_zonesrc/tz.rs:218fn421403.8

Outside the workspace

anyhow hyperdb jiff quick-xml serde serde_json sha2