Publishing a React JS App

Valist simplifies the process of uploading your React JS application with various options available. The step-by-step guide provided will ensure a smooth and effortless deployment.

Step 1: Build your project statically

In most cases, you won't have to modify anything about your React build!

For tools like Create React App, you can simply run a normal build and upload your build folder.

Make sure you have created a React app:

npx create-react-app react-project

Then, inside this folder, you can simply run:

npm run build

This will create your build folder.

You can upload this to Valist directly, you're all set!

Step 2: Publishing a Release

Now that you've built your application, you have 3 different options for publishing depending on your preferences!

To publish a Release with the web dashboard, make sure your Project Type is set to web in the settings, then click New Release on your project page.

This will show a simple upload form:

  • The Release Image allows you to attach an image to the release.

  • The Release Name works the same way as the account and project names -- it is an immutable tag that represents the version of the release and is accessible at the account/project/release the path once published.

  • The Display Name is simply a human-readable name as an alternative to the immutable tag.

  • The Description is a Markdown-compatible description for the release.

The next tab allows you to drag and drop or click to upload a folder. Here is where you will drag your build folder:

After clicking Create, you will be prompted to sign a message for the release! ๐Ÿš€

That's all you need to publish web apps with Valist!

After publishing, your application will be highly available via IPFS, using links like the following:

https://bafybeihpv3piaiybqgqcvqmgpq3dkjz55czkndkjdqjpskagml3fnczih4.ipfs.gateway.valist.io/

You can access this IPFS hash from anywhere on the IPFS network including your own node, and from common gateways like IPFS.io, dweb.link, and Cloudflare:

http://bafybeihpv3piaiybqgqcvqmgpq3dkjz55czkndkjdqjpskagml3fnczih4.ipfs.dweb.link/

Please note that IPFS gateways that don't use subdomains are not secure for accessing web applications due to sharing the exact origin.

IPFS Gateways support either or both of the following formats:

  1. Subdomain gateway mode: e.g. https://<CID>.ipfs.dweb.link/

  2. Path gateway mode: e.g. https://ipfs.io/ipfs/<CID>/

You only want to access web apps from IPFS via the first type of gateway. This is because the browser will treat the subdomain as a different "origin" and therefore treat local storage and other security policies in a way that prevents other websites from interfering with your app.

Last updated