-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 33670d5
Showing
28 changed files
with
26,442 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. | ||
# Developer note: near.gitignore will be renamed to .gitignore upon project creation | ||
# dependencies | ||
/node_modules | ||
/.pnp | ||
.pnp.js | ||
|
||
# build | ||
/out | ||
/dist | ||
|
||
# keys | ||
/neardev | ||
|
||
# testing | ||
/coverage | ||
|
||
# production | ||
/build | ||
|
||
# misc | ||
.DS_Store | ||
.env.local | ||
.env.development.local | ||
.env.test.local | ||
.env.production.local | ||
/.cache | ||
|
||
npm-debug.log* | ||
yarn-debug.log* | ||
yarn-error.log* | ||
|
||
/contract/target |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
tasks: | ||
- init: yarn | ||
command: yarn dev | ||
ports: | ||
- port: 1234 | ||
onOpen: open-browser |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,102 @@ | ||
holy-cube-amber | ||
================== | ||
|
||
This [React] app was initialized with [create-near-app] | ||
|
||
|
||
Quick Start | ||
=========== | ||
|
||
To run this project locally: | ||
|
||
1. Prerequisites: Make sure you've installed [Node.js] ≥ 12 | ||
2. Install dependencies: `yarn install` | ||
3. Run the local development server: `yarn dev` (see `package.json` for a | ||
full list of `scripts` you can run with `yarn`) | ||
|
||
Now you'll have a local development environment backed by the NEAR TestNet! | ||
|
||
Go ahead and play with the app and the code. As you make code changes, the app will automatically reload. | ||
|
||
|
||
Exploring The Code | ||
================== | ||
|
||
1. The "backend" code lives in the `/contract` folder. See the README there for | ||
more info. | ||
2. The frontend code lives in the `/src` folder. `/src/index.html` is a great | ||
place to start exploring. Note that it loads in `/src/index.js`, where you | ||
can learn how the frontend connects to the NEAR blockchain. | ||
3. Tests: there are different kinds of tests for the frontend and the smart | ||
contract. See `contract/README` for info about how it's tested. The frontend | ||
code gets tested with [jest]. You can run both of these at once with `yarn | ||
run test`. | ||
|
||
|
||
Deploy | ||
====== | ||
|
||
Every smart contract in NEAR has its [own associated account][NEAR accounts]. When you run `yarn dev`, your smart contract gets deployed to the live NEAR TestNet with a throwaway account. When you're ready to make it permanent, here's how. | ||
|
||
|
||
Step 0: Install near-cli (optional) | ||
------------------------------------- | ||
|
||
[near-cli] is a command line interface (CLI) for interacting with the NEAR blockchain. It was installed to the local `node_modules` folder when you ran `yarn install`, but for best ergonomics you may want to install it globally: | ||
|
||
yarn install --global near-cli | ||
|
||
Or, if you'd rather use the locally-installed version, you can prefix all `near` commands with `npx` | ||
|
||
Ensure that it's installed with `near --version` (or `npx near --version`) | ||
|
||
|
||
Step 1: Create an account for the contract | ||
------------------------------------------ | ||
|
||
Each account on NEAR can have at most one contract deployed to it. If you've already created an account such as `your-name.testnet`, you can deploy your contract to `holy-cube-amber.your-name.testnet`. Assuming you've already created an account on [NEAR Wallet], here's how to create `holy-cube-amber.your-name.testnet`: | ||
|
||
1. Authorize NEAR CLI, following the commands it gives you: | ||
|
||
near login | ||
|
||
2. Create a subaccount (replace `YOUR-NAME` below with your actual account name): | ||
|
||
near create-account holy-cube-amber.YOUR-NAME.testnet --masterAccount YOUR-NAME.testnet | ||
|
||
|
||
Step 2: set contract name in code | ||
--------------------------------- | ||
|
||
Modify the line in `src/config.js` that sets the account name of the contract. Set it to the account id you used above. | ||
|
||
const CONTRACT_NAME = process.env.CONTRACT_NAME || 'holy-cube-amber.YOUR-NAME.testnet' | ||
|
||
|
||
Step 3: deploy! | ||
--------------- | ||
|
||
One command: | ||
|
||
yarn deploy | ||
|
||
As you can see in `package.json`, this does two things: | ||
|
||
1. builds & deploys smart contract to NEAR TestNet | ||
2. builds & deploys frontend code to GitHub using [gh-pages]. This will only work if the project already has a repository set up on GitHub. Feel free to modify the `deploy` script in `package.json` to deploy elsewhere. | ||
|
||
|
||
Troubleshooting | ||
=============== | ||
|
||
On Windows, if you're seeing an error containing `EPERM` it may be related to spaces in your path. Please see [this issue](https://github.com/zkat/npx/issues/209) for more details. | ||
|
||
|
||
[React]: https://reactjs.org/ | ||
[create-near-app]: https://github.com/near/create-near-app | ||
[Node.js]: https://nodejs.org/en/download/package-manager/ | ||
[jest]: https://jestjs.io/ | ||
[NEAR accounts]: https://docs.near.org/docs/concepts/account | ||
[NEAR Wallet]: https://wallet.testnet.near.org/ | ||
[near-cli]: https://github.com/near/near-cli | ||
[gh-pages]: https://github.com/tschaub/gh-pages |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
module.exports = { | ||
presets: ['@babel/preset-env', '@babel/preset-react'], | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
[build] | ||
rustflags = ["-C", "link-args=-s"] |
Oops, something went wrong.