feat: Initialize FrontendV2 project with React, Vite, and Tailwind CSS

- Add package.json with dependencies and scripts for development and build
- Include Vite logo and React logo SVGs in public/assets
- Set up Tailwind CSS in App.css and index.css
- Create main App component with routing for Home and Login pages
- Implement LoginPage with authentication logic and error handling
- Add HomePage component as a landing page
- Create MyAlert component for displaying alerts using Chakra UI
- Implement color mode toggle functionality with Chakra UI
- Set up global state management using Jotai for authentication
- Create ProtectedRoutes component to guard routes based on authentication
- Add utility components for Toaster and Tooltip using Chakra UI
- Configure Tailwind CSS and TypeScript settings for the project
- Implement AddLoan component for selecting loan periods and fetching available items
This commit is contained in:
2025-10-24 20:21:32 +02:00
parent 86af1a5edf
commit b99f52f09a
34 changed files with 6927 additions and 20 deletions

View File

@@ -1,5 +1,7 @@
import Cookies from "js-cookie";
import { myToast } from "./toastify";
import { useAtom } from "jotai";
import { getBorrowableItemsAtom } from "../States/Atoms";
// Event name used to notify the app when the list of items has been updated
export const ALL_ITEMS_UPDATED_EVENT = "allItemsUpdated";
@@ -190,6 +192,7 @@ export const getBorrowableItems = async () => {
const data = await response.json();
localStorage.setItem("borrowableItems", JSON.stringify(data));
window.dispatchEvent(new Event(BORROWABLE_ITEMS_UPDATED_EVENT)); // notify same-tab listeners
console.log("Borrowable items fetched successfully");
} catch (error) {