Math tracker (/trackers/math): Evan Chen's Napkin, chapter by chapter
Deploy production / deploy (push) Failing after 9s
Deploy production / deploy (push) Failing after 9s
Schema math (parts, chapters, sections, activity), seeded with all 100 chapters (Ch 0-94, appendix A-E), 647 sections, PDF pages, exercise counts and approximate prereqs. Triggers stamp started_at/completed_at and log status/exercise/note/section changes; math.apply_progress(jsonb) applies the JSON format bots send. Private by default via MATH_PRIVATE in #lib/math (owner-only prefix + lock in every tracker list). Overall + per-part progress, current chapter, prereq hints, quick status buttons, exercises stepper, notes, optional section ticks, activity log, dependency chart. Deploy preflight checks the math schema (4 tables, 100 chapters).
This commit is contained in:
1 parent
23a43049a0
commit
d99245e9fc
16 files changed
+45741
-4
No files matched your search
@@ -1,4 +1,5 @@
|
||||
import { error } from '@sveltejs/kit';
|
||||
import { MATH_PRIVATE } from '#lib/math.js';
|
||||
|
||||
// The site has exactly one owner: Stan's account (prod auth.user id tfn6OZDOpiQvMARIH65HQ2XJuaVvmGEe).
|
||||
// Owner-only data, such as the health tracker, is gated on that account's email, not on
|
||||
@@ -38,7 +39,9 @@ export const ownerOnlyPrefixes = [
|
||||
'/api/spotify',
|
||||
// Worldwide todo list: the list is public, the review queue and its API are mine only.
|
||||
'/projects/worldwide-todo/queue',
|
||||
'/projects/worldwide-todo/api/queue'
|
||||
'/projects/worldwide-todo/api/queue',
|
||||
// Math tracker (the Napkin): owner-only while MATH_PRIVATE (#lib/math) is on.
|
||||
...(MATH_PRIVATE ? (['/trackers/math'] as const) : [])
|
||||
] as const;
|
||||
|
||||
/**
|
||||
@@ -67,7 +70,8 @@ export const ownerWritePrefixes = [
|
||||
'/trackers/pc',
|
||||
'/trackers/notes',
|
||||
'/trackers/ai',
|
||||
'/trackers/movies'
|
||||
'/trackers/movies',
|
||||
'/trackers/math'
|
||||
] as const;
|
||||
|
||||
const normalise = (pathname: string) => pathname.toLowerCase().replace(/\/+$/, '');
|
||||
|
||||
Reference in new issue
Block a user