Git Product home page Git Product logo

tonkeeper-web's Introduction

Tonkeeper Web Monorepo

Tonkeeper Web is a non-custodial crypto wallet and gateway to blockchain dApps.

Tonkeeper Extension supports Firefox 109.0 or higher version, Google Chrome, and Chromium-based browsers. We recommend using the latest available browser version.

Building locally

# Install `Node.js` version v20.7.0
nvm use

# Install `Yarn` version 4.0.2
corepack enable

Build web script

# Install dependencies
yarn

# Build web app
yarn build:web

Compressed build could be found in /apps/web/build once they're built.

Build extension script

# Install dependencies
yarn

# Build extension apps
yarn build:extension

Compressed builds could be found in /apps/extension/dist/chrome and /apps/extension/dist/firefox once they're built.

Build desktop script

# Install dependencies
yarn

# Build desktop for current OS
yarn build:desktop

Application for your platform could be found in /apps/desktop/out once they're built.

Mac Environment variables:

You can generate an App Store Connect API key to authenticate notarytool by going to the App Store Connect access page and using the "Keys" tab. This API key will look something like AuthKey_ABCD123456.p8 and can only be downloaded once.

Env variable Description
APPLE_API_KEY Filesystem path string to your API key file.
APPLE_API_KEY_ID 10-character alphanumeric ID string. In the previous AuthKey_ABCD123456.p8 example, this would be ABCD123456.
APPLE_API_ISSUER UUID that identifies the API key issuer. You will find this ID in the "Keys" tab where you generated your API key.

Keychain - Certificate Type - Developer ID Application

License

(c) Copyright 2024 Ton APPS UK Limited Released under the Apache License, Version 2.0.

tonkeeper-web's People

Contributors

kuznetsovnikita avatar pvasileff avatar siandreev avatar soralit avatar totemancer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tonkeeper-web's Issues

Information is not displayed

I'm using release 3.6.0 for Linux.

After creating a new wallet, information about transactions etc. is not displayed. In this case, I can successfully go into the settings (including deleting the current wallet) or into the browser.

Screenshot from 2024-02-05 22-03-26

Switch from `@twa.js` to `@tma.js`

Hey! I have found out that you are using @twa.js in apps/twa. It is now deprecated and you should switch @tma.js. Thanks!

Please, let me know if you have any problems or want to suggest an enhancement related to TMA packages.

Tonkeeper Web & Fragment

Hello.

I want to use Tonkeeper Web to interact with Fragment platform. For anything TON related Fragment gives a QR. If I scan it in Tonkeeper Web it just tries to navigate to tonkeeper://... which obviously fails.

How do I push this into wallet.tonkeeper.com?

Hello, there!

Hello, there veryone! v=2&id=e7852a45c2ca5e13d3409970e4f1c42440fffd75ebb3d51f73fdbf6bac70351d&r=%7B%22manifestUrl%22%3A%22https%3A%2F%2Fhamsterkombat.io%2Ftonconnect-manifest.json%22%2C%22items%22%3A%5B%7B%22name%22%3A%22ton_addr%22%7D%5D%7D)

Linux mint - Trace/breakpoint trap - errors for versions >= 3.14.0

System:
Linux mint 5.15.0-91-generic #101-Ubuntu SMP Tue Nov 14 13:30:08 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Live CD

Distrs:
Linux amd64 zip

Checked versions:

Issue:

Today I had a problem sending funds through the client version 3.13.0. I have some error on console:

21:47:19.060 › Amplitude Logger [Warn]: Event was dropped by a plugin
21:47:57.713 › TypeError: Cannot read properties of null (reading 'split')
    at m (file:///media/mint/usbdrive/Tonkeeper-linux-x64/resources/app.asar/.webpack/renderer/main_window/index.js:4892:35570)
    at async f (file:///media/mint/usbdrive/Tonkeeper-linux-x64/resources/app.asar/.webpack/renderer/main_window/index.js:4892:35103)
    at async Object.mutationFn (file:///media/mint/usbdrive/Tonkeeper-linux-x64/resources/app.asar/.webpack/renderer/main_window/index.js:4722:72966)

I tried to update, but any version higher than 3.13.0 gives an error, both on a clean system and a new wallet, and with an old wallet.

mint@mint:~$ '/media/mint/usbdrive/Tonkeeper-linux-x64/Tonkeeper'
21:46:29.605 › Application start-up
21:46:29.608 › Reconnect.
6404 Trace/breakpoint trap   (core dumped) '/media/mint/usbdrive/Tonkeeper-linux-x64/Tonkeeper'

I hope there is a refresh button

I am a MacOS user and I have found that the desktop version does not have any way to update data. For example, after I transfer money, I want to view the transaction status in History, but it does not have any update method. In the mobile version of Tonkeeper, I only need to scroll down to refresh, but the desktop version does not have any refresh method, which means I can only refresh and view the results on my phone

Missing API key

Desktop app local build on branch 'main' (958edfd):

$ tonkeeper --trace-warnings

11:50:11.877 › Application start-up
11:50:11.880 › Reconnect.
11:50:11.895 › Missing connection.
(node:20464) UnhandledPromiseRejectionWarning: TypeError: Cannot read properties of undefined (reading 'split')
    at /usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:509893
    at Generator.next (<anonymous>)
    at /usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:508851
    at new Promise (<anonymous>)
    at l (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:508670)
    at E (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:509722)
    at 4575 (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:477217)
    at r (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:646001)
    at /usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:646553
    at Object.<anonymous> (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:646579)
    at emitUnhandledRejectionWarning (node:internal/process/promises:200:15)
    at processPromiseRejections (node:internal/process/promises:296:13)
    at process.processTicksAndRejections (node:internal/process/task_queues:96:32)
(node:20464) TypeError: Cannot read properties of undefined (reading 'split')
    at /usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:509893
    at Generator.next (<anonymous>)
    at /usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:508851
    at new Promise (<anonymous>)
    at l (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:508670)
    at E (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:509722)
    at 4575 (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:477217)
    at r (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:646001)
    at /usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:646553
    at Object.<anonymous> (/usr/lib/tonkeeper/resources/app.asar/.webpack/main/index.js:8:646579)
11:50:11.940 › Electron's autoUpdater does not support the 'linux' platform. Ref: https://www.electronjs.org/docs/latest/api/auto-updater#platform-notices
11:50:11.944 › { initArgs: [ '/usr/lib/tonkeeper/Tonkeeper', '--trace-warnings' ] }
11:50:12.187 › UI Start-up
11:50:12.188 › 👋 This message is being logged by "renderer.js", included via webpack
11:50:12.344 › Amplitude Logger [Warn]: Event was dropped by a plugin
11:50:12.532 › Aptabase: Failed to send event TypeError: Failed to fetch
    at file:///usr/lib/tonkeeper/resources/app.asar/.webpack/renderer/main_window/index.js:4441:828
    at Generator.next (<anonymous>)
    at fetch.method (file:///usr/lib/tonkeeper/resources/app.asar/.webpack/renderer/main_window/index.js:4441:756)
    at new Promise (<anonymous>)
    at file:///usr/lib/tonkeeper/resources/app.asar/.webpack/renderer/main_window/index.js:4441:572
    at s (file:///usr/lib/tonkeeper/resources/app.asar/.webpack/renderer/main_window/index.js:4441:767)
    at t.AptabaseElectron.pageView (file:///usr/lib/tonkeeper/resources/app.asar/.webpack/renderer/main_window/index.js:68:9402)
    at file:///usr/lib/tonkeeper/resources/app.asar/.webpack/renderer/main_window/index.js:4182:68340
    at Array.forEach (<anonymous>)
    at i.pageView (file:///usr/lib/tonkeeper/resources/app.asar/.webpack/renderer/main_window/index.js:4182:68326)
11:50:13.345 › Amplitude Logger [Error]: Event rejected due to missing API key
11:50:13.346 › Amplitude Logger [Error]: Event rejected due to missing API key
11:50:13.346 › Amplitude Logger [Error]: Event rejected due to missing API key
11:50:13.347 › Amplitude Logger [Error]: Event rejected due to missing API key
11:50:13.787 › Close connection.

dillema is flagged as incorrect phrase incorrectly

Hi, when I'm trying to import my TON wallet using 24 phrases, one of the phrases is "dillema". Somehow, Tonkeeper (the latest version at this time) sees the existing and valid phrase "dillema" as incorrect and doesn't let me to import it by showing an error on client side.

image image

Tails OS support

When installing on Tails OS the application does not start, it is constantly loading, maybe this is due to the fact that the application cannot write the necessary files because tails has a very limited file system. Maybe you can add a choice of where to save the configuration or process it automatically and save it to persistent storage.

UPD:

Checked error messages in dev-tools
image

First it seems to be unable to access through tor proxy, secondly it may have problems accessing local files.

Ugly scroll issue on /history, /discover and some ohter pages

Platfrom: MacOS Sonama: 14.4.1

The desktop version for Mac has a disgusting white scrollbar. I saw you have a css class "hide-scroll" but it doesn't work. The problem is that in the layout of your application, the scrollable component is HistoryPageWrapper from the histroy page, with overflow auto property. Styles from the wrapper with className="hide-scrollbar" are not applied to it

I would really like you to fix this.

Cordially

P.S Is this Electron? Hide the ability to enter into devtools. I'm a little worried


Screenshot 2024-04-09 at 15 45 08

suggestion for new thing

i have suggestion for you to make app like tonkeeper in android , but for linux?
I don't get the best performance in the Firefox Extension

The new group image is not displayed

after changing the image (from emoji to emoji), only the old image is displayed in the application (there is no change when updating the application or restarting it)

1 on the PC web version of the telegram, add a group with a profile image to the tof
2 go to telegram from your phone and use the desktop application to change the group image
3 see the result

additional info:

(change image from emoji to emoji failed)

(changing image to another image failed)

(changing image to emoji failed)

the check can be performed within the same device, the result is the same

Снимок экрана 2024-03-24 071102
image

Windows 10

Версия 1.64.109 Chromium: 123.0.6312.58

Portable Mode

How to user this wallet in portable mode (External usb) on Mac OS?

No such file or directory apps\twa\build

I am trying to build twa but the error X [ERROR] ENOENT: no such file or directory, scandir 'D:\toan99\AppExample\tonkeeper-web\apps\twa\build' appears, I don't know if there is any way to fix it. Thank you
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.