tao-web implements the tao-wallet npm package to let you swap between Bitcoin and USD.

Overview

tao-web

tao-web implements the tao-wallet npm package to let you swap between Bitcoin and USD. tao-wallet currently utilizes the LN Markets API so all Bitcoin you send to tao-web will be custodied by LN Markets.

Note: LN Markets API access is blocked for US citizens at this time.

How to Install

Clone the repo and navigate to it:

git clone https://github.com/cold-sats/tao-web
cd tao-web

Run npm install to install dependencies:

npm i

Install Angular CLI globally:

npm i -g @angular/cli

Run on http://localhost:3000/#/:

npm start

Contributing

tao-web, tao-wallet and other ongoing projects in the Tao community welcome contributions. Take a look at the issues and open a PR. Join the Tao Discord or Telegram to get involved.

Comments
  • fix: zlib browserify

    fix: zlib browserify

    Fixes polyfill error on zlib

    BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
    This is no longer the case. Verify if you need this module and configure a polyfill for it.
    
    If you want to include a polyfill, you need to:
            - add a fallback 'resolve.fallback: { "zlib": require.resolve("browserify-zlib") }'
            - install 'browserify-zlib'
    If you don't want to include a polyfill, you can use an empty module like this:
            resolve.fallback: { "zlib": false }
    
    opened by andredevjs 2
  • should use tao-wallet npm package

    should use tao-wallet npm package

    ideally this would use the tao-wallet npm package so we can separate UI logic from library logic

    however i think tao-wallet, might not be usable in browser yet

    opened by dannydeezy 1
  • LN Markets API is blocked by CORS

    LN Markets API is blocked by CORS

    Right now when I ping LN Markets endpoint I get a CORS error (you can replicate by running the app and clicking "login"):

    See console for error: Access to XMLHttpRequest at 'https://api.testnet.lnmarkets.com/v1/lnurl/auth' from origin 'http://localhost:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

    Danny mentioned that LN Markets said we had to proxy the request.

    I added a proxy in this commit but it doesn't work: https://github.com/cold-sats/tao-web/commit/bf0742fcbdef26dea305053d3d971952d25b0712

    See this article explaining this proxy: https://levelup.gitconnected.com/fixing-cors-errors-with-angular-cli-proxy-e5e0ef143f85

    image
    opened by cold-sats 1
  • Install Ionic (?) to build native Android / iOS Apps

    Install Ionic (?) to build native Android / iOS Apps

    I've worked with Ionic before but have not set up from scratch. If this repo is going to get into the app store / google play we'll need to use something like Ionic.

    opened by cold-sats 0
  • Add minimum amounts somewhere

    Add minimum amounts somewhere

    LN Markets has minimum amounts:

    -1000 sats when depositing / withdrawing via invoice -$1 when swapping BTC to USD or vice versa -100K when withdrawing on chain

    opened by cold-sats 0
  • Add await to withdraw / swap

    Add await to withdraw / swap

    Right now when user withdraws / swaps they will land on the next page right away. I had await in those methods but there was no response and it was blocking user from moving forward, so I removed await for now.

    We need to add await and error handling. Error handling separately noted here: https://github.com/cold-sats/tao-web/issues/11

    opened by cold-sats 0
  • Add preview for bolt 11 invoices

    Add preview for bolt 11 invoices

    When user inputs a bolt 11 invoice to withdraw via Lightning they should preview the memo + amount.

    Can probably use this: https://www.npmjs.com/package/ln-service

    opened by cold-sats 0
  • Add API error handling in Angular App

    Add API error handling in Angular App

    Right now API errors from tao-wallet (i.e. LN Markets API) are not being handled in the Angular App, so no errors will appear in the browser network tab / console.

    They should be caught with try / catch and displayed in the network tab and as error messages below the submit button.

    Note: errors are being logged to command line in the express.js server.

    opened by cold-sats 0
  • Fix page to not jump when you load each section for the first time

    Fix page to not jump when you load each section for the first time

    When you first load the app and click each item in the menu, the page slightly jumps a bit. I believe it's a CSS issue regarding the size of a container not being known as the page is being loaded.

    opened by cold-sats 0
Releases(v0.1)
  • v0.1(Oct 27, 2022)

    Made the app functional. Limited features include:

    -Depositing Bitcoin via Lightning -Depositing Bitcoin on chain -Withdrawing Bitcoin via Lightning -Withdrawing Bitcoin on chain -Swapping Bitcoin to USD -Swapping USD to Bitcoin

    Source code(tar.gz)
    Source code(zip)
Owner
Steven Ellis
Steven Ellis
Heavily inspired by Angular Forms, this package provides utilities for complex Model-driven form management in Lit-based Web Components.

Heavily inspired by Angular Forms, this package provides utilities for complex Model-driven form management in Lit-based Web Components.

Michele Stieven 7 Aug 30, 2022
Angular 2 building blocks :package: based on Semantic UI

Angular2 & Semantic UI Angular2 - Semantic UI Live demo ng-semantic.herokuapp.com Angular 2 Semantic UI version: 2.2.2 Installation npm install ng-sem

Vlado Tesanovic 997 Nov 21, 2022
Angular multiselect component for web application. Easy to integrate and use.

Angular multiselect component for web application. Easy to integrate and use.

Dinh The Loc 2 Apr 20, 2022
Clon de la tienda online de Mercadona que sirve como práctica de una aplicación web completa utilizando Angular

tienda-online-angular-alumnos Clon de la tienda online de Mercadona que sirve como práctica de una aplicación web completa utilizando Angular TiendaOn

Capitanes Hello, World! School 3 Mar 22, 2022
Angular Library workspace to creating and testing angular libraries

Library Workspace Run Locally Clone the project https://github.com/sametcelikbicak/library-workspace.git Go to the library project directory cd li

Samet ÇELİKBIÇAK 4 Nov 1, 2022
An enterprise-class UI components based on At UI Design and Angular. 🚀 🚀 🚀

An enterprise-class UI components based on At UI Design and Angular. ?? ?? ??

塟愛鎵镞de栤仯 114 Nov 8, 2022
Component infrastructure and Material Design components for Angular

Official components for Angular The Angular team builds and maintains both common UI components and tools to help you build your own custom components

Angular 23.1k Nov 25, 2022
🚀 Style and Component Library for Angular

ngx-ui Component & Style Library for Angular by Swimlane. Installing npm i @swimlane/ngx-ui --S Install the project's peer depencencies (moment, codem

Swimlane 647 Nov 20, 2022
A set of UI components for use with Angular 2 and Bootstrap 4.

#Fuel-UI A set of UI components for use with Angular 2 and Bootstrap 4. See Fuel-UI homepage for live demo and documentation. ##Dependencies Node Gulp

Fuel Interactive 302 Jul 4, 2022
Sam4Sc - a migration assistant for Angular to SCAM (Single Angular Component Modules) and Standalone Components

Sam4Sc - a migration assistant for Angular to SCAM (Single Angular Component Modules) and Standalone Components

Rainer Hahnekamp 6 May 5, 2022
📦 SVGs, fast and developer friendly in Angular

View settings all icons fixed size e.g. 30px button to align all icons distributes button to align all icons onscreen button to align all icons offscr

Push Based 18 Nov 28, 2022
NGX-YOUI is a Highly customizable library of Angular UI components for content and styles

NGX-YOUI NGX-YOUI is an Angular UI Library that can be highly customized with content and styles. You can easily integrate with other CSS frameworks a

NGX-YOUI 4 Aug 18, 2022
Directives, utils, and events for working with angular zoneless

az-zoneless A set of directive and utilities to manage an angular zoneless app. Using this library you can go completly zoneless and still support 3rd

Yariv Katz 6 Nov 11, 2022
converts nuggies to usd and usd to nuggies for a variety of restaurant chains. Also includes a rest api. Built using NextJS and TypeScript

Prices All prices are currently based on the 4-piece from the respective chain or the equivalent lowest amount of nuggies. Plan is to add multiple pri

Sean Maizel 2 Jan 14, 2022
An interactive Bitcoin tutorial for orange-pilled beginners. Illustrates technical Bitcoin concepts using JavaScript and some Bitcoin Core RPC commands. Programming experience is helpful, but not required.

Try Bitcoin Try Bitcoin is an interactive Bitcoin tutorial inspired by and forked from Try Regex, which is inspired by Try Ruby and Try Haskell. It il

Stacie Waleyko 32 Nov 18, 2022
Bitcoin terminal tracker is a terminal app which allow you to track bitcoin price from your terminal

BTC Terminal Tracker Bitcoin terminal tracker is a terminal app which allow you to track bitcoin price from your terminal. In this version (V1.2) I ch

Sina yeganeh 9 Jul 27, 2022
⚡️The Fullstack React Framework — built on Next.js

The Fullstack React Framework "Zero-API" Data Layer — Built on Next.js — Inspired by Ruby on Rails Read the Documentation “Zero-API” data layer lets y

⚡️Blitz 12.3k Nov 21, 2022
MultiSafe is a shared crypto wallet for managing Stacks (STX) and Bitcoin (BTC).

MultiSafe MultiSafe is a shared crypto wallet for managing Stacks (STX) and Bitcoin (BTC). Deploy a MultiSafe https://app.multisafe.xyz/ Features Curr

Trust Machines 21 Nov 23, 2022
Package fetcher is a bot messenger which gather npm packages by uploading either a json file (package.json) or a picture representing package.json. To continue...

package-fetcher Ce projet contient un boilerplate pour un bot messenger et l'executable Windows ngrok qui va permettre de créer un tunnel https pour c

AILI Fida Aliotti Christino 2 Mar 29, 2022