hussainweb
70f8afd294
Add RXRESUME_URL to .env.example ( fixes #224 ) ( #229 )
2026-02-23 07:10:29 +00:00
Shaheer Sarfaraz
5ed74bb59c
Tracer links ( #174 )
...
* initial commit
* format links right
jobops.dakheera47.com/cv/shaheer-google-de
* don't support legacy
* remove phishing look
* smaller links
* readiness check in settings
* rework UX
* right col
* pop a modal
* modal improvements
* show links
* documentation disclaimer
* fix(tracer-links): preserve descriptive resume link labels
* fix(tracer-links): classify bot user agents before browser families
* fix(tracer-links): reject non-http redirect destinations
* fix(tracer-redirect): disable caching for tracked redirects
* fix(origin): prefer canonical public base url over forwarded headers
* fix(auth): protect tracer analytics routes behind basic auth
* fix(ui): rename misleading tracer drilldown human metric
* style(tests): format tracer-links invalid-destination assertion
* fix(tests): prevent mocked fs from breaking sqlite data-dir resolution
* style(docs): format versioned docs json for biome
* fix(tests): mock tracer-links in pdf skills validation suite
2026-02-18 22:05:15 +00:00
Shaheer Sarfaraz
c5c6675f04
feat: add Adzuna extractor with orchestrator integration ( #177 )
...
* feat(settings): add adzuna source fields and country compatibility
* feat(discovery): integrate adzuna extractor into pipeline
* feat(client): wire adzuna in source selection and run budgeting
* docs(extractors): add adzuna guide and configuration notes
* chore(workspaces): register adzuna extractor in lockfile
* fix(adzuna): run extractor via npm script instead of npx
* fix(adzuna): execute extractor via node+tsx without shell
* fix(adzuna): prefer npm run start without shell, fallback to tsx
* fix(docker): include adzuna extractor workspace in image
* chore(adzuna): reuse shared type-conversion utilities
* type-check adzuna
* formatting
* deeedooop
* better instructions
2026-02-17 16:49:42 +00:00
Shaheer Sarfaraz
687fd5e91f
feat(post-application): automatically pull from email ( #145 )
...
* feat(post-application): add schema and shared types for provider ingestion (#136 )
* test(orchestrator): ensure full localStorage shape in vitest setup
* feat(post-application): add provider registry and dispatcher framework (#137 ) (#146 )
* Implement Gmail provider credential persistence (#147 )
* Add unified post-application provider action API (#148 )
* Implement Gmail ingestion sync with 95/60 relevance policy
* Implement Gmail ingestion sync with 95/60 relevance policy (#149 )
* feat(post-application): add job mapping engine with llm rerank fallback
* feat(post-application): add inbox review APIs with transactional approve/deny (#151 )
* feat(post-application): add tracking inbox UI with provider controls (#152 )
* oauth implementation
* UI changes
* see past runs in more detail
* occurred at comes from email
* state mismatch
* better UI representation
* comments
* comments
* comments
* comments
* documentation
* explainer
* set things manually
* scrolling
* any found email can be pending
* searchable download
* Email-to-Job Matching Decision Tree
* email viewer list improvement
* simplification initial commit
* exclude discovered jobs
* show only resady
* dropdown
* mermaid
* syntax
* targets is the same as logging that is done manually
* event label
* duplicate avoidance
* clean up html
* token saving
* print
* send idx not uuid
* remove logging
* formatting
* better documentation
* documentation
* comments
* process all
* comments
2026-02-12 19:48:25 +00:00
Devin Collins
65952259ce
feat: add remote jobs filter for JobSpy ( #70 )
...
* feat(types): add jobspyIsRemote to TypeScript type definitions
- Add jobspyIsRemote boolean fields to AppSettings interface
- Follow three-field pattern: value, default, override
- Update test fixture with default values (false)
* feat(validation): add jobspyIsRemote validation schema
Add Zod validation schema for jobspyIsRemote boolean setting to ensure type safety in the settings API endpoint.
* feat(db): add jobspyIsRemote to database repository setting keys
* feat(api): add jobspyIsRemote storage to settings API route
* feat(service): add jobspyIsRemote to settings service with environment variable support
* feat(jobspy): add isRemote parameter to JobSpy service interface
* feat(pipeline): pass isRemote setting to JobSpy service
* feat(python): add is_remote parameter to JobSpy scraper script
* feat(ui): add Remote Jobs checkbox to JobSpy settings
* feat(ui): add Remote badge to job display
- Display Remote badge when job.isRemote === true
- Position badge next to Source badge in JobHeader
- Use Badge component with outline variant
- Badge does not display when isRemote is false or null
* docs(env): add JOBSPY_IS_REMOTE environment variable documentation
- Added JobSpy section to .env.example with JOBSPY_IS_REMOTE variable
- Documents remote-only job filtering option with default value of 0 (disabled)
- Follows existing .env.example format with clear section headers and descriptions
* test(remote-jobs): verify end-to-end functionality with comprehensive feedback loops
2026-01-31 16:48:17 +00:00
DaKheera47
8e56378794
documentation update
2026-01-29 16:46:01 +00:00
DaKheera47
edfad499a6
better default model, better comment
2026-01-21 12:11:16 +00:00
DaKheera47
0eba05a1dd
[HOTFIX] update base url to ensure pdf generation keeps working on reactive resume v4
2026-01-20 18:15:21 +00:00
DaKheera47
9dd8e1432b
readonly mode
2026-01-16 01:33:43 +00:00
DaKheera47
2b2af06bb8
autologin for ukvisajobs
2026-01-07 23:53:01 +00:00
DaKheera47
2d92397b9a
cleanup env
2025-12-27 11:18: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
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
cefb75a9ec
job_spy implementation
2025-12-14 22:24:34 +00:00
DaKheera47
051c09d943
Dockerization :)
2025-12-11 23:56:07 +00:00