Uplink is written in TS with Svelte. It is developed as a new foundation for implementing Warp features in a universal application.
The goal should be to build a hyper-customizable application that can run anywhere and support extensions.
To get running fast, ensure this project is cloned, with the latest dependencies and submodules installed.
Standard Steps:
git clone https://github.com/Satellite-im/UplinkWeb.git
npm install
Now, run a server locally and open it in your favorite browser:
Usually, the URL served will be this
npm run dev
-
Install Xverse Chrome extension (or Unisat)
-
In Xverse, go to Settings -> General -> Network and select 'Testnet'
-
Get some free Testnet BTC from a faucet. For example https://bitcoinfaucet.uo1.net/send.php
-
Install the MetaMask Chrome extension
-
In Metamask, Open the dropdown in the top left corner, and select Sepolia (This is the Ethereum test net currently)
-
Go to https://faucets.chain.link and select Sepolia ETH and LINK. Press continue and paste your address.
- While chatting with another user in UplinkWeb, click the
Create Payment Request
button on the bottom chat bar (coin exchange icon, next to chat input).
-
Select the asset type. If selecting ETH.ERC20, you will need to put in the asset ID as well. The asset ID of LINK on Sepolia test net is
0x779877A7B0D9E8603169DdbD7836e478b4624789
(You can see this ID in MetaMask if you own some LINK: click on it, then near the top click the '3 dots' icon, and select 'Token details'. The ID is listed underToken contract address
). -
In UplinkWeb, once you select the asset (and ID if applicable), enter an amount. Then click the
Request
button. A clickable message will appear in the chat. Anyone clicking this message will get a prompt via the Chrome extension to make the transfer. (Expect at least 10 seconds for a transfer to go through on the Ethereum network).
npm i
npm run build
npx cap sync
- then for Android
npx cap open android
or npx cap run android
- for iOS
npx cap open ios
-
Update the port to 3000 in the
vite.config.js
file, as Capacitor commands require this port and run server withnpm run dev
-
Build the mobile app for Android or iOS with live reload enabled by running:
npx cap run android -l --external
or
npx cap run ios -l --external
-
Select your device in the terminal and wait for the app to build.
-
To show logs from Android app, run
adb logcat | grep Capacitor
All contributions are welcome! Please keep in mind we're still a relatively small team, and any work done to ensure contributions don't cause bugs or issues in the application is much appreciated.