Giter Club home page Giter Club logo

emmanueljet / aepp-boilerplate-react Goto Github PK

View Code? Open in Web Editor NEW
3.0 2.0 4.0 10.34 MB

A ReactJS boilerplate to build æpps in the æternity ecosystem.

Home Page: https://emmanueljet.github.io/aepp-boilerplate-react/

License: ISC License

HTML 26.07% CSS 10.72% JavaScript 63.21%
aeternity aeternity-blockchain reactjs reactjs-boilerplate reactjs-template aepps aepp-boilerplate-react aeternity-boilerplate boilerplate template-repository template react

aepp-boilerplate-react's Introduction

æpp boilerplate ReactJS frontend

This boilerplate allows everyone to easy start when building an æpp with ReactJS on top of the æternity ecosystem. It contains three critical parts:

  • A custom GitHub Action
  • The aepp-sdk-js
  • Easy wallet discovery

Get started

Clone repo via git or use the template button above.

Install the dependencies

npm install

For development purposes (hot-reloading)

npm start

To build the bundle for production

npm run build

For running the integration tests

npm test

Main Features

Custom GitHub Action

We engineered this GitHub Action config to be as versatile as possible while being transparent to the developer. There are no hidden config files and a minimal set of presets where necessary.

build_and_deploy.yml: This Action configuration file named æpp CI/CD is used to build and deploy the æpp boilerplate. It represents a GitHub Action file that performs actions on push changes to the main GitHub branch. The action config performs two main jobs of building and deployment. The build job installs the required NPM dependencies using three node versions (12.x, 14.x, 16.x) then executes the npm run build command to prepare the production-ready files for deployment. The deploy job continues the action workflow to deploy the already prepared production-ready files using gh-pages. This deploy process creates/updates the gh-pages branch that previews the æpp-boilerplate via the provided GitHub Repo Page Link.

You can include a test job if you wish to test your æpp for results before deployment.

aepp-sdk-js integration

This dependency is imported and should work out of the box with this implementation. An initialized client is provided by the aeternity.js file as used in the App.js file to discover a connected wallet.

Easy wallet discovery

Since we aim to make this boilerplate as universally connective as possible, we implemented an easy wallet discovery feature to get the connected Superhero wallet address and AE balance. This process started from the aeternity.js file that uses the imported aepp-sdk-js dependency to create an aeternitySDK method that initializes a RpcAepp client with a wallet scanning feature using the BrowserWindowMessageConnection and WalletDetector functions. The aeternitySDK method is then used in the App.js file to get the connected wallet address and initialized client that provides the AE balance for the connection address.

aepp-boilerplate-react's People

Contributors

emmanueljet avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

aepp-boilerplate-react's Issues

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.