docs: reorganize tree, restore architecture + research from archive, add Phase 0 reports
Active docs/ was stub scaffolding while the real docs sat in docs/_archive/. Restore and correct them, and record the Phase 0 work. - docs/architecture/current.md: verified system map (from archived SYSTEM_OVERVIEW, 9 corrections against code). - docs/research/competitors.md: sourced competitor analysis (from archived PRODUCT_RESEARCH, feature matrix corrected). - docs/decisions/ADR-002-job-application-model.md: the Job/JobApplication split. - docs/application-discovery-report.md, docs/implementation-roadmap.md, docs/phase-0-foundation-report.md, docs/career-workspace-branch-assessment.md. - Remove 10 zero-byte placeholder files that advertised content that never existed. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,707 @@
|
||||
# Jobjakt Master Implementation Guide
|
||||
|
||||
Version: 1.0
|
||||
|
||||
---
|
||||
|
||||
# Purpose Of This Document
|
||||
|
||||
This document is the primary source of truth for understanding and improving Jobjakt.
|
||||
|
||||
Before making significant changes:
|
||||
|
||||
1. Read this document.
|
||||
2. Read the relevant linked documentation.
|
||||
3. Understand existing architecture.
|
||||
4. Make incremental improvements.
|
||||
|
||||
Do not redesign based on assumptions.
|
||||
|
||||
Always verify against the actual codebase.
|
||||
|
||||
---
|
||||
|
||||
# Product Identity
|
||||
|
||||
## Application Name
|
||||
|
||||
Jobjakt
|
||||
|
||||
---
|
||||
|
||||
# What Is Jobjakt?
|
||||
|
||||
Jobjakt is a job tracking and career management application.
|
||||
|
||||
The primary purpose is:
|
||||
|
||||
> Help users organise, manage, and improve their job search.
|
||||
|
||||
It is not primarily a CV builder.
|
||||
|
||||
The CV system is a supporting feature.
|
||||
|
||||
---
|
||||
|
||||
# Product Hierarchy
|
||||
|
||||
The product hierarchy is:
|
||||
|
||||
|
||||
CORE PRODUCT
|
||||
|
||||
Job Tracking
|
||||
|
||||
↓
|
||||
|
||||
Applications
|
||||
|
||||
↓
|
||||
|
||||
Application Workflow
|
||||
|
||||
↓
|
||||
|
||||
Follow-ups
|
||||
|
||||
↓
|
||||
|
||||
Communication Tracking
|
||||
|
||||
SUPPORTING FEATURES
|
||||
|
||||
Career Profile
|
||||
|
||||
↓
|
||||
|
||||
Master CV
|
||||
|
||||
↓
|
||||
|
||||
CV Builder
|
||||
|
||||
↓
|
||||
|
||||
Cover Letters
|
||||
|
||||
↓
|
||||
|
||||
Portfolio
|
||||
|
||||
↓
|
||||
|
||||
Interview Preparation
|
||||
|
||||
ENHANCEMENT FEATURES
|
||||
|
||||
Job Discovery
|
||||
|
||||
↓
|
||||
|
||||
Find Opportunities
|
||||
|
||||
↓
|
||||
|
||||
Import Into Tracker
|
||||
|
||||
|
||||
---
|
||||
|
||||
# Core Principle
|
||||
|
||||
Do not transform Jobjakt into a CV generator.
|
||||
|
||||
The competitive advantage is:
|
||||
|
||||
> Managing the entire journey from discovering a job to successfully applying.
|
||||
|
||||
---
|
||||
|
||||
# Target Users
|
||||
|
||||
Primary user:
|
||||
|
||||
People actively looking for work.
|
||||
|
||||
Examples:
|
||||
|
||||
- Developers.
|
||||
- Professionals changing careers.
|
||||
- Graduates.
|
||||
- Anyone applying for multiple jobs.
|
||||
|
||||
---
|
||||
|
||||
# Current Product Goals
|
||||
|
||||
Priority order:
|
||||
|
||||
## 1. Excellent Job Tracking
|
||||
|
||||
Users should easily:
|
||||
|
||||
- Add jobs.
|
||||
- Track status.
|
||||
- Manage applications.
|
||||
- Follow up.
|
||||
- Store communication.
|
||||
|
||||
---
|
||||
|
||||
## 2. Excellent Application Workflow
|
||||
|
||||
A user should be guided through:
|
||||
|
||||
|
||||
Find Job
|
||||
|
||||
↓
|
||||
|
||||
Import Job
|
||||
|
||||
↓
|
||||
|
||||
Review Details
|
||||
|
||||
↓
|
||||
|
||||
Prepare CV
|
||||
|
||||
↓
|
||||
|
||||
Prepare Cover Letter
|
||||
|
||||
↓
|
||||
|
||||
Add Supporting Files
|
||||
|
||||
↓
|
||||
|
||||
Submit Application
|
||||
|
||||
↓
|
||||
|
||||
Track Progress
|
||||
|
||||
|
||||
---
|
||||
|
||||
## 3. Career Workspace
|
||||
|
||||
Users maintain:
|
||||
|
||||
One professional identity.
|
||||
|
||||
This includes:
|
||||
|
||||
- Personal information.
|
||||
- Work history.
|
||||
- Education.
|
||||
- Skills.
|
||||
- Projects.
|
||||
- Certifications.
|
||||
- Languages.
|
||||
- Achievements.
|
||||
|
||||
This becomes the source of truth.
|
||||
|
||||
---
|
||||
|
||||
# Career Architecture
|
||||
|
||||
The relationship should be:
|
||||
|
||||
|
||||
Career Profile
|
||||
|
||||
↓
|
||||
|
||||
Master CV
|
||||
|
||||
↓
|
||||
|
||||
CV Builder
|
||||
|
||||
↓
|
||||
|
||||
Theme/Layout
|
||||
|
||||
↓
|
||||
|
||||
Generated CV
|
||||
|
||||
|
||||
---
|
||||
|
||||
For applications:
|
||||
|
||||
|
||||
Career Profile
|
||||
|
||||
↓
|
||||
|
||||
AI Analysis
|
||||
|
||||
Job Description
|
||||
|
||||
↓
|
||||
|
||||
Tailored CV Draft
|
||||
|
||||
↓
|
||||
|
||||
User Review
|
||||
|
||||
↓
|
||||
|
||||
Saved Copy Against Application
|
||||
|
||||
|
||||
---
|
||||
|
||||
Important:
|
||||
|
||||
The master CV must never be modified automatically.
|
||||
|
||||
---
|
||||
|
||||
# CV Builder Vision
|
||||
|
||||
The CV builder should become similar in quality to:
|
||||
|
||||
- FlowCV.
|
||||
- Novoresume.
|
||||
- ElegantCV.
|
||||
|
||||
Reference research:
|
||||
|
||||
`docs/research/`
|
||||
|
||||
---
|
||||
|
||||
# CV Builder Principles
|
||||
|
||||
## Content And Design Are Separate
|
||||
|
||||
Content:
|
||||
|
||||
- Experience.
|
||||
- Skills.
|
||||
- Education.
|
||||
|
||||
Design:
|
||||
|
||||
- Theme.
|
||||
- Colours.
|
||||
- Fonts.
|
||||
- Layout.
|
||||
|
||||
---
|
||||
|
||||
Users should be able to:
|
||||
|
||||
- Choose themes.
|
||||
- Preview instantly.
|
||||
- Change colours.
|
||||
- Show/hide photo.
|
||||
- Configure sections.
|
||||
- Export.
|
||||
|
||||
---
|
||||
|
||||
# Preferred Builder Experience
|
||||
|
||||
Structure:
|
||||
|
||||
|
||||
Content Tab
|
||||
|
||||
↓
|
||||
|
||||
Customise Tab
|
||||
|
||||
↓
|
||||
|
||||
Preview
|
||||
|
||||
↓
|
||||
|
||||
Export
|
||||
|
||||
|
||||
---
|
||||
|
||||
# Themes
|
||||
|
||||
Initial goal:
|
||||
|
||||
3-5 excellent themes.
|
||||
|
||||
Categories:
|
||||
|
||||
## ATS Professional
|
||||
|
||||
Simple.
|
||||
|
||||
Recruiter friendly.
|
||||
|
||||
|
||||
## Modern Professional
|
||||
|
||||
Clean SaaS style.
|
||||
|
||||
|
||||
## Creative
|
||||
|
||||
More visual.
|
||||
|
||||
---
|
||||
|
||||
Themes should support:
|
||||
|
||||
- Accent colours.
|
||||
- Typography.
|
||||
- Layout.
|
||||
- Spacing.
|
||||
- Photo options.
|
||||
- Icons.
|
||||
|
||||
---
|
||||
|
||||
# Authentication Requirements
|
||||
|
||||
Users must support:
|
||||
|
||||
## Email Signup
|
||||
|
||||
User can:
|
||||
|
||||
- Register.
|
||||
- Login.
|
||||
- Reset password.
|
||||
|
||||
---
|
||||
|
||||
## OAuth
|
||||
|
||||
Support:
|
||||
|
||||
- Google.
|
||||
- Microsoft.
|
||||
|
||||
If OAuth user does not exist:
|
||||
|
||||
Create account automatically.
|
||||
|
||||
---
|
||||
|
||||
## Security
|
||||
|
||||
Support:
|
||||
|
||||
- Password security.
|
||||
- Validation.
|
||||
- Rate limiting.
|
||||
- Two factor authentication.
|
||||
|
||||
See:
|
||||
|
||||
`docs/security/`
|
||||
|
||||
---
|
||||
|
||||
# AI Philosophy
|
||||
|
||||
AI assists users.
|
||||
|
||||
AI does not replace users.
|
||||
|
||||
---
|
||||
|
||||
AI can help with:
|
||||
|
||||
- CV improvements.
|
||||
- Job matching.
|
||||
- Cover letters.
|
||||
- Interview preparation.
|
||||
|
||||
---
|
||||
|
||||
AI output must:
|
||||
|
||||
- Be editable.
|
||||
- Require approval.
|
||||
- Never invent facts.
|
||||
|
||||
---
|
||||
|
||||
See:
|
||||
|
||||
`docs/ai/`
|
||||
|
||||
---
|
||||
|
||||
# Job Search
|
||||
|
||||
Job search is an enhancement.
|
||||
|
||||
It should not replace job boards.
|
||||
|
||||
---
|
||||
|
||||
Ideal workflow:
|
||||
|
||||
|
||||
Search
|
||||
|
||||
↓
|
||||
|
||||
Find Opportunity
|
||||
|
||||
↓
|
||||
|
||||
Import Job
|
||||
|
||||
↓
|
||||
|
||||
Track Application
|
||||
|
||||
|
||||
---
|
||||
|
||||
Possible features:
|
||||
|
||||
- Job title search.
|
||||
- Location.
|
||||
- Industry.
|
||||
- Remote.
|
||||
- Filters.
|
||||
- Company information.
|
||||
|
||||
Research required before implementation.
|
||||
|
||||
---
|
||||
|
||||
# SaaS Direction
|
||||
|
||||
Current:
|
||||
|
||||
Personal application.
|
||||
|
||||
Future:
|
||||
|
||||
Commercial SaaS.
|
||||
|
||||
---
|
||||
|
||||
Prepare for:
|
||||
|
||||
- Multiple users.
|
||||
- Premium features.
|
||||
- AI limits.
|
||||
- Storage limits.
|
||||
- Premium themes.
|
||||
|
||||
---
|
||||
|
||||
Do not over-engineer.
|
||||
|
||||
Prioritise:
|
||||
|
||||
Product quality first.
|
||||
|
||||
---
|
||||
|
||||
# UI Direction
|
||||
|
||||
The desired UI style:
|
||||
|
||||
- Modern.
|
||||
- Professional.
|
||||
- Notion-inspired.
|
||||
- Clean.
|
||||
- Easy to navigate.
|
||||
- Dark mode support.
|
||||
|
||||
---
|
||||
|
||||
Avoid:
|
||||
|
||||
- Clutter.
|
||||
- Complex menus.
|
||||
- Confusing workflows.
|
||||
|
||||
---
|
||||
|
||||
# UX Principles
|
||||
|
||||
The application should be:
|
||||
|
||||
Simple enough for beginners.
|
||||
|
||||
Powerful enough for serious users.
|
||||
|
||||
---
|
||||
|
||||
Users should always understand:
|
||||
|
||||
Where they are.
|
||||
|
||||
What they can do.
|
||||
|
||||
What happens next.
|
||||
|
||||
---
|
||||
|
||||
# Development Rules
|
||||
|
||||
When implementing:
|
||||
|
||||
## Always
|
||||
|
||||
- Review existing code first.
|
||||
- Make incremental changes.
|
||||
- Preserve working functionality.
|
||||
- Add tests.
|
||||
- Document decisions.
|
||||
|
||||
---
|
||||
|
||||
## Avoid
|
||||
|
||||
- Large rewrites.
|
||||
- Breaking migrations.
|
||||
- Duplicate systems.
|
||||
- Unnecessary dependencies.
|
||||
|
||||
---
|
||||
|
||||
# Code Quality
|
||||
|
||||
Follow:
|
||||
|
||||
`docs/technical/`
|
||||
|
||||
---
|
||||
|
||||
# Architecture
|
||||
|
||||
Follow:
|
||||
|
||||
`docs/architecture/`
|
||||
|
||||
---
|
||||
|
||||
# Security
|
||||
|
||||
Follow:
|
||||
|
||||
`docs/security/`
|
||||
|
||||
---
|
||||
|
||||
# AI
|
||||
|
||||
Follow:
|
||||
|
||||
`docs/ai/`
|
||||
|
||||
---
|
||||
|
||||
# Product Research
|
||||
|
||||
Follow:
|
||||
|
||||
`docs/research/`
|
||||
|
||||
---
|
||||
|
||||
# Implementation Priority
|
||||
|
||||
## Phase 1
|
||||
|
||||
Foundation:
|
||||
|
||||
- Authentication.
|
||||
- User experience.
|
||||
- Navigation.
|
||||
- Job workflow.
|
||||
|
||||
---
|
||||
|
||||
## Phase 2
|
||||
|
||||
Career Workspace:
|
||||
|
||||
- Master profile.
|
||||
- CV management.
|
||||
- Builder.
|
||||
|
||||
---
|
||||
|
||||
## Phase 3
|
||||
|
||||
AI:
|
||||
|
||||
- Tailoring.
|
||||
- Assistance.
|
||||
- Recommendations.
|
||||
|
||||
---
|
||||
|
||||
## Phase 4
|
||||
|
||||
Advanced:
|
||||
|
||||
- Job discovery.
|
||||
- Public profiles.
|
||||
- SaaS.
|
||||
|
||||
---
|
||||
|
||||
# Working Style For AI Assistants
|
||||
|
||||
When working on Jobjakt:
|
||||
|
||||
Do not stop after every small task.
|
||||
|
||||
Work autonomously.
|
||||
|
||||
Continue improving areas that are safe.
|
||||
|
||||
---
|
||||
|
||||
Only request user input when:
|
||||
|
||||
- A product decision is required.
|
||||
- Multiple valid directions exist.
|
||||
- Credentials are needed.
|
||||
- A destructive decision is required.
|
||||
|
||||
---
|
||||
|
||||
If blocked:
|
||||
|
||||
1. Document the blocker.
|
||||
2. Find another useful task.
|
||||
3. Continue working.
|
||||
|
||||
---
|
||||
|
||||
# Final Goal
|
||||
|
||||
Jobjakt should become:
|
||||
|
||||
A premium career workspace.
|
||||
|
||||
A user should maintain one professional identity and use Jobjakt to:
|
||||
|
||||
- Find opportunities.
|
||||
- Manage applications.
|
||||
- Create documents.
|
||||
- Improve applications.
|
||||
- Track career progress.
|
||||
|
||||
The CV is one output.
|
||||
|
||||
The career journey is the product.
|
||||
Reference in New Issue
Block a user