Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/abhinav-reddy-k/workday-copilot

Workday Copilot: A privacy-focused Chrome extension that automates job applications on Workday using local LLMs. Built with WXT, it intelligently fills forms, manages resume data, and handles navigation - all while keeping your data on your machine.
https://github.com/abhinav-reddy-k/workday-copilot

ai-automation chrome-extension form-autofill job-application local-llm react resume-parser typescript workday wxt

Last synced: 10 days ago
JSON representation

Workday Copilot: A privacy-focused Chrome extension that automates job applications on Workday using local LLMs. Built with WXT, it intelligently fills forms, manages resume data, and handles navigation - all while keeping your data on your machine.

Awesome Lists containing this project

README

        

# Workday Copilot ๐Ÿค–

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
![WXT](https://img.shields.io/badge/Built%20with-WXT-blue)
![Local LLM](https://img.shields.io/badge/Powered%20by-Local%20LLM-green)

A Chrome extension built with WXT that automates Workday job application forms using local LLM integration. Save time by automatically filling out job applications with your saved resume data.

## ๐ŸŽฅ Demo

[![Watch Demo Video](https://i.ytimg.com/vi/1Nw_XkKJPCw/hqdefault.jpg?sqp=-oaymwFBCNACELwBSFryq4qpAzMIARUAAIhCGAHYAQHiAQoIGBACGAY4AUAB8AEB-AHSBoAC4AOKAgwIABABGBMgUSh_MA8=&rs=AOn4CLA0E_0Jlp15k3rFM7sUty6u0ZaUng)](https://www.youtube.com/watch?v=1Nw_XkKJPCw)

## ๐ŸŒŸ Features

- **Local LLM Integration**: Privacy-focused form filling using your local machine's computing power
- **Smart Form Detection**: Automatically identifies and fills Workday application forms
- **Resume Data Management**: Save and manage resume data.
- **Automatic Navigation**: Seamlessly moves through application pages
- **Error Recovery**: Intelligent retry mechanism for failed form fields
- **Privacy First**: All data stays on your local machine

## ๐Ÿš€ Quick Start

### Prerequisites

- Node.js (v18 or higher)
- pnpm
- Chrome/Chromium browser
- LM Studio installed

### Installation

1. Clone the repository:

```bash
git clone https://github.com/yourusername/workday-copilot.git
cd workday-copilot
```

2. Install dependencies:

```bash
pnpm install
```

3. Start development server:

```bash
pnpm dev
```

4. Build for production (optional):

```bash
pnpm build
```

### Local LLM Setup

1. Download and install [LM Studio](https://lmstudio.ai)
2. Download your preferred model from Hugging Face
- Recommended models:
- Mixtral
- Llama 2
- OpenHermes
3. Load the model in LM Studio and start the local API server
4. Update the model endpoint in the extension configuration

## ๐Ÿ’ก Usage

1. **Initial Setup**

- Install the extension
- Open extension popup
- Navigate to settings
- Add your resume data

2. **Using the Extension**

- Navigate to any Workday job application
- Click the extension icon
- Select your resume profile
- Click "Start Autofill"

3. **Managing Data**
- Access saved data through the extension popup
- Edit or delete existing data

## ๐Ÿ› ๏ธ Technical Details

### Architecture

```
workday-copilot/
โ”œโ”€โ”€ src/
โ”‚ โ”œโ”€โ”€ components/ # React components
โ”‚ โ”œโ”€โ”€ content/ # Content scripts
โ”‚ โ”œโ”€โ”€ background/ # Service worker
โ”‚ โ”œโ”€โ”€ popup/ # Extension popup
โ”‚ โ”œโ”€โ”€ utils/ # Utility functions
โ”‚ โ””โ”€โ”€ types/ # TypeScript types
โ”œโ”€โ”€ public/ # Static assets
โ””โ”€โ”€ wxt.config.ts # WXT configuration
```

### Tech Stack

- ๐Ÿ› ๏ธ WXT (Web Extension Tools)
- โš›๏ธ React + TypeScript
- ๐ŸŽจ TailwindCSS
- ๐Ÿค– Local LLM Integration
- ๐Ÿ“ฆ pnpm for package management

## ๐Ÿค Contributing

We love contributions! Please follow these steps:

1. Fork the repository
2. Create a feature branch

```bash
git checkout -b feature/amazing-feature
```

3. Commit your changes

```bash
git commit -m 'Add some amazing feature'
```

4. Push to your branch

```bash
git push origin feature/amazing-feature
```

5. Open a Pull Request

### Development Guidelines

- Follow the existing code style
- Add tests for new features
- Update documentation as needed
- Ensure all tests pass before submitting PR
- Add meaningful commit messages

## ๐Ÿงช Testing

```bash
# Run unit tests
pnpm test

# Run e2e tests
pnpm test:e2e

# Run linting
pnpm lint
```

## ๐Ÿ“ License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## ๐Ÿ”ฎ Roadmap

- [ ] Support for multiple job board platforms
- [ ] AI-powered cover letter generation
- [ ] Custom form field mapping
- [ ] Resume parsing improvements
- [ ] Multi-language support

## โš ๏ธ Troubleshooting

### Common Issues

1. **LLM Connection Failed**

- Ensure LM Studio is running
- Check if the API endpoint is correct
- Verify model is properly loaded

2. **Form Fill Errors**
- Check console for specific error messages
- Verify resume data format
- Ensure all required fields have mappings

## ๐Ÿ“ž Support

- Create an issue in the GitHub repository
- Join our [Discord community](your-discord-link)
- Check the [FAQ](link-to-faq) section

## ๐Ÿ™ Acknowledgments

- WXT team for the amazing extension framework
- LM Studio for local LLM capabilities
- All our contributors and supporters

---

Made with โค๏ธ by the open-source community