Stunning themes for every website with WCAG accessibility and color-blind support
Quick Start โข Features โข Themes โข Installation โข Contributing
Carefully crafted themes for every preference and accessibility need:
| Theme | Purpose | Key Feature |
|---|---|---|
| Dark | Low-light environments | Comfortable for extended use |
| Light | Well-lit environments | Bright background with dark text |
| High Contrast | Maximum accessibility | 7:1 contrast ratio (WCAG AAA) |
| Night Warm | Low blue light | Reduces eye strain |
| Protanopia | Red-blind accessibility | Blue-yellow color axis |
| Deuteranopia | Green-blind accessibility | Blue-yellow color axis |
| Tritanopia | Blue-blind accessibility | Red-green color axis |
| Reduced Motion | Vestibular disorders | Disables animations |
- WCAG AA compliant โ all themes maintain at least 4.5:1 contrast ratio for readability
- Color-blind friendly โ dedicated modes for protanopia, deuteranopia, and tritanopia
- Smart contrast fixing โ automatically adjusts text colors when needed
- Respects motion preferences โ honors reduced motion settings for accessibility
- Choose different themes for different websites
- Override global settings locally when needed
- Quick access theme switcher in the popup
- ๐จ 8 stunning themes thoughtfully designed for different needs and preferences
- ๐ Smart detection โ respects your OS light/dark mode preference
- ๐ Universal theming โ works across any website while preserving original design
- โ Readable everywhere โ automatically fixes poor text contrast combinations
- ๐ Per-site control โ customize your theme preferences for individual websites
- ๐๏ธ Inclusive color modes โ dedicated support for all types of color blindness
- โก Real-time switching โ theme changes take effect instantly
- ๐ฑ Works everywhere โ compatible with any modern website
- ๐ง Built with TypeScript โ solid, maintainable codebase
- ๐ญ Consistent experience โ extension UI adapts to your selected theme
- ๐พ Efficient โ smart stylesheet processing with minimal overhead
Install from Chrome Web Store โ
# Clone the repository
git clone https://github.com/DeSource-Labs/themifier.git
cd themifierInstall dependencies:
pnpm installBuild the extension:
pnpm buildLoad in Chrome:
- Open
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked"
- Select the
.output/chrome-mv3folder
- Node.js >= 18.0.0
- pnpm >= 8.0.0
- Chrome >= 120
# Install dependencies
pnpm install
# Start development with hot reload
pnpm dev
# Build for production
pnpm build
# Check code quality
pnpm lintthemifier/
โโโ .github/ # GitHub templates
โ โโโ ISSUE_TEMPLATE/
โ โโโ PULL_REQUEST_TEMPLATE.md
โโโ components/ # Vue components
โ โโโ Badge.vue
โ โโโ Card.vue
โ โโโ Collapsible.vue
โ โโโ ModeItem.vue
โ โโโ RefreshButton.vue
โ โโโ Switch.vue
โโโ composables/ # Vue 3 composables
โ โโโ useExtensionTheme.ts # Theme injection for UI
โ โโโ useThemifier.ts # Main extension composable
โโโ entrypoints/ # Extension entry points
โ โโโ background.ts # Service worker
โ โโโ content.ts # Content script (injected into pages)
โ โโโ popup/ # Quick access popup
โ โ โโโ AppPopup.vue
โ โ โโโ main.css
โ โ โโโ mainPopup.ts
โ โโโ options/ # Settings page
โ โโโ AppOptions.vue
โ โโโ main.css
โ โโโ mainOptions.ts
โโโ services/ # Core business logic
โ โโโ colorMatrix.ts # Color matrix calculations
โ โโโ colorRegistry.ts # Color palette registry
โ โโโ colorTransform.ts # Color manipulation utilities
โ โโโ cssProcessor.ts # CSS transformation with contrast checks
โ โโโ dynamicThemeEngine.ts # Main theming engine
โ โโโ extensionThemes.ts # UI theme for popup/options
โ โโโ frameworkDetection.ts # Detect web frameworks
โ โโโ palette.ts # Color palette utilities
โ โโโ storageService.ts # Chrome storage wrapper
โ โโโ themeDetection.ts # System theme detection
โ โโโ themeProfiles.ts # Theme definitions (8 themes)
โโโ store/ # Pinia state management
โ โโโ settings.ts
โโโ styles/ # Global styles
โ โโโ main.css
โ โโโ reset.css
โโโ types/ # TypeScript types
โ โโโ messages.ts # Message types for communication
โ โโโ theme.ts # Theme type definitions
โโโ utils/ # Helper utilities
โ โโโ color.ts
โโโ public/ # Static assets
โโโ icon/
We'd love your contributions! Check out our Contributing Guide for everything you need to know.
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/themifier.git - Install dependencies:
pnpm install - Create a branch:
git checkout -b feature/my-feature - Make your changes
- Build and test:
pnpm build - Commit:
git commit -m "feat: add awesome feature" - Push:
git push origin feature/my-feature - Open a Pull Request
Developed and maintained by DeSource Labs.
Created by Stefan Popov
MIT ยฉ 2025 DeSource Labs
