DESIGN_SYSTEM V1.0
Portfolio.DS
| token | value | preview | usage |
|---|---|---|---|
| --bg-base | #0c0c0f / #f6f5fc | Page background | |
| --bg-surface | #202027 / #f1effd | Cards, panels, components | |
| --accent | #7c6af5 / #7c6af5 | CTAs, highlights | |
| --text-primary | #f1effd / #202027 | Headings, titles | |
| --text-secondary | #ccccdd / #49495a | Descriptions, paragraphs |
const root = document.documentElement;
let isDark = true;
function toggleTheme() {
isDark = !isDark;
root.setAttribute('color-scheme', isDark ? '' : 'light');
toggleThemeIcon();
toggleCodeTheme();
}
document.getElementById('themeToggleBtn').addEventListener('click', toggleTheme);
Project DS
Next.js · TypeScript
none
0px
sm
6px
md
10px
lg
16px
full
9999px
flat
sm
md
lg
glow
fast - 150ms
Hover, badge changes
base - 250ms
Button interactions
smooth - 600ms
Panel open/close
bounce - 300ms
Notifications
all icons sourced from
lucide.dev
<i data-lucide="flower" width="3rem" height="3rem"></i>
<i data-lucide="feather" width="3rem" height="3rem"></i>
<i data-lucide="hourglass" width="3rem" height="3rem"></i>
<i data-lucide="coffee" width="3rem" height="3rem"></i>
<i data-lucide="crown" width="3rem" height="3rem"></i>