Inspiration

Filling out job application forms on ATS can be a repetitive labor. Most modern applicant tracking systems are already equipped with the parse-and-fill functionality, but inconsistencies and gaps between your resume content and the system are still there to be manually addressed.

On the other hand, tab completion has been a well-accepted feature in IDE (for us programmers, at least!). So, what if we could tab all the way through a job form in ATS?

What it does

We proudly introduce Fillo, a browser extension that helps you fill out job forms. Configure an AI provider, import your PDF resume, and enjoy.

We offer three pathways:

  • Manual Copy mode, in which the imported resume is displayed as a tree view, and you can copy by clicking a node;
  • Field Review mode, which lists out all the input fields in page, and you can choose from your list of information;
  • Prompt Overlay mode, which displays a floating overlay so that you can pick information directly in the page, or even easier, press tab key when you like the AI suggestion or the top match.

How we built it

We picked WXT as the extension framework. Then we expanded slowly from implementing manual mode first, to modes that are more intuitive.

Challenges we ran into

Integrating Chrome on-device AI was hard work that pays off. The biggest frustration was 'other generics failures' — which turned out to be JSON schema too complex. We shipped a schema with extra metadata stripped for structured output use, and a full one for form validation.

Dealing with side panel state was another challenge. The desired behaviour was to keep side panel open for the tab it was opened for, but closed for others. We eventually implemented it but were not sure if it was a hack.

Accomplishments that we're proud of

Our favourite pick is no doubt the prompt overlay. It is a React component injected by content script to live within the page. It was interesting to learn about the difference between same-origin iframes and cross-origin iframes. We hoisted and designed communication mechanisms for overlay component with best effort to avoid iframe clippings and enable calculated position syncing.

What we learned

Browser extension development is a new field to us. It was great fun to learn by DIY a small product, learning and improving by trial and error. It is a pity some features remain unfinished at this time before the deadline, but imperfection encourages us to work harder next time.

What's next for Fillo: Resume Autofill

There are quite a few planned UX improvements ahead, and we also hope to come up with innovative interaction patterns to further simplify the workflow and enhance your experience. Happy job-seeking!

Built With

Share this project:

Updates