diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index d8ef4c3..8953049 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -1,11 +1,20 @@ +import AppLayout from './components/layout/AppLayout' +import Button from './components/ui/Button' +import DigitalProgressBar from './components/ui/DigitalProgressBar' +import Panel from './components/ui/Panel' + function App() { return ( -
-

- BUCKETS -

-

1234567890

-
+ + +

+ Emergency Fund +

+ +

$750 / $1000

+ +
+
) } diff --git a/frontend/src/components/layout/AppLayout.tsx b/frontend/src/components/layout/AppLayout.tsx new file mode 100644 index 0000000..da6fc37 --- /dev/null +++ b/frontend/src/components/layout/AppLayout.tsx @@ -0,0 +1,18 @@ +import type { ReactNode } from 'react' + +interface AppLayoutProps { + children: ReactNode +} + +export default function AppLayout({ children }: AppLayoutProps) { + return ( +
+
+

+ BUCKETS +

+
+
{children}
+
+ ) +} diff --git a/frontend/src/components/ui/Button.tsx b/frontend/src/components/ui/Button.tsx new file mode 100644 index 0000000..fa8a56f --- /dev/null +++ b/frontend/src/components/ui/Button.tsx @@ -0,0 +1,19 @@ +import type { ButtonHTMLAttributes } from 'react' +import { cn } from '../../lib/cn' + +interface ButtonProps extends ButtonHTMLAttributes { + glow?: boolean +} + +export default function Button({ glow, className, ...props }: ButtonProps) { + return ( +