A local-first job application tracking board for students to manage deadlines, materials, interviews, and offer progress.
OfferPilot is a single-page campus recruiting dashboard built with vanilla HTML, CSS, and JavaScript.
It helps students manage the full application process in one place:
- track job applications across multiple companies
- manage deadlines and important recruiting events
- organize resumes, portfolios, and other application materials
- record interview notes and review questions
- compare offers and keep progress visible
- simulate semi-automatic status syncing with mock data
This project currently focuses on:
- product structure and interaction design
- local-first usage with
localStorage - mock-data-driven workflows
- a lightweight, no-build frontend setup
- Dashboard overview for urgent tasks, suggested next steps, recent updates, and offer summary
- Kanban-style application board with status updates, search, filtering, and sorting
- Job detail drawer for editing job info, materials, events, offers, notes, and sync links
- Calendar view for deadlines, interview events, overdue items, and weekly planning
- Material center with version management and reverse usage visibility
- Interview review center with editable records and question aggregation
- Offer comparison panel with lightweight recommendation logic
- Import/export JSON support for local backup and restore
- Local persistence using
localStorage - Semi-automatic sync flow powered by mock sync results
- HTML
- CSS
- Vanilla JavaScript
localStoragefor persistence
.
├── index.html
├── styles.css
├── app.js
├── state.js
├── renderers.js
├── mock-data.js
└── docs/
This project does not use npm and does not include a package.json.
Open index.html in your browser.
Using Python launcher on Windows:
cd D:\求职管理看板
py -m http.server 8000Then open:
- Data is stored locally in the browser through
localStorage - Refreshing the page keeps your changes unless you clear local data
- Import/export uses JSON files for backup and restore
- Syncing is currently mock-based and does not connect to real recruiting websites
Implemented:
- local-first single-page frontend
- application / event / material / interview / offer management flows
- dashboard, board, calendar, materials, interview review, analytics
- custom confirmation modal and categorized toast feedback
- sync history and mock sync result handling
Not implemented yet:
- real browser automation for recruiting websites
- real backend or cloud sync
- account system or collaboration
- production-grade drag-and-drop kanban
Detailed product planning documents are available in the docs folder:
- continue polishing interaction details and edit flows
- improve kanban usability and visual feedback
- expand sync history and failure handling
- explore controlled semi-automatic status capture from recruiting pages
MIT