AnyView
Gather a career into a Digital Garden of roles, projects and stories, each backed by a quote from your own documents, then rehearse a spoken interview with an AI interviewer who has read it.
Sign in with any Google account and bring your own resume to try it.
Capabilities
What it does
Plant a resume or feedback
Upload a PDF or Word file and Donna, the garden’s assistant, reads it as a background job: split into sections, each read in parallel, merged, near-duplicate skills folded together and linked to the roles that show them. A one-page resume takes about ninety seconds, and it can be cancelled at any point.
Every entry quotes your own words
Each proposed role, project, story, skill or achievement carries the exact quote it was drawn from. A draft whose quote cannot be found in the document is marked unverified, and nothing joins the garden until you confirm it.
See it whole, and ask it questions
The garden is browsable as a constellation, by role or by kind, with a coverage heatmap showing where the evidence is strong and where it is missing. Ask Donna a question, typed or out loud, and every claim in the answer cites the entry it came from.
Practise against it
Paste a job posting and Harvey, the interviewer, plans five questions for it, then runs a spoken interview with follow-ups that refer to your own entries. The report scores each answer and sets it beside an ideal answer built from your garden.
Interviewer
A bounded agent
The model decides what to say and when to dig deeper; the API decides what it is allowed to do. A fully agentic loop was tried first, and each model decision added two to six seconds to a spoken turn.
- Plans
- Five questions written for the job and the situation, each with its own time budget of 45 to 300 seconds
- Two tools
- One asks permission to probe and says how long a good answer needs; the API allows at most two per question and refuses once the clock has run out. The other closes the question
- Looks things up
- Harvey holds a one-line index of the garden. When a follow-up needs detail, he names up to three entries and the API hands them back mid-answer
- Adapts
- Between questions, one fast call rewrites his notes and may reword the next question. It has a six-second deadline; if it is late, he asks the question as planned
Guardrails
Fair by construction
Both personas share the same rules, written into their instructions and checked by tests.
- Protected topics
- Neither persona asks about, guesses at or scores on age, ethnicity, religion, health, family status or the other protected characteristics, even when the materials hint at one
- The answer is data
- Scoring treats an answer as something to assess, never as instructions. Asking for a high score is not evidence of anything
- Stays in role
- Harvey declines anything that is not the interview in one sentence and returns to the question. Donna declines anything that is not about the garden
- Distress
- If a candidate says something that suggests real distress, the persona drops, says it is fine to stop, and points them to someone they trust
Stack
Under the hood
- Models
- Gemini 3.1 Pro for planning, reading and scoring; 3.5 Flash-Lite where speed matters; Gemini Live for the spoken interview; Gemini text-to-speech as its fallback; Gemini Embedding 2 for search. All called through IAM, so no API key exists
- API
- Python and FastAPI on Cloud Run, streaming to the browser over server-sent events and a WebSocket with no proxy in between
- Long work
- Reading a resume runs on a private Cloud Run worker behind Cloud Tasks while the browser follows its progress
- Data
- Cloud SQL Postgres with pgvector. The garden is event-sourced: every confirm, edit and retire is appended to a log, and a test replays it to rebuild the same garden. Search filters first, then ranks by similarity, in one query
- Front end
- Next.js, React and Tailwind, exported as static files to Firebase Hosting
- Resilience
- If Gemini Live fails the interview continues turn by turn with speech, and if speech fails, as text. Slow model calls fall back to a faster model, so the worst case is minutes, not eight
- Delivery
- Terraform for everything, planned on pull requests and applied on merge through workload identity federation. Forty-six decision records, written as each decision was made
Try it

