36 Commits

Author SHA1 Message Date
Shaheer Sarfaraz
c4749b4211
feat: opinionated public DEMO_MODE with simulated/blocked actions, resets, and demo toasts (#87)
* feat(demo): add DEMO_MODE runtime helpers and /api/demo/info endpoint

* feat(demo): enforce simulated and blocked API actions under DEMO_MODE

* feat(demo): add deterministic seed dataset and 6-hour auto-reset

* feat(demo-ui): add demo banner and custom sonner toasts for simulated/blocked actions

* test+docs(demo): add demo mode coverage, behavior matrix, and operator docs

* formatting

* tests

* feat(demo): seed resets from typed baseline defaults

* formatting

* feat(demo): enrich baseline seed data and demo project catalog

* feat(demo): expand seeded applications and chart time ranges

* refactor(demo): split demo seed data from generation logic

* feat(demo): cap generated application history to 30 days

* feat(demo): rebalance generated job status distribution

* feat(demo-ui): make demo banner fixed and topmost

* minor fixes

* formatting

* duration revert

* durations

* feat(demo): share demo info hook, brighten demo toasts, and enforce webhook auth

* comment explaning

* formatting

* comments

* deadline builder comment
2026-02-05 16:04:04 +00:00
Shaheer Sarfaraz
b94f85b149
Reduce low risk duplication (#79)
* clean up helpers

* shared in it's own top level folder

* workspaces setup

* build fix

* disable workspaces?

* run ci

* rename job-flow to gradcracker

* optional dependencies

* formatting?

* more optional modules

* allow post install runs

* node bump

* remove post install

* add optionals

* add more

* formatting

* comments, but im unsure

* run typescript DIRECTLY

* better build

* camoufox simplification

* lint

* build process doesn't exist

* build fix

* lockfile

* type check everything, build only for client

* rename steps correctly

* import from package!

* fix formatting

* don't fetch twice

* fix concern
2026-02-02 21:30:14 +00:00
Shaheer Sarfaraz
179deffe13
Database backups (#75)
* initial commit

* test fix

* manual test

* copilot comments

* code quality skill

* comments

* fix types problem

* formatting

* tests now correct for new backup method

* UTC dates
2026-02-02 00:07:39 +00:00
DaKheera47
5c2eef2fc8 ran check:fix in orchestrator 2026-01-25 12:41:44 +00:00
DaKheera47
9c1252c7fd onboarding validation for each field 2026-01-22 21:29:05 +00:00
DaKheera47
58fdf6781f break up server routes into separate files 2026-01-20 06:56:42 +00:00
Shaheer Sarfaraz
1b927a13be
safer runtime assertion
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-19 19:45:26 +00:00
Shaheer Sarfaraz
5bd57c1b9f
better runtime assertion
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-19 19:45:15 +00:00
Shaheer Sarfaraz
cdf395cc01
ensure links are urls
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-19 19:44:53 +00:00
Shaheer Sarfaraz
544a5ca86f
Catch possible errors in scoring
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-19 19:31:36 +00:00
DaKheera47
b6fa1fd5ee score jobs after manual import 2026-01-19 19:11:43 +00:00
DaKheera47
4f4f00e42c manual import initial comit 2026-01-19 18:39:14 +00:00
DaKheera47
2cf9249159 gradcracker limits 2026-01-15 19:17:23 +00:00
DaKheera47
717987c5cc "rejected" isn't a thing. it's "skipped" 2026-01-15 14:06:14 +00:00
DaKheera47
383403f0ac visa sponsors page 2026-01-15 12:35:44 +00:00
DaKheera47
e54b5f2178 more jobspy settings 2026-01-11 18:15:17 +00:00
DaKheera47
5d7c394650 diff models for diff work 2026-01-11 15:30:23 +00:00
DaKheera47
0ec38773b5 job pagination 2026-01-10 23:52:36 +00:00
DaKheera47
61c73b6830 allow editing jd 2026-01-06 23:29:58 +00:00
DaKheera47
cd5ec25c3b allowing tailoring of resume before being manually built 2026-01-06 23:06:19 +00:00
DaKheera47
d6336d1bec clearing db actions in settings 2026-01-02 17:21:05 +00:00
DaKheera47
45662c386a jobspy specific settings 2025-12-27 11:28:23 +00:00
DaKheera47
572cb1d42d keywords can be set from UI 2025-12-26 22:25:55 +00:00
DaKheera47
bd7baafbec passing max ukvisajobs 2025-12-26 20:47:28 +00:00
DaKheera47
0f36d9b8a6 initial implementation 2025-12-26 20:17:05 +00:00
DaKheera47
8a236c0be9 can regenerate pdfs, because sometimes the ai gets it wrong, and we need to help it out 2025-12-17 17:48:03 +00:00
DaKheera47
43f54a708c ai chooses projects 2025-12-15 18:25:40 +00:00
DaKheera47
91b1f08000 jobcompletion webhook 2025-12-15 17:28:45 +00:00
DaKheera47
368fe60935 rename pipeline webhook to what it is 2025-12-15 17:23:11 +00:00
DaKheera47
04f771f289 can change openrouter model in UI 2025-12-15 16:12:15 +00:00
DaKheera47
4244c908e5 ensure that a "discovered" job must have a score 2025-12-15 01:19:01 +00:00
DaKheera47
cefb75a9ec job_spy implementation 2025-12-14 22:24:34 +00:00
DaKheera47
302fadb494 pdf generation fix 2025-12-11 23:15:20 +00:00
DaKheera47
f9bf790bb3 live progress for scraping 2025-12-11 23:00:00 +00:00
DaKheera47
a6a4cb9f89 clear db button 2025-12-11 22:47:45 +00:00
DaKheera47
1b082a3eb6 orchestrator initial commit... 2025-12-11 22:31:59 +00:00