diff --git a/services/frontend/bun.lockb b/services/frontend/bun.lockb index 2c7d5b0..33f5a81 100644 Binary files a/services/frontend/bun.lockb and b/services/frontend/bun.lockb differ diff --git a/services/frontend/eslint.config.js b/services/frontend/eslint.config.js index 092408a..faa2e37 100644 --- a/services/frontend/eslint.config.js +++ b/services/frontend/eslint.config.js @@ -1,28 +1,25 @@ -import js from '@eslint/js' -import globals from 'globals' -import reactHooks from 'eslint-plugin-react-hooks' -import reactRefresh from 'eslint-plugin-react-refresh' -import tseslint from 'typescript-eslint' +import js from "@eslint/js"; +import globals from "globals"; +import reactHooks from "eslint-plugin-react-hooks"; +import reactRefresh from "eslint-plugin-react-refresh"; +import tseslint from "typescript-eslint"; export default tseslint.config( - { ignores: ['dist'] }, + { ignores: ["dist"] }, { extends: [js.configs.recommended, ...tseslint.configs.recommended], - files: ['**/*.{ts,tsx}'], + files: ["**/*.{ts,tsx}"], languageOptions: { ecmaVersion: 2020, globals: globals.browser, }, plugins: { - 'react-hooks': reactHooks, - 'react-refresh': reactRefresh, + "react-hooks": reactHooks, + "react-refresh": reactRefresh, }, rules: { ...reactHooks.configs.recommended.rules, - 'react-refresh/only-export-components': [ - 'warn', - { allowConstantExport: true }, - ], + "react-refresh/only-export-components": null, }, }, -) +); diff --git a/services/frontend/package.json b/services/frontend/package.json index b216311..59286e8 100644 --- a/services/frontend/package.json +++ b/services/frontend/package.json @@ -18,6 +18,7 @@ "ofetch": "^1.4.1", "react": "^19.0.0", "react-dom": "^19.0.0", + "react-router": "^7.2.0", "tailwind-merge": "^3.0.2", "tailwindcss": "^4.0.9", "tailwindcss-animate": "^1.0.7" diff --git a/services/frontend/src/App.tsx b/services/frontend/src/App.tsx index d429bd4..daf09bc 100644 --- a/services/frontend/src/App.tsx +++ b/services/frontend/src/App.tsx @@ -1,3 +1,6 @@ +import { Routes } from "react-router"; +import "./styles/globals.css"; + export default function App() { - return <>Hello world yopta; + return ; } diff --git a/services/frontend/src/components/ui/button.tsx b/services/frontend/src/components/ui/button.tsx index e1b5d8a..49dcad9 100644 --- a/services/frontend/src/components/ui/button.tsx +++ b/services/frontend/src/components/ui/button.tsx @@ -1,8 +1,8 @@ -import * as React from "react" -import { Slot } from "@radix-ui/react-slot" -import { cva, type VariantProps } from "class-variance-authority" +import * as React from "react"; +import { Slot } from "@radix-ui/react-slot"; +import { cva, type VariantProps } from "class-variance-authority"; -import { cn } from "@/lib/utils" +import { cn } from "@/shared/lib/utils"; const buttonVariants = cva( "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", @@ -31,8 +31,8 @@ const buttonVariants = cva( variant: "default", size: "default", }, - } -) + }, +); function Button({ className, @@ -42,9 +42,9 @@ function Button({ ...props }: React.ComponentProps<"button"> & VariantProps & { - asChild?: boolean + asChild?: boolean; }) { - const Comp = asChild ? Slot : "button" + const Comp = asChild ? Slot : "button"; return ( - ) + ); } -export { Button, buttonVariants } +export { Button, buttonVariants }; diff --git a/services/frontend/src/main.tsx b/services/frontend/src/main.tsx index d0a91b1..f046499 100644 --- a/services/frontend/src/main.tsx +++ b/services/frontend/src/main.tsx @@ -1,10 +1,12 @@ import { StrictMode } from "react"; import { createRoot } from "react-dom/client"; -import "./styles/globals.css"; +import { BrowserRouter } from "react-router"; import App from "./App.tsx"; createRoot(document.getElementById("root")!).render( - + + + , ); diff --git a/services/frontend/src/pages/.gitkeep b/services/frontend/src/pages/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/services/frontend/src/lib/utils.ts b/services/frontend/src/shared/lib/utils.ts similarity index 100% rename from services/frontend/src/lib/utils.ts rename to services/frontend/src/shared/lib/utils.ts