Bumps the npm_and_yarn group with 2 updates in the / directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) and [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest). Bumps the npm_and_yarn group with 2 updates in the /job-application-demo directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) and [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest). Updates `vite` from 7.1.10 to 7.3.2 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.3.2/packages/vite) Updates `vitest` from 3.2.4 to 4.1.0 - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md) - [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.0/packages/vitest) Updates `picomatch` from 2.3.1 to 2.3.2 - [Release notes](https://github.com/micromatch/picomatch/releases) - [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/picomatch/compare/2.3.1...2.3.2) Updates `rollup` from 4.52.5 to 4.61.0 - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v4.52.5...v4.61.0) Updates `vite` from 7.1.10 to 7.3.2 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.3.2/packages/vite) Updates `vitest` from 3.2.4 to 4.1.0 - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md) - [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.0/packages/vitest) --- updated-dependencies: - dependency-name: vite dependency-version: 7.3.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vitest dependency-version: 4.1.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: picomatch dependency-version: 2.3.2 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: rollup dependency-version: 4.61.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.3.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vitest dependency-version: 4.1.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] <support@github.com>
Job Application Demo
This is a sample job application form web app built with Vite, React, Material UI, and TypeScript. It demonstrates the structure and fields used by the JobSpeed extension.
Features
- Material UI components for a polished, professional look
- Form validation matching the extension's
ResumeDatainterface - Required and optional fields as defined in the extension
- Incremental JSON file export with timestamps
- Sections for:
- Personal Information (required)
- Work Experience (required)
- Education (optional)
- Certifications (optional)
- Skills (required)
- Professional Summary (optional)
Getting Started
Install Dependencies
pnpm install
Development Server
pnpm dev
The app will be available at http://localhost:5173
Build for Production
pnpm build
Preview Production Build
pnpm preview
Usage
- Fill in the form with your information
- Required fields are marked with an asterisk (*)
- Click "Submit Application" to download your data as a JSON file
- The file will be saved as
job-application-{N}-{timestamp}.json{N}is an incrementing number{timestamp}is the current date and time
Field Requirements
The form matches the extension's ResumeData interface:
Required Fields
- All personal information fields (except LinkedIn, GitHub, Website)
- At least one work experience entry
- At least one skill
Optional Fields
- LinkedIn profile URL
- GitHub profile URL
- Personal website URL
- Education entries
- Certification entries
- Professional summary
Testing
This project includes comprehensive test coverage with both unit tests and end-to-end tests.
Unit Tests (Vitest)
Run unit tests for React components:
# Run tests in watch mode
pnpm test
# Run tests once
pnpm test -- --run
# Run tests with UI
pnpm test:ui
# Run tests with coverage
pnpm test:coverage
Unit tests cover:
- PersonalInfoForm component
- WorkExperienceForm component
- SkillsForm component
- App component integration
End-to-End Tests (Playwright)
Run E2E tests that simulate real user interactions:
# Run E2E tests
pnpm test:e2e
# Run E2E tests with UI
pnpm test:e2e:ui
# View test report
pnpm test:e2e:report
E2E tests cover:
- Complete form submission flow
- Form validation (email, phone, zip code, GPA)
- Adding and removing dynamic entries (work experience, education, etc.)
- Skills management
- File download functionality
Integration with Main Project
This demo app is:
- Excluded from the main extension build
- Bootstrapped separately with its own
package.json - Included in the project's ESLint and Prettier configurations
- Using the same strict TypeScript settings as the main project