Package Exports
- create-near-app
- create-near-app/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (create-near-app) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Create NEAR App
Quickly build apps backed by the NEAR blockchain
Prerequisites
Make sure you have a current version of Node.js installed – we are targeting versions 16+
for JS contracts and 18+
for frontend/gateways.
Read about other prerequisites in our docs.
Getting Started
To create a new NEAR project run this and follow interactive prompts:
npx create-near-app@latest
Follow the instructions in the README.md in the project you just created! 🚀
Contracts
You can create contracts written in:
Javascript
Rust
::: We strongly recommend you to follow our smart contract quickstart if you are new to NEAR contracts. :::
For testing we use a sandboxed environment. You can write the tests in JavaScript or Rust.
WebApps
You can create a web application in:
::: We strongly recommend you to follow our web app quickstart if you are new to NEAR WebApps. :::
Consider using
pnpm
to handle the frontend, since it is much faster thannpm
andyarn
.
Using CLI arguments to run create-near-app
This CLI supports arguments to skip interactive prompts:
npx create-near-app
<project-name>
--frontend next-app|next-page|none
--contract js|rs|none
--install
Use --install
to automatically install dependencies from all package.json
files.
When using arguments, all arguments are required, except for --install
.
Getting Help
Check out our documentation or chat with us on Discord. We'd love to hear from you!
Contributing to create-near-app
To make changes to create-near-app
itself:
- clone the repository (Windows users, use
git clone -c core.symlinks=true
) - in your terminal, enter one of the folders inside
templates
, such astemplates/frontend/next-app
- now you can run
pnpm install
to install dependencies andpnpm run dev
to run the local development server, just like you can in a new app created withcreate-near-app
About commit messages
create-near-app
uses semantic versioning and auto-generates nice release notes & a changelog all based off of the commits. We do this by enforcing Conventional Commits. In general the pattern mostly looks like this:
type(scope?): subject #scope is optional; multiple scopes are supported (current delimiter options: "/", "\" and ",")
Real world examples can look like this:
chore: run tests with GitHub Actions
fix(server): send cors headers
feat(blog): add comment section
If your change should show up in release notes as a feature, use feat:
. If it should show up as a fix, use fix:
. Otherwise, you probably want refactor:
or chore:
. More info
Deploy create-near-app
If you want to deploy a new version, you will need two prerequisites:
- Get publish-access to the NPM package
- Get write-access to the GitHub repository
- Obtain a personal access token (it only needs the "repo" scope).
- Make sure the token is available as an environment variable called
GITHUB_TOKEN
Then run one script:
npm run release
Or just release-it
License
This repository is distributed under the terms of both the MIT license and the Apache License (Version 2.0). See LICENSE and LICENSE-APACHE for details.