mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-26 02:11:53 +00:00
* base styling and action placeholders for package sideload * apparently didnt add new folder * wip * parse manifest and icon from s9pk to upload * wip handle s9pk upload * adjust types, finalize actions, cleanup * clean up and fix data clearing and response * include rest rpc in proxy conf sample * address feedback to use shorthand falsy coercion * update copy and invalid package file ux * do not wait package upload, instead show install progress * fix proxy for rest rpc rename sideload package page titles
EmbassyOS Frontend
EmbassyOS has three user interfaces and a shared library, all written in Ionic/Angular/Typescript using an Angular workspace environment:
- ui: the main user interface
- setup-wizard: used to facilitate initial setup
- diagnostic-ui: used to display certain diagnostic information in the event EmbassyOS fails to initialize
- marketplace: abstracted ui elements to search for, list and display details for packages and their dependencies
- shared: contains components, types, and functions shared amongst all of the UIs.
Development Environment Setup
- Requirements:
Check your versions
node --version
v16.10.0
npm --version
v8.0.0
Running locally with mocks
- Clone the repository
git clone https://github.com/Start9Labs/embassy-os.git
cd embassy-os
git submodule update --init --recursive
cd frontend
npm ci
npm run build:deps
- Copy
config-sample.jsonand its contents to a new fileconfig.json.
cp config-sample.json config.json
By default, "useMocks" is set to true.
Valid values for "maskAs" are tor and lan.
- Start the development server(s)
npm run start:ui
npm run start:setup-wizard
npm run start:diagnostic-ui
Running locally with proxied backend
This section enables you to run a local frontend with a remote backend (eg. hosted on a live Embassy). It assumes you have completed Step 1 and Step 2 in the section above
-
Set
useMocks: trueinconfig.json -
Create a proxy configuration file from the sample:
cp proxy.conf-sample.json proxy.conf.json
-
Change the target address to desired IP address in
proxy.conf.json -
Start the development server
npm run start:ui:proxy