Fillica is an open-source, desktop-native AI agent designed to completely automate the tedious process of applying for jobs. Instead of relying on fragile web extensions, Fillica uses Playwright to take control of a local Chromium browser instance, mapping your career history to complex ATS (Applicant Tracking System) portals with deterministic precision and neural reasoning.
- How It Works
- System Architecture
- Installation & Setup
- Deployment Guide
- Contributing
- Security & Privacy
Fillica completely eliminates manual data entry through a three-phase sequence:
-
Upload Reality (Data Extraction) You upload your resume once. The backend parses your PDF, extracting your entire career history, education, skills, and demographic data into a highly structured "Profile Matrix."
-
Target Acquisition (Job Selection) Using the Fillica desktop portal, you trigger the agent. The agent launches an isolated, visible Chromium browser and navigates directly to the target ATS portal (e.g., Rippling, Greenhouse, Workday).
-
Ghost Execution (Auto-Fill & Synthesis)
- Deterministic Mapping: Standard fields (Name, Email, Phone) are populated instantly using high-speed DOM injection.
- Neural Reasoning: Unmapped dropdowns, complex radio buttons, and custom questions are analyzed by an LLM in real-time, which deduces the correct answer based on your Profile Matrix.
- Dynamic Cover Letters: If a cover letter is required, the agent reads the job description and synthesizes a tailored PDF document on-the-fly.
Fillica operates on a distributed architecture to ensure maximum performance and user privacy.
| Component | Technology | Directory | Responsibility |
|---|---|---|---|
| Core API | Node.js, Express, MongoDB | backend/ |
Handles authentication, securely stores the Profile Matrix, and performs heavy AI resume parsing. |
| User Interface | Next.js, React, Tailwind | frontend/ |
The visual dashboard where users manage their data, connect ATS portals, and monitor automation runs. |
| Desktop Agent | Electron, Playwright | electron/ |
The local engine. It receives commands from the UI, opens the browser, and executes the automation scripts natively on the host OS. |
To run Fillica locally for development, you must start all three components.
- Node.js (v18 or higher)
- A MongoDB Database (Atlas or local)
- API Keys for Google OAuth and AWS S3 (for resume storage).
git clone https://github.com/ritikraj2425/FillicaAI.git
cd FillicaAICopy the provided example file to the required locations:
# 1. Create backend configuration
cp .env.example backend/.env
# 2. Create desktop application configuration
cp .env.example .env.localOpen backend/.env and fill in your MongoDB connection string, AWS credentials, and Google OAuth keys.
Install packages across all workspaces:
npm install # Root (Electron) dependencies
cd backend && npm install # Backend dependencies
cd ../frontend && npm install # Frontend dependenciesYou will need three separate terminal windows:
Terminal 1: The Backend
cd backend
npm run devTerminal 2: The Frontend Dashboard
cd frontend
npm run devTerminal 3: The Desktop Agent
# From the root directory
npm run devThe Electron desktop application will launch, connect to your local backend, and is now ready to automate job portals!
If you wish to host your own version of Fillica or distribute it, follow these steps.
- Push your code to a GitHub repository.
- Import the repository into Vercel or Render.
- Set the Root Directory to
backend/. - Add all your production
.envvariables to the Vercel dashboard. - Deploy. You will receive a production URL (e.g.,
https://fillica-api.vercel.app).
Fillica uses electron-updater to automatically push updates to your users.
- Update
package.jsonwith your GitHub details (ownerandrepounder thebuild.publishsection) and increment the"version". - Build the production binaries:
npm run dist:mac # Build macOS .dmg npm run dist:win # Build Windows .exe
- Go to your GitHub repository -> Releases -> Draft a new release.
- Upload all files generated in the
dist/folder (including.ymlfiles). - Publish the release. Existing users will automatically download the update in the background.
We are actively looking for contributors to expand our ATS support matrix and improve the neural engine. Please read our comprehensive Contributing Guide to get started with local development and pull requests.
Fillica is designed with a "Local First" automation philosophy.
- Browser Automation: Unlike cloud-based tools, automation runs entirely on your local machine. Your session cookies, passwords, and browser state never leave your computer.
- LLM Independence: You can configure Fillica to use your own OpenAI or Anthropic API keys, ensuring you have total control over data sharing.
This project is licensed under the MIT License - see the LICENSE file for details.
