Explore the Merkle Forest from the comfort of your browser.
This repo is responsible for standalone tool that lives at https://explore.ipld.io
Component code lives in a separate repo at ipld-explorer-components
The app will use HTTP API via ipfs-http-client
provided by locally running IPFS node with correct CORS headers set up, and fallback to using js-ipfs otherwise.
The app is built with create-react-app
. Please read the docs.
With node
> 10 (but < 12) and npm
@ 6+ installed, run
npm install
When developing you can run the dev server, the unit tests, and the storybook component viewer and see the results of your changes as you save files.
In separate shells run the following:
# Run the unit tests
npm test
# Run the dev server @ http://localhost:3000
npm start
# Run the UI component viewer @ http://localhost:9009
npm run storybook
To create an optimized static build of the app, output to the build
directory:
# Build out the html, css & jss to ./build
npm run build
To inspect the built bundle for bundled modules and their size, first build
the app then:
# Run bundle
npm run analyze
The following command will run the app tests, watch source files and re-run the tests when changes are made:
npm test
The uses Jest to run the isolated unit tests. Unit test files are located next to the component they test and have the same file name, but with the extension .test.js
The following command will perform standard
linting on the code:
npm run lint
To do a single run of the tests and generate a coverage report, run the following:
npm run test:coverage
The translations are stored on ./public/locales and the English version is the source of truth. We use Transifex to help us translate WebUI to another languages.
If you're interested in contributing a translation, go to our page on Transifex, create an account, pick a language and start translating.
You can read more on how we use Transifex and i18next in this app at https://github.com/ipfs-shipyard/ipfs-webui/blob/master/docs/LOCALIZATION.md
Feel free to dive in! Open an issue or submit PRs.
To contribute to IPFS in general, see the contributing guide.
MIT © Protocol Labs