-
ApplyView
-
Vue port in progress — Streamlit equivalent at app/pages/
+
+
+
+
+
+ Loading approved jobs…
+
+
+
+
📋
+
No approved jobs yet
+
Approve listings in Job Review, then come back here to write applications.
+
Go to Job Review →
+
+
+
+ -
+
+
+
+ {{ job.match_score }}%
+ Remote
+ ✓ Draft
+ ○ No draft
+
+
{{ job.title }}
+
+ {{ job.company }}
+ ·
+ {{ job.location }}
+
+
+
+ {{ job.salary }}
+ ›
+
+
+
+
-
diff --git a/web/src/views/ApplyWorkspaceView.vue b/web/src/views/ApplyWorkspaceView.vue
new file mode 100644
index 0000000..366020b
--- /dev/null
+++ b/web/src/views/ApplyWorkspaceView.vue
@@ -0,0 +1,846 @@
+
+
+
+
← Back to Apply
+
+
+
+ Loading job…
+
+
+
+
Job not found.
+
← Back
+
+
+
+
+
+
+
+
+
+
+
+ Cover Letter
+
+
+
+
+
No cover letter yet. Generate one with AI or paste your own.
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ clState === 'queued' ? 'Queued…' : (taskStage ?? 'Generating cover letter…') }}
+
+
This usually takes 20–60 seconds
+
+
+
+
+
+
+ ⚠️
+ Cover letter generation failed
+ {{ taskError }}
+
+
+
+
+
+
+
+
+
+ {{ wordCount }} words
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ toast }}
+
+
+
+
+
+
+
diff --git a/web/src/views/HomeView.vue b/web/src/views/HomeView.vue
index 821de1c..3d299ee 100644
--- a/web/src/views/HomeView.vue
+++ b/web/src/views/HomeView.vue
@@ -95,13 +95,24 @@
listings.
-