尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Smart Job Seeker - AI 協助的求職與申請管理平台。建立個人檔案,與職缺比對,並使用 AI 管理申請。開源 SvelteKit + PostgreSQL 網頁軟體。
AI 翻譯
Smart Job Seeker - AI-assisted job-search and application-management platform. Build a profile, match it against jobs, and manage applications with AI. Open-source SvelteKit + PostgreSQL web app.
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
An intelligent job-search and application-management platform: create a detailed profile once, automatically match it against job listings, and manage your entire application process with AI assistance. This repository is the open-source web application — the SvelteKit app, database, matching engine, and AI features. It is one part of a larger product; the actual job-scraping engine is a separate, closed-source component (see Project components below). Smart Job Seeker is built from several components. This repo is the open one: [README 설치·사용 부분 발췌] Quick start檢視完整 README ↗
An intelligent job-search and application-management platform: create a detailed profile once, automatically match it against job listings, and manage your entire application process with AI assistance.
This repository is the open-source web application — the SvelteKit app, database, matching engine, and AI features. It is one part of a larger product; the actual job-scraping engine is a separate, closed-source component (see Project components below).
Smart Job Seeker is built from several components. This repo is the open one:
| Component | Open? | What it does |
|---|---|---|
| Web app (this repository) | ✅ open source (GPLv3) | SvelteKit app + PostgreSQL: profiles & portfolio, job and application management, AI writing features, profile↔job matching, and the dashboard that schedules and queues scraping runs. |
| Device client | ✅ open source — sjs-browser, sjs-desktop | Runs a real browser on your own device and connects to the SJS servers to receive navigation instructions, which it executes locally against the job sites (CDP bridge, stealth, live view). sjs-browser is a headless/Docker build; sjs-desktop is a Tauri desktop app. Both are separate public repos. |
| Scraping / extraction worker | 🔒 closed source | Runs on the SJS servers. Decides how to navigate each job site, streams those instructions to your device client, and performs the LLM-based job extraction on the pages it returns. |
In other words: this app orchestrates scraping — it manages search tasks,
enqueues runs, ingests results, and matches them against profiles. The browser
that actually visits job sites runs on your own device via the open-source
sjs-browser /
sjs-desktop clients; those clients
connect to the SJS servers, where the closed-source worker decides how to
navigate each site and extracts the job data with an LLM. That closed worker is
not included here.
What that means if you run this repo on its own:
.nvmrcgit clone <repository-url>
cd smart-job-seeker
# Configure environment
cp .env.example .env
# Edit .env with your configuration (DB, JWT secret, LLM API keys, …)
# Start the dev environment (app + database + adminer)
npm run dev
This starts:
On first run with an empty database, Drizzle migrations are applied automatically. No sample dataset is bundled with this repository.
src/lib/server/db/ — Drizzle schema and data access (schema.ts)src/lib/server/job/ — matching logic (match-utils.ts, matcher-state.ts,
match-trigger.ts)src/lib/server/queue/ — background job queues that orchestrate scraping and
matching (scraper-queue.ts, match-queue.ts, rescrape-queue.ts)src/lib/server/ai-chat/ — AI prompt templates and writing featuressrc/lib/server/profile/ — profile export / collected_data snapshottingsrc/routes/ — SvelteKit app and API routesThe browser that visits job sites runs on your own device via the open-source
sjs-browser/sjs-desktopclients; the closed-source worker on the SJS servers tells it how to navigate and extracts the job data with an LLM. Neither is in this repository.
# Development
npm run dev # start app + database + adminer
npm run dev:reset # reset the database
npm run docker:cli # shell into the app container
# Database (Drizzle)
npx drizzle-kit push # apply schema changes in dev
npm run docker:db:backup # back up the local database
# Quality
npm run check # type checking
npm run test # unit tests (Vitest)
npx deno fmt # format
See the docs directory for more:
GNU General Public License v3.0 — see LICENSE.
Built by Rik Wanders, Senior Full Stack Developer.