0273356f4d067f4dea2d1ae866305e5663d2230e
- LEXAI-13: TweetNaCl secretbox encryption for API keys in Options + background
- getOrCreateEncKey() generates per-device 32-byte key stored in chrome.storage.local
- Keys saved as nonce+ciphertext (base64) under apiKeyEnc
- Backward compat: falls back to plaintext apiKey if no encrypted key found
- Lock icon 🔒 shown in Options label when key is encrypted
- LEXAI-11: Right-click context menu with Fix, Rephrase, Shorten, Expand, Tone
- Registered via onInstalled in background service worker
- Sends lexai-context-menu message to content script
- Content script listener added at bottom of main()
- LEXAI-12: Tone analysis button added to floating toolbar (teal #2dd4bf)
- Analysis-only: showModal called with null originalText = no Replace button
- Tone system prompt updated to pure analysis (no rewrite)
⚡ LexAI — AI Writing Assistant
A Grammarly-like Chrome Extension powered by your own LLM API key. No monthly subscription. Full control.
Features (Roadmap)
- ✅ Grammar & spelling correction
- ✅ Rephrase / rewrite text
- ✅ Shorten or expand text
- 🔜 Tone suggestions
- 🔜 Autocomplete
- 🔜 Custom style profiles
Supported LLM Providers
- OpenAI (GPT-4o, GPT-4o-mini)
- Anthropic (Claude 3.5 Haiku, Sonnet)
- Groq (free tier — fast!)
- OpenRouter (100+ models)
Tech Stack
- WXT + React 18 + TypeScript
- Tailwind CSS
- Zustand (state)
- Manifest V3
Development
npm install
npm run dev # Dev mode with hot reload
npm run build # Production build
npm run zip # Package for Chrome Web Store
npm test # Run unit tests
Load in Chrome
- Run
npm run build - Open Chrome →
chrome://extensions - Enable Developer Mode
- Click Load unpacked → select
.output/chrome-mv3
Project Management
Plane: LEXAI project → https://plane-pro.juankibin.space
Releases
1
LexAI v1.0.0
Latest
Languages
TypeScript
87.6%
JavaScript
9.7%
CSS
2.3%
HTML
0.4%