Starting the resume manager…

Could not load

The Supabase client library did not load. This is almost always a blocked or offline network — the app pulls it from jsdelivr.net, along with the PDF and Word readers. Check the connection or any proxy rules, then try again.

C
CROSSonTOP Resume Manager

Finish the setup

Open config.js next to this page and paste your Supabase project URL and anon key. Both are in Supabase under Project Settings → API.

window.APP_CONFIG = { SUPABASE_URL: "https://xxxxxxxx.supabase.co", SUPABASE_ANON_KEY: "eyJhbGciOi..." };

Run supabase/schema.sql in the Supabase SQL editor first — it creates the tables, scoring function and access rules. Full steps are in SETUP.md.

C
CROSSonTOP
RESUME MANAGER

Sign in

Accounts are created by your administrator in Supabase.

{{ authError }}

{{ screenTitle }}

{{ screenSub }}
{{ toast }}
{{ s.label }}
{{ s.value }}
{{ s.note }}
QUICK START

Two ways into the library

Upload a PDF or Word file and let the parser fill the form, or enter a candidate by hand. Both land in the same branded template.

Library by source

{{ c.label }} {{ c.count }}

Recent activity

{{ a.initials }}
{{ a.text }}
{{ a.meta }}
{{ a.when }}
Nothing recorded yet. Saving a resume or editing settings will show up here.
{{ listCount }}
SOURCE
CANDIDATE
ROLE
SOURCE
UPDATED
STATUS
ACTIONS
{{ r.initials }}
{{ r.name }}
{{ r.years }}
{{ r.role }}
{{ r.source }}
{{ r.updated }}
{{ r.status }}
{{ listEmptyText }}
{{ pageLabel }}
Reading {{ fileName }}…
{{ parseError }}

Parsed fields

{{ parseSummary }}
{{ rawText }}
{{ r.k }}
{{ r.v }}
{{ r.confidence }}
The parser works on keywords and layout, not AI, so it runs instantly and costs nothing. Anything it cannot find is left blank for you to fill in. Only the extracted text is stored — the original file is discarded when you leave this screen.

Candidate info

FROM UPLOAD
Professional summary
{{ summaryCount }}

Skills

Technical skills
{{ t.label }}
Testing types
Certifications
{{ t.label }}

Work experience

Key responsibilities — one per line

Education

Key projects

What it involved

Internal record

Never printed on the client-facing resume.

Candidate source
{{ sourceHint }}
COMPLETENESS
{{ completePct }} {{ completeNote }}
{{ c.mark }} {{ c.label }}
Status
{{ formError }}

A requirement holds the client's criteria. Screening scores every resume in the library against it and saves the result as a run you can return to.

CLIENT
ROLE
OPENINGS
MUST-HAVES
ADDED
STATUS
{{ r.initials }}
{{ r.client }}
{{ r.role }}
{{ r.openings }}
{{ r.criteria }}
{{ r.created }}
{{ r.status }}
No requirements yet. Add one to start screening.

Client brief

Paste the email or job description. Suggesting criteria reads it for known tools and testing types — nothing leaves your browser.

Criteria

Must-haves carry 70% of the score, nice-to-haves 15%, and the experience range 15%. Matching looks at skills, testing types, certifications, the summary and the extracted resume text.
{{ reqError }}
REQUIREMENT
{{ f.k }}
{{ f.v }}
MUST HAVE
{{ m }}
NICE TO HAVE
{{ n }}
Minimum score {{ minScore }}%
{{ resultCount }}

Not screened yet

Scoring runs inside the database, so the whole library is compared at once and only the matches come back. The result is saved automatically as a run.

Scoring the library and saving the run…
{{ m.initials }}
{{ m.name }} {{ m.source }}
{{ m.meta }}
{{ m.score }}
{{ k }} missing · {{ k }}
Nobody scored above {{ minScore }}%. Lower the threshold, loosen the must-haves, or score an outside resume by adding it to the library first.

Shortlist

{{ shortlistCount }}

Printed as one pack for the client.

{{ p.name }}
{{ p.meta }}
Nobody shortlisted yet.

Saved screening runs

Click a run to show its saved results.

{{ h.label }} {{ h.mark }}
{{ h.meta }}
No runs yet.
{{ reqError }}
{{ doc.name }}
{{ doc.roleLine }}
{{ doc.contact }}
{{ doc.rates }}
Prepared by
{{ doc.company }}
{{ doc.website }}
{{ doc.sourceTag }}
SUMMARY

{{ doc.summary }}

TECHNICAL SKILLS
{{ k }}
TESTING TYPES
{{ t }}
CERTIFICATIONS
{{ c }}
EDUCATION
{{ e }}
WORK EXPERIENCE
{{ e.company }}
{{ e.dates }}
{{ e.role }}
{{ b }}
KEY PROJECTS
{{ p.name }}
{{ p.desc }}
{{ p.tools }}
SUMMARY

{{ doc.summary }}

TECHNICAL SKILLS
{{ k }}
TESTING TYPES
{{ t }}
WORK EXPERIENCE
{{ e.company }}
{{ e.dates }}
{{ e.role }}
{{ b }}
KEY PROJECTS
{{ p.name }}
{{ p.desc }}
CERTIFICATIONS
{{ c }}
EDUCATION
{{ e }}
PAGE 1 · CANDIDATE BRIEF

{{ doc.summary }}

TECHNICAL SKILLS
{{ k }}
TESTING TYPES
{{ t }}
PAGE 2 · FULL HISTORY
{{ e.company }}
{{ e.dates }}
{{ e.role }}
{{ b }}
EDUCATION
{{ e }}
{{ doc.footerText }}
{{ packCount }} Each profile keeps its own field choices, printed one per page in a single pack layout.
{{ doc.name }}
{{ doc.roleLine }}
{{ doc.contact }}
Prepared by
{{ doc.company }}
{{ doc.website }}
SUMMARY

{{ doc.summary }}

TECHNICAL SKILLS
{{ k }}
WORK EXPERIENCE
{{ e.company }}
{{ e.dates }}
{{ e.role }}
{{ b }}
EDUCATION
{{ e }}
{{ doc.footerText }}
You are signed in as HR, so these settings are read-only. An administrator can change branding, templates and defaults.

Company branding

Printed on every resume generated from now on.

Resume templates

Three layouts. The default applies to new resumes; each record can override it.

Header & footer

Applies to every template.

Header layout
Footer treatment
{{ r.label }}
{{ r.note }}
{{ settingsError }}

Team

Accounts are created in Supabase → Authentication → Users. Roles are set here.

{{ t.initials }}
{{ t.name }}
{{ t.joined }}
{{ t.role }}
WHO
ACTION
WHAT
WHEN
{{ a.who }}
{{ a.action }}
{{ a.what }}
{{ a.when }}
No entries yet.

What the client sees

The stored record keeps everything. Save layout writes these choices to the record.

{{ r.label }}
{{ r.note }}