TokelPlatform / tokel_dapp

Tokel's All-In-One application. Featuring a coin wallet, token wallet, tokenDEX, NFT marketplace and a token creation page.
https://tokel.io
MIT License
38 stars 24 forks source link

The Future of Tokenization




nft

About

Tokel Platform is Komodo ecosystem's token platform. It consists of :

Download the latest release here

For more information about the project please join our Discord or check out tokel web

How it works

Git branches and development

The default branch in the Github repo is development. However, releases are cut from the main branch. In general, PRs should be made against the development branch and reviewed by at least one other person before being merged. When ready for a release, a PR should be made from development to main and reviewed. Once happy with the PR, it can be merged and then a release can be drafted for distribution.

Installing & Contributing

Make sure you are runing node 16. You can use nvm to manage your node versions. Now, just go to the root directory and run:

yarn install

This will install all dependencies located in package.json and src/electron/package.json

Note: The application is using nspv-js. Feel free to take a look at it and understand what it does.

To contribute with the project's development you can fork the repo and develop your changes in a new branch there. Try naming it like feature/awesome-feature-name or bug/succinct-name-here to make things easier. Once you're done with your changes, you can trigger a Pull Request to the main repo, on the development branch and someone will take a look at it.

Starting Development

Start the app in the dev environment:

yarn dev

The app will automatically connect to a test network, in which you can just "create an account" by typing anything you want in the Seed Phrase input. Later you can use this same Key you just used here to login and your information will be loaded again.

Tests

We currently have very little tests in our dApp, so do feel free to help us out with testing or by developing tests for your own changes if you're submitting a PR. We are using Jest for component testing and Testcafe for end-to-end UI testing as our test libraries.

Packaging for Production

To package apps for the local platform:

yarn build && yarn package

Automatic Github Distribution

The tokel_app project has a Github Action which allows builds for Linux/Mac/Windows to be automatically built and attached as assets to a Github Release. The process is as follows:

  1. Push commits as normal to Github
  2. Merge development into main
  3. Create a new pre-release release in Releases. Important: the pre-release needs to be tagged with the same version number in src/electron/package.json, but with a v prepended. So if the version in package.json is 0.5.1, the release should be tagged as v0.5.1 (the release name can be whatever you want).
  4. Creating a pre-release will trigger the publish Github Action, which in turn uses Electron Builder to automatically build distributables for Linux/Mac/Windows and attach them to the previously created pre-release (this is why the release tag matching the package version is important).
  5. Once the Github Action completes, the platform-specific packages can be downloaded/test. Once happy, change the release from a pre-release to released.

Docs

nSPV

SPV technology Bitcoin Wiki - SPV

articles by Jl777

nSPV a simple approach to superlight clients leveraging notarizations

nSPV reference cli client

libnspv: evolution of nSPV

Komodo docs nSPV

License

MIT ©