1import{r as i,j as e}from"./animation-CddyXVCz.js";import{S as j}from"./SEOLandingPageTemplate-jokKzSh8.js";import{D as N,m as A,h as T,B as W,i as S}from"./index-CGKNpi9E.js";import{M as q}from"./loggedWin-C0wQo753.js";import{A as I}from"./aiDataFlow-B75SC8b6.js";import{b as F}from"./appSchema-DMOt1yDO.js";import"./react-vendor-CbN3pvl2.js";import"./supabase-iKSPld20.js";import"./docgen-Bp8WKBAE.js";import"./query-DPqpbKNH.js";const C=10,E=()=>{const t=N(),{session:s,isGuest:r,continueAsGuest:d}=A(),[n,l]=i.useState(""),[u,g]=i.useState(""),[h,w]=i.useState(""),[c,p]=i.useState(null),[b,v]=i.useState(!1),k=async o=>{o.preventDefault();const y=n.trim();if(y.length<C){p("Write a few words about what you got done.");return}v(!0),!s&&!r&&await d();const m={text:y};u.trim()&&(m.jobTitle=u.trim()),h.trim()&&(m.company=h.trim()),t("/app/diary",{state:{loggedWin:m}})};return e.jsx(T,{variant:"glass",padding:"lg",className:"shadow-xl shadow-black/[0.04]",children:e.jsxs("form",{id:"log-win-tool",onSubmit:k,className:"space-y-4 scroll-mt-24",noValidate:!0,children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx("label",{htmlFor:"log-win-input",className:"block text-sm font-semibold text-[var(--text-primary)]",children:"What did you get done?"}),e.jsx("textarea",{id:"log-win-input",rows:4,value:n,onChange:o=>{l(o.target.value.slice(0,q)),p(null)},className:"iconic-input w-full resize-y rounded-xl px-4 py-3 text-sm leading-relaxed",placeholder:"e.g. Fixed the billing export bug for finance","aria-describedby":c?"log-win-error":void 0,"aria-invalid":!!c,required:!0})]}),e.jsxs("div",{className:"grid gap-3 sm:grid-cols-2",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("label",{htmlFor:"log-win-title",className:"block text-xs font-semibold text-[var(--text-secondary)]",children:["Job title ",e.jsx("span",{className:"font-normal",children:"(optional)"})]}),e.jsx("input",{id:"log-win-title",value:u,onChange:o=>g(o.target.value.slice(0,120)),className:"iconic-input w-full rounded-xl px-4 py-2 text-sm",placeholder:"e.g. Software Engineer"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsxs("label",{htmlFor:"log-win-company",className:"block text-xs font-semibold text-[var(--text-secondary)]",children:["Company ",e.jsx("span",{className:"font-normal",children:"(optional)"})]}),e.jsx("input",{id:"log-win-company",value:h,onChange:o=>w(o.target.value.slice(0,120)),className:"iconic-input w-full rounded-xl px-4 py-2 text-sm",placeholder:"e.g. Acme"})]})]}),c&&e.jsx("p",{id:"log-win-error",role:"alert",className:"text-sm font-medium text-red-600 dark:text-red-400",children:c}),e.jsx(W,{type:"submit",variant:"primary",size:"lg",disabled:b,className:"w-full rounded-full text-base font-semibold text-white iconic-btn-primary h-auto py-3",rightIcon:e.jsx(S,{className:"h-5 w-5"}),children:"Save to my diary, free"}),e.jsx("p",{className:"text-center text-xs text-[var(--text-secondary)]",children:"No account needed: as a guest, your diary is saved in this browser. Create a free account to keep it everywhere."})]})})},x="/career-accomplishment-tracker",f={path:x,canonical:`https://careerdiary.io${x}`,title:"Free Work Accomplishment Tracker for Reviews and Resumes",description:"Log each work win in a minute and keep the record for performance reviews, promotion cases and resume updates. Free, and you can start without an account.",h1:"Free Work Accomplishment Tracker",intro:["Write down what you got done while you still remember it: the fix, the launch, the number that moved. Then it is there when a performance review, a promotion case or a resume update asks for proof.","We file every win under the role where it happened, so the record is already organized by job when you need it. When you later tailor a resume, we work only from what you logged."],example:{label:"Example",note:"A made-up win. Every fact in the last step comes from the steps before it.",quickNote:"fixed the billing export bug for finance",details:[{question:"What was broken, and who did it affect?",answer:"The billing export was dropping rows from finance's month-end report."},{question:"What changed after the fix?",answer:"Finance closed March 2 days sooner than February."}],entry:"Fixed the billing export bug that was dropping rows from finance's month-end report. After the fix, finance closed March 2 days sooner than February.",resumeBullet:"Fixed a billing export bug that was dropping rows from finance's month-end report; after the fix, finance closed March 2 days sooner than February."},usesTitle:"When you'll need the record",uses:[{title:"Performance reviews",description:"Your manager remembers the last few weeks. A dated list of what you shipped covers the rest of the year."}
1,{title:"Self-reviews",description:"Self-review forms ask what you achieved against your goals. Filtering a year of entries beats rebuilding one from calendar invites and chat history."},{title:"Promotion cases",description:"A promotion case is an argument from evidence: work at the next level, and what it changed. Entries logged when they happened are that evidence."},{title:"Updating your resume",description:"Resume bullets need specifics you will not remember in two years. With the record in place, our resume tailoring picks the entries that fit a posting and rephrases them, using only what you logged."},{title:"A brag document, kept for you",description:"A brag document is the same idea in a text file. The difference here is structure: each win sits under the role it belongs to, ready to reuse."}],faqs:[{question:"Is it free, and what are the limits?",answer:"Yes. Logging a win makes no AI call, so it uses no credits, and you can start without an account. AI extras such as rewriting an entry or tailoring a resume use daily credits: 2 a day without an account, 3 a day with a free account. Pro is $9 a month or $59 a year for 50 credits a day."},{question:"Is my diary private?",answer:`As a guest, your diary is saved in this browser, not on our servers. With a free account it is saved to your account, and our database only lets the account that owns a diary read it, so other users cannot see yours. Nothing is published unless you choose to publish a portfolio page. When you use an AI feature on an entry, the text it needs goes through our server to ${I} to produce the result.`},{question:"How is this different from a notes app or a spreadsheet?",answer:"A notes file works if you keep it up. What it cannot do is file each win under the role it happened in, turn a rough note into a clear line when you ask, or build a resume for a specific job from only the entries you logged. Those are the parts we add; the habit is still yours."},{question:"How often should I log accomplishments?",answer:"When something happens, or on the same day each week. The details that make an entry useful, such as the number, who it helped and what it replaced, fade quickly, and a two-line entry takes about a minute."},{question:"What should a good entry include?",answer:"What you did, what changed because of it (a number if you have one), and who noticed. One or two sentences is enough; you can always add detail while you still remember it."},{question:"Can I import what I already have?",answer:"Yes. Upload a resume (PDF, Word or plain text) and we build your diary from it, or upload the PDF that LinkedIn lets you download of your profile. There is no spreadsheet or notes-app import yet, so paste older wins in as entries."},{question:"Does it write my resume for me?",answer:"Only from what you logged. When you tailor a resume to a job, the AI works from your diary: it picks the entries that fit the posting, reorders and rephrases them, and it is instructed not to add employers, numbers or skills you never entered. Read the result next to your diary before you send it."}],related:[{label:"Career journal: build the weekly habit",href:"/career-diary-journal"},{label:"What is a brag document?",href:"/brag-document"},{label:"How to keep an accomplishment log for reviews",href:"/accomplishment-log"},{label:"Tailor your resume to a job description",href:"/tailor-resume-to-job-description"}]},R=(t=f)=>F({name:"CareerDiary Work Accomplishment Tracker",url:t.canonical,description:t.description,offerDescription:"Logging wins is free, with or without an account."}),a=f,P={title:a.title,description:a.description,canonical:a.canonical,keywords:["work accomplishment tracker","accomplishment tracker","track work achievements","work wins","brag document"],structuredData:R(a)},D=a.uses.map(t=>({title:t.title,description:t.description})),L=()=>{const t=a.example,s=(r,d,n,l=!1)=>e.jsxs("div",{className:`rounded-xl border bg-[var(--bg-primary)] p-4 space-y-1 ${l?"border-[var(--color-accent)]/40":"border-[var(--border-default)]"}`,children:[e.jsxs("h3",{className:`text-sm font-semibold uppercase tracking-wide ${l?"text-[var(--color-accent)]":"text-[var(--text-secondary)]"}`,children:[r,". ",d]}),n]});return e.jsx("section",{"aria-labelledby":"tracker-example-heading",className:"py-12 md:py-16",children:e.jsxs("div",{className:"max-w-5xl mx-auto px-4 sm:px-6 lg:px-8 space-y-6",children:[e.jsxs("div",{className:"text-center space-y-2",children:[e.jsxs("h2",{id:"tracker-example-heading",className:"text-3xl md:text-4xl font-bold text-[var(--text-primary)]",children:[t.label,": from a rough note to a resume bullet"]}),e.jsx("p",{className:"text-[var(--text-secondary)]",children:t.note})]}),e.jsxs("div",{className:"rounded-2xl border border-[var(--border-default)] bg-[var(--bg-secondary)] p-5 md:p-8 space-y-4",children:[e.jsx("span",{className:"inline-block rounded-full bg-[var(--color-accent)]/10 px-3 py-1 text-xs font-bold uppercase tracking-wider text-[var(--color-accent)]",children:t.label}),s(1,"Your note, in the moment",e.jsxs("p",{className:"text-[var(--text-primary)] leading-relaxed",children:["â",t.quickNote,"â"]})),s(2,"What you add while you remember",e.jsx("dl",{className:"space-y-2",children:t.details.map(r=>e.jsxs("div",{children:[e.jsx("dt",{className:"text-sm text-[var(--text-secondary)]",children:r.question}),e.jsx("dd",{className:"text-[var(--text-primary)] leading-relaxed",children:r.answer})]},r.question))})),s(3,"The diary entry",e.jsx("p",{className:"text-[var(--text-primary)] leading-relaxed",children:t.entry})),s(4,"Later, as a resume bullet",e.jsx("p",{className:"text-[var(--text-primary)] leading-relaxed",children:t.resumeBullet}),!0)]})]})})},J=()=>e.jsx(j,{seo:P,hero:{headline:a.h1,subheadline:a.intro[0],note:a.intro[1],primaryCTA:{label:"Log your first win, free",href:"#log-win-tool"},aside:e.jsx(E,{})},toolSlot:e.jsx(L,{}),features:D,featuresTitle:a.usesTitle,faqs:a.faqs,faqsTitle:"Before you start: common questions",relatedPages:a.related});export{J as CareerAccomplishmentTrackerPage,J as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.