MuseumAR is a simple web app designed for viewing an augmented reality (AR) museum. This project is built using React and Vite, leveraging technologies such as Three.js, react-three-fiber, and other modern web development tools.
- Augmented Reality integration for viewing museum artifacts.
- Interactive 3D models using Three.js and react-three-fiber.
- State management with Zustand.
- UI components styled with MUI Joy.
- Hot Module Replacement (HMR) for a smooth development experience.
- React: A JavaScript library for building user interfaces.
- Vite: A build tool that provides a fast development environment.
- Three.js: A 3D library that makes WebGL simpler.
- react-three-fiber: A React renderer for Three.js.
- Zustand: A small, fast, and scalable state-management solution.
- MUI Joy: A React component library for building stylish UI components.
- ESLint: A tool for identifying and reporting on patterns in JavaScript.
- PostCSS: A tool for transforming CSS with JavaScript plugins.
- Playwright: A framework for end-to-end testing.
To get started with the project, clone the repository and install the necessary dependencies.
git clone https://github.com/volynetstyle/MuseumAR.git
cd MuseumAR
npm install
To start the development server, use the following command:
npm run dev
This will launch the app and you can view it in your browser at http://localhost:3000
.
Here is an overview of the project's folder structure:
__tests__
: Contains test files.public
: Contains static assets.src
: Contains the source code for the application.components
: Reusable React components.hooks
: Custom hooks.pages
: Page components for different routes.store
: Zustand store for state management.styles
: CSS and PostCSS files.utils
: Utility functions.
tests-examples
: Example test files.
We welcome contributions to the project. If you have an idea or a bug fix, please open an issue or submit a pull request.
- Fork the repository.
- Create a new branch (
git checkout -b feature-name
). - Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature-name
). - Open a pull request.
This project is licensed under the MIT License.
Feel free to explore the project and contribute! If you have any questions, please open an issue on GitHub.