This is the web UI component of Remote. It is a standalone React app which is embedded into the Remote binary and served statically from Remote's web server.
All communication between the client and server is done through a combination of a REST API and WebSockets. It can be hosted anywhere, as long as the API address is set correctly.
- Node.js (v16 LTS or higher)
- NPM (comes with Node.js)
These libraries are installed automatically but are notable:
- Vite is used to build the app
- All code is written in Typescript
- Prettier is used for code formatting
- React is used for basically everything
- Material UI is used for the UI components
- Axios for API requests
- React Router for routing
- React Query for data fetching
- Zustand for state management
- Clone the repository
- Run
npm installto install dependencies - Run
npm run startto start the development server - Browse to Settings > Remote and change the API settings to point to your MiSTer running Remote
- Run
vite buildto build the app - Copy the entire
builddirectory tocmd/remote/_clientin the Remote repository
- Create a tag
git tag vx.xwith your chosen version number - Push the tag:
git push origin --tags