This project is a React application that utilizes various libraries and tools to create a dynamic user interface. The application focuses on providing a rich user experience with features such as AI-generated image creation, window management, and context menus, dropdowns, and modals.
- React: A JavaScript library for building user interfaces.
- TypeScript: A superset of JavaScript that adds static types.
- Zustand: A small and fast state management solution for React.
- Framer Motion: A library for animations in React applications.
- Floating UI: A library for positioning elements responsively.
- React Query: A library for data fetching, caching, and updating in React applications.
- SCSS: A CSS preprocessor that offers features like nested rules and variables.
The project is divided into several directories, each serving a specific purpose:
- src/app: The main application layout and entry point.
- src/components: Reusable components such as dropdowns, modals, and UI elements.
- src/state: Zustand stores for managing application state.
- src/ui: UI components like toasts and dropdowns.
- src/scripts: Scripts for creating stores and other utilities.
The Home
component serves as the main entry point of the application. It sets up the context for the application, including state management and initial scene settings.
The dropdown menu is a key UI element that provides access to various functionalities, including file operations, help options, and AI settings.
The application features several modals, including:
- Tutorial Modal: Provides users with guidance on how to use the application.
- About Modal: Displays information about the application and its creator.
- Fal Settings Modal: Allows users to adjust global AI settings.
To get started with the project, follow these steps:
-
Clone the repository:
git clone https://github.com/oguzhan18/visionpallet
-
Navigate to the project directory:
cd visionpallet
-
Install the dependencies:
npm install
-
Start the development server:
npm start
-
Open your browser and navigate to
http://localhost:3000
to view the application.
Contributions are welcome! If you have suggestions for improvements or new features, please open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for more details.
- Thanks to the creators of the libraries and tools used in this project.
- Special thanks to the open-source community for their contributions and support.