Skip to content

nspcc-dev/panel-fs-neo-org

Repository files navigation

NeoFS

NeoFS is a decentralized distributed object storage integrated with the NEO Blockchain.


GitHub release (latest SemVer) License

Demo

Overview

NeoFS panel showcases NeoFS storage using REST API Gateway as a bridge. This web application is built with React framework under the hood and includes:

  • Deposit and withdraw NeoFS contract
  • Manage containers: all CRUD operations are available
  • Manage objects: create objects with custom attributes, show them and delete
  • Manage ACL and extended ACL fluently

Requirements

  • docker
  • make
  • node (14+)

Quick Start

Clone repo:

$ git clone https://github.com/nspcc-dev/panel-fs-neo-org.git

Set variables in .env file

  • REACT_APP_WC_PROJECT_ID - WalletConnect project id (Can be obtained on WalletConnect website, see https://cloud.walletconnect.com/app)
  • REACT_APP_URL - Web application url
  • REACT_APP_RESTGW - NeoFS REST Gateway, which we use to manage containers and object in neofs (control path)
  • REACT_APP_NETWORK - Network of the Neo (might be mainnet, testnet)
  • REACT_APP_NEOFS_ACCOUNT - Neo3 address of the NeoFS contract

Run next commands from project's root:

$ make

To run development build run:

$ make start

Optionally you can specify PORT=3000.

Locally

You can easily run the node locally in a docker container using @nspcc-dev/neofs-aio.

You need to update the parameters in the .env file to make it work:

REACT_APP_RESTGW=http://localhost:8090/v1

Make instructions

  • Compile the build using make (will be generated in panel.fs.neo.org dir)
  • Start app using make start (PORT=3000 by default)
  • Clean up cache directories using make clean
  • Get release dir with tar.gz using make release
$ make docker/start

Getting started

Wallets

Setup guide

  1. Open Neon wallet
  2. Import a key or generate a new one
  3. Type wallet password
  4. Choose your network (depending on how Panel is configured)
  5. Make a new connection with Panel web page using "Connect wallet" button
  6. Approve connection in the wallet
  7. Now you can use your wallet on the NeoFS Panel

Contributing

Feel free to contribute to this project after reading the contributing guidelines.

Before starting to work on a certain topic, create a new issue first, describing the feature/topic you are going to implement.

License