diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx
index 191b095..0dbc110 100644
--- a/frontend/src/App.jsx
+++ b/frontend/src/App.jsx
@@ -8,18 +8,26 @@ import Stories from './pages/Stories'
import EditorPage from './pages/EditorPage'
import Admin from './pages/Admin'
import ThemePicker from './components/ThemePicker'
+import FontPicker, { FONTS } from './components/FontPicker'
const THEMES = ['grunge', 'gothic', 'forest', 'manuscript', 'noir']
export default function App() {
- const [user, setUser] = useState(() => getUser())
- const [theme, setTheme] = useState(() => localStorage.getItem('sw-theme') || 'grunge')
+ const [user, setUser] = useState(() => getUser())
+ const [theme, setTheme] = useState(() => localStorage.getItem('sw-theme') || 'grunge')
+ const [fontId, setFontId] = useState(() => localStorage.getItem('sw-font') || 'lora')
useEffect(() => {
document.documentElement.setAttribute('data-theme', theme)
localStorage.setItem('sw-theme', theme)
}, [theme])
+ useEffect(() => {
+ const font = FONTS.find(f => f.id === fontId) ?? FONTS[0]
+ document.documentElement.style.setProperty('--font-body', font.family)
+ localStorage.setItem('sw-font', fontId)
+ }, [fontId])
+
return (
Writing font
+ {FONTS.map(f => ( + + ))} +