For details see: https://github.com/urbit/urbit.org/blob/master/content/grants/app-store.md
For discussion, visit on Urbit: ~worpet-bildet/portal
-
Node JS- https://nodejs.org/en/download/. install with
sudo apt install nodejs
-
This project uses pnpm for package management, but any of these will work for node version management. install it with
wget -qO- https://get.pnpm.io/install.sh | ENV="~/.bashrc" SHELL="$(which bash)" bash -
To install n with npm:
sudo apt install npm
npm install -g n
- Select node version
16.14.0
withpnpm env use --global 16.14.0
. You can check which version you're on withnode -v
cd ui
Install deps:
pnpm install
Build app:
pnpm build
Run local app dev server:
pnpm dev
App Store is not yet published on Urbit, but it is easy to boot a fake ship and play with it.
install urbit
curl -L https://urbit.org/install/linux-x86_64/latest | tar xzk --transform='s/.*/urbit/g' && ./urbit
boot a comet
./urbit -c mycomet
when you finish booting, the stdout should tell you the port where the ship is hosted, e.g. "web interface http://localhost:8081". define SHIP_URL in vite.config.js with this value
Run:
You should add a desk.ship file to portal desk with the ship which represents you local indexer used in development.
|new-desk %portal
|mount %portal
Download the zip file from github, and extract it to your fake ship. Delete the app-store desk, and rename the downloaded folder into "app-store". Then:
|commit %portal
|install our %portal
on nuke
|nuke %portal, =desk &
|rein %portal [& %portal-manager]
To seed %portal data, see commands in /portal/notes
- build the dist folder pnpm build-prod
- add the dist folder to /your-urbit/portal/app/
|commit %portal
- If you have any "missing mark files" grab them from the urbit git repo and put them in the /your-urbit/trove/app/mar folder
- -garden!make-glob %desk /path/to/dist (e.g. -garden!make-glob %portal /app/dist)
- find glob in /your-pier/.urb/put, store on cloud
- update desk.docket-0 file glob-http url and hash as below
- build the dist folder
npm run build
- Login to https://worpet-bildet.arvo.network/
- Navigate to https://worpet-bildet.arvo.network/docket/upload
- Select portal from the dropdown
- Select the
dist
folder that was just created bynpm run build
on your local machine - Click glob button
- Wait for the page to refresh (takes literally a minute or more sometimes)
- Wait another minute or two for Urbit to be Urbit
- Check that your changes have been deployed by navigating to the app
desk.ship is where you POST your feedposts to (so you don't want this to be ~worpet-bildet!) You make a local portal/portal/desk.ship It will be gitignored copy that to mars and commit it
the .env var is where you LOAD your feedposts from (so this can be ~worpet-bildet) edit .env.local VITE_INDEXER source .env.local npm run dev