Skip to content

Latest commit

 

History

History
119 lines (96 loc) · 2.72 KB

README.md

File metadata and controls

119 lines (96 loc) · 2.72 KB

hodl

A simple cryto portfolio app for Urbit.

Enter your transactions in the UI. The data is stored on your ship. CoinGecko API is used to pull price data and calculate your net worth.

Demo

add_transaction.mp4

Installation

On your Urbit's home screen, search for:

~hodler-datder-sonnet

Or paste this in your ship's terminal:

|install ~hodler-datder-sonnet %hodl

Or you can manually install using the Development instructions below.

Usage

  1. Click Add a Transaction button (the $)
  2. Enter the relevant data in the New Transaction form
  3. Submit and view the data in the dashboard

It is also possible to programmatically add Transactions using pokes, see notes/pokes.txt for examples.

Development

  1. Install the bouncer desk sync tool and update the env values in ops/*.yml to match your system configuration.
  2. Clone this repo
  3. In ui/, run npm install
  4. Start a fake ship; ~dev is what's used in the default bouncer config.
  5. Run bin/bounce to sync the agent desk and install on your fake ship
  6. Open http://localhost:3000/apps/hodl/ in your browser
  7. Changes in ui/ will automatically reload the frontend; after making backend changes run bin/sync

Deployment

Make a new glob

  1. Boot a new fake ship; in this example, using ~bus
  2. Merge and mount a desk:
|merge %work our %base
|mount %work
  1. Run npm run build in ui/ to build frontend assets
  2. Copy built dist:
rsync -avL --delete ui/dist/ ~/dev/urbit/ships/bus/work/hodl
  1. Switch dojo working directory:
=dir /=garden
  1. Make glob:
-make-glob %work /hodl
  1. Find the built glob in the mounted ship dir under .urb/put, e.g.
~/dev/urbit/ships/nus/.urb/put
  1. scp to file server, update docket with hash and URL

Publish

  1. Boot a new fake ship; in this example, using ~nus
  2. Fork an existing desk:
|merge %hodl our %webterm
|mount %hodl
  1. Remove existing files:
rm -Rv ~/dev/urbit/ships/nus/hodl/*
  1. Within Urbit git repo:
./symbolic-merge.sh base-dev hodl
./symbolic-merge.sh garden-dev hodl
  1. Copy linked dev files to mount:
cp -rL hodl/* ~/dev/urbit/ships/nus/hodl/
  1. Copy desk contents to mount:
cp -r ./desk/* ~/dev/urbit/ships/nus/hodl
  1. Commit and install:
|commit %hodl
|install our %hodl
  1. Publish:
:treaty|publish %hodl

Roadmap

  • responsive mobile UI
  • connect a wallet to automatically import transactions
  • data visualization

Questions or Feedback

DM me on the network at ~datder-sonnet, or join the app group:

~hodler-datder-sonnet/hodl