Commit Graph

  • c5ef1f58ff docs(ci): say what the database cache key does, not what it means main tiennm99 2026-08-15 17:58:28 +07:00
  • 2c24943cc6 docs: describe the design the code has, not the two before it tiennm99 2026-08-15 17:35:09 +07:00
  • d8b5b66fcf feat: keep the downloaded database, and stop rebuilding it every deploy tiennm99 2026-08-14 17:52:09 +07:00
  • 4cb0a4f340 feat: download the database instead of reading it over HTTP tiennm99 2026-08-14 17:43:10 +07:00
  • cbd262e5db docs: correct the sizes the 4 KiB rebuild produced tiennm99 2026-08-14 16:58:54 +07:00
  • 175439c195 feat(web): search on submit, and show what a search cost tiennm99 2026-08-14 16:52:44 +07:00
  • c407130162 perf(db): write 4 KiB pages, because requests cost more than bytes tiennm99 2026-08-14 16:52:33 +07:00
  • 70374f1274 fix(web): bind query parameters, and set the URL without the router tiennm99 2026-08-14 16:25:24 +07:00
  • 6ab7c1f855 fix(web): read the database in chunked mode so the length can be supplied tiennm99 2026-08-14 16:01:59 +07:00
  • b62a352553 Merge pull request #13 from tiennm99/fix/httpvfs-file-length tiennm99andGitHub 2026-08-14 15:30:38 +07:00
  • aecf1a9509 docs(parser): point the page-size comment at the files that exist tiennm99 2026-08-14 15:28:11 +07:00
  • 9571fb7d55 fix(web): take the database length from a range probe, not the host tiennm99 2026-08-14 15:23:20 +07:00
  • 3fed50cf8f Merge pull request #12 from tiennm99/fix/pages-concurrency-per-ref tiennm99andGitHub 2026-08-14 14:33:45 +07:00
  • 160a20125e fix(ci): give each ref its own concurrency lane tiennm99 2026-08-14 14:25:40 +07:00
  • 9c8e3461a7 Merge pull request #11 from tiennm99/chore/actions-node24 tiennm99andGitHub 2026-08-14 14:19:07 +07:00
  • 4ba38c3d0c docs: clear the plans folder, keeping the reasoning that outlives it tiennm99 2026-08-14 14:17:51 +07:00
  • d69965a3fe fix(ci): take the Go version from go.mod tiennm99 2026-08-14 14:13:24 +07:00
  • 560877e87b chore(ci): move the actions to their node24 releases tiennm99 2026-08-14 14:10:58 +07:00
  • ec348e34bd Merge pull request #10 from tiennm99/feat/httpvfs-range-queries tiennm99andGitHub 2026-08-14 14:08:10 +07:00
  • 92d13048f2 feat(web): name the source publisher instead of printing its URL tiennm99 2026-08-14 13:59:02 +07:00
  • b38965dc4b refactor(web): drop TypeScript for plain JavaScript tiennm99 2026-08-14 13:49:52 +07:00
  • d7e2fa2d12 feat(web): trace what each query costs over the network tiennm99 2026-08-14 13:43:11 +07:00
  • dbf13d0094 perf(parser): write the databases with 1 KiB pages tiennm99 2026-08-14 13:38:44 +07:00
  • dbc23c25c5 feat: read the databases over HTTP range requests tiennm99 2026-08-14 12:42:48 +07:00
  • 873e96d482 Merge pull request #9 from tiennm99/refactor/web-sveltekit tiennm99andGitHub 2026-08-14 11:45:29 +07:00
  • 3fd137a233 refactor(web): rebuild the frontend on SvelteKit, TypeScript and Tailwind tiennm99 2026-08-14 11:38:29 +07:00
  • e2112fdb38 Merge pull request #8 from tiennm99/fix/2016-source-layouts tiennm99andGitHub 2026-08-14 10:49:46 +07:00
  • 9710524ced fix(ci): require the Go release that patches encoding/xml tiennm99 2026-08-14 10:44:26 +07:00
  • 151f2fb2cf chore(web): use a 2016 lookup example that resolves tiennm99 2026-08-14 10:39:06 +07:00
  • 219c7c6a69 fix(parser): read the two 2016 layouts that were column-shifted tiennm99 2026-08-14 10:38:59 +07:00
  • 26d0ba81ce docs: add CLAUDE.md with verification scope and the non-obvious invariants tiennm99 2026-08-14 09:44:41 +07:00
  • 933adf70c9 refactor: comments state current behavior, not project history tiennm99 2026-08-14 09:40:41 +07:00
  • c988bfafcf fix: correct the 2016 source attribution and link full article URLs tiennm99 2026-08-14 09:26:27 +07:00
  • 3995e9d864 Merge pull request #7 from tiennm99/chore/remove-js-and-dead-code tiennm99andGitHub 2026-08-14 00:08:22 +07:00
  • a0420fdc37 refactor: remove the last JS script and the dead weight three audits found tiennm99 2026-08-13 23:48:25 +07:00
  • 373bfb08fe Merge pull request #6 from tiennm99/refactor/go-parser tiennm99andGitHub 2026-08-13 23:07:17 +07:00
  • 08a408ca96 docs(plans): drop the completed migration plans tiennm99 2026-08-13 22:54:50 +07:00
  • c359a0b444 refactor: one directory per pipeline stage, and an assembler to drive them tiennm99 2026-08-13 22:50:05 +07:00
  • b04f9844f9 refactor(crawler): read the file lists from the source articles tiennm99 2026-08-13 22:05:07 +07:00
  • ceb694a747 refactor: split into web/crawler/go-parser and drop the 2017 archives tiennm99 2026-08-13 21:45:05 +07:00
  • 8530df0154 docs(plans): record the Go parser migration outcome tiennm99 2026-08-13 20:39:06 +07:00
  • 00a08d5fab refactor(parser): remove the Rust crate now that Go is at parity tiennm99 2026-08-13 20:38:25 +07:00
  • 0eb174721d refactor(parser): reimplement the parser in Go alongside the Rust crate tiennm99 2026-08-13 20:27:44 +07:00
  • 8902232747 Merge pull request #5 from tiennm99/refactor/unify-frontend-and-schema tiennm99andGitHub 2026-08-13 14:38:55 +07:00
  • 3fcfe4862d docs: rewrite for the unified repo and record the parity gate tiennm99 2026-08-13 13:25:46 +07:00
  • a5904a5d78 build: produce the whole site from one Vite build tiennm99 2026-08-13 11:57:26 +07:00
  • 003e7c8afd style(frontend): document the four one-shot setState-in-effect sites tiennm99 2026-08-13 11:48:31 +07:00
  • 83bbc597ce feat(frontend): serve all four datasets and the hub from one app tiennm99 2026-08-13 11:37:59 +07:00
  • 6ff2ed99ec refactor: collapse the two projects into one tree and move to npm tiennm99 2026-08-13 11:27:01 +07:00
  • 82db8295bb style(parser): clear pre-existing clippy warnings tiennm99 2026-08-13 11:16:51 +07:00
  • cd4b07f9cb refactor(parser): define one canonical student schema for all datasets tiennm99 2026-08-13 11:16:24 +07:00
  • 944ee14b36 chore: merge the 2016 and 2017 lookups into one repository and one Pages site tiennm99 2026-08-13 09:36:56 +07:00
  • cf39bbd45c chore(deps-dev): bump vite from 8.0.12 to 8.0.16 (#3)
    dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    2026-07-25 15:27:31 +07:00
  • 5b3a946ad1 chore(deps-dev): bump vite from 8.0.12 to 8.0.16 (#3)
    dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    2026-07-25 15:23:46 +07:00
  • 8df6f2d46b chore: remove dependabot version-update config tiennm99 2026-07-25 14:13:59 +07:00
  • 447796aacf chore: remove dependabot version-update config tiennm99 2026-07-25 14:13:37 +07:00
  • f5d56b4273 chore: add dependabot config (#2) tiennm99andGitHub 2026-05-23 11:43:29 +07:00
  • 79a8a73cde chore: add dependabot config (#2) tiennm99andGitHub 2026-05-23 11:43:25 +07:00
  • 6b21c625ac feat: replace xlsx (SheetJS) build pipeline with Rust xlsxread CLI (#1) tiennm99andGitHub 2026-05-19 16:33:20 +07:00
  • 99465fda59 feat: replace xlsx (SheetJS) build pipeline with Rust xlsxread CLI (#1) tiennm99andGitHub 2026-05-19 16:33:16 +07:00
  • 5b0cec3b27 chore(ci): bump node to 24 tiennm99 2026-05-13 10:52:42 +07:00
  • b5bd88bfbb chore(ci): bump node to 24 tiennm99 2026-05-13 10:52:39 +07:00
  • 12c41c747e fix(ci): approve better-sqlite3 build via pnpm-workspace.yaml allowBuilds tiennm99 2026-05-13 10:39:20 +07:00
  • a132847cda fix(ci): approve better-sqlite3 build via pnpm-workspace.yaml allowBuilds tiennm99 2026-05-13 10:39:17 +07:00
  • b3b71f577c fix(ci): bump Node.js to 22 required by pnpm@11.1.1 tiennm99 2026-05-13 10:34:03 +07:00
  • 75201ab06a fix(ci): bump Node.js to 22 required by pnpm@11.1.1 tiennm99 2026-05-13 10:33:59 +07:00
  • 37cee58171 fix(ci): remove pnpm version override conflicting with packageManager tiennm99 2026-05-13 10:29:03 +07:00
  • 8732ee138d fix(ci): remove pnpm version override conflicting with packageManager tiennm99 2026-05-13 10:28:59 +07:00
  • eb7409a503 chore: migrate from npm to pnpm tiennm99 2026-05-13 10:20:34 +07:00
  • 08e55d98b1 chore: migrate from npm to pnpm tiennm99 2026-05-13 10:20:29 +07:00
  • 5bdcc01f60 docs: note original data source URL (now inaccessible) tiennm99 2026-04-14 23:33:15 +07:00
  • 5ffc26f177 docs: note data/ source URL; mark data-old/ and data-old2/ origin unrecorded tiennm99 2026-04-14 23:30:12 +07:00
  • 2c7ded1f39 docs: expand README and add project documentation tiennm99 2026-04-14 23:28:56 +07:00
  • 76ea795910 docs: translate narrative prose to English in README and docs/ tiennm99 2026-04-14 23:28:55 +07:00
  • 8ca6bfa7a8 docs: expand README, add architecture / deployment / data-pipeline docs tiennm99 2026-04-14 23:25:51 +07:00
  • 1940e8936d tweak: Long An best-block preset → top 10 instead of top 100 tiennm99 2026-04-14 23:19:36 +07:00
  • c4f043ab7a feat: full 49-block admission catalog + winning-block label in top-100 query tiennm99 2026-04-14 23:17:58 +07:00
  • a5213c8667 feat: add 'Top 100 điểm khối cao nhất - Long An' SQL preset tiennm99 2026-04-14 23:11:01 +07:00
  • d1410a4729 style: TFT rarity-ladder score tiers (6 levels, unique hues) tiennm99 2026-04-14 23:03:08 +07:00
  • 1d84148bc5 tweak: reduce Long An khối A preset from top 100 to top 10 tiennm99 2026-04-14 22:51:48 +07:00
  • f818003c3e feat: deep-link, share, score legend, web font, grouped SQL presets tiennm99 2026-04-14 22:44:00 +07:00
  • 8cfc9116fb feat: Long An SQL presets, clickable search examples tiennm99 2026-04-14 22:21:54 +07:00
  • 8a43f7214f chore: remove completed static-score-lookup plan (fully implemented) tiennm99 2026-04-14 22:13:20 +07:00
  • f82542f764 feat: build 3 parallel site variants, one per dataset tiennm99 2026-04-14 22:12:25 +07:00
  • 4dd376b921 chore: preserve prior update/ overrides in data-old2/ tiennm99 2026-04-14 21:46:42 +07:00
  • 3ad0104565 feat: refresh data from baotintuc.vn source, fix overflow sheet loss tiennm99 2026-04-14 21:42:29 +07:00
  • c832810b78 feat: live search, student detail card, score tier color coding tiennm99 2026-04-14 21:21:46 +07:00
  • d968459b9d refactor: rename assets/ to data/ for raw Excel inputs tiennm99 2026-04-14 21:20:10 +07:00
  • e165e3c5b6 refactor: flatten data layout to data/, drop update/ overrides tiennm99 2026-04-14 21:02:47 +07:00
  • c1cd39e535 feat(ui): refresh styling with design tokens, dark mode, and a11y polish tiennm99 2026-04-14 20:50:57 +07:00
  • 641d0ed05a chore: remove duplicate Excel files, add md5 audit script tiennm99 2026-04-14 20:49:41 +07:00
  • 97519b4b78 feat: diacritics-insensitive search and SQL query tab tiennm99 2026-04-14 20:44:43 +07:00
  • f885aeb6cc feat: add diacritics-insensitive name search tiennm99 2026-04-14 20:15:20 +07:00
  • 4aa1f5bd2f update README with features, demo link, and dev instructions tiennm99 2026-04-14 20:07:23 +07:00
  • 372f1e04fb feat: add GitHub Pages app with custom SQL query support tiennm99 2026-04-14 20:05:38 +07:00
  • d81ed19a2c feat: add exam result data files for THPT QG 2016 tiennm99 2026-04-14 19:06:11 +07:00
  • 2ff1f8b45d Initial commit tiennm99andGitHub 2026-04-14 19:02:17 +07:00
  • b9e16f63f8 refactor: remove Java code, move web app to project root tiennm99 2026-04-13 00:06:22 +07:00
  • 00148c2748 feat: add implementation plans and Vite scaffold files tiennm99 2026-04-13 00:00:43 +07:00
  • 2bed92547b feat: add static score lookup site with Node.js DB builder tiennm99 2026-04-12 23:54:06 +07:00