Set up a modern Cosmos app by running one command ⚛️
cosmos-kit.mp4
# install
npm install -g create-cosmos-app
# run one command
create-cosmos-app
> name: my-app
cd my-app
yarn && yarn dev
# now your app is running on localhost:3000!
You don’t need to install or configure cosmjs, keplr, nextjs, webpack or Babel.
Everything is preconfigured, ready-to-go, so you can focus on your code!
- ⚡️ Connect easily to 20+ wallets via Cosmos Kit — including Ledger, Keplr, Cosmostation, Leap, Trust Wallet, OKX, XDEFI, Exodus, Wallet Connect and more!
- ⚛️ Sign and broadcast with cosmjs stargate + cosmwasm signers
- 🎨 Build awesome UI with Interchain UI and Explore Components
- 🛠 Render pages with next.js hybrid static & server rendering
- 📝 Leverage chain-registry for Chain and Asset info for all Cosmos chains
🎥 Checkout our videos to learn to learn more about create-cosmos-app
and tooling for building frontends in the Cosmos!
Checkout cosmos-kit for more docs as well as cosmos-kit/react for getting cosmjs stargate and cosmjs signers.
To create a new app, you may choose one of the following methods:
npm install -g create-cosmos-app
Then run the command:
create-cosmos-app
we also made an alias cca
if you don't want to type create-cosmos-app
:
cca
npx create-cosmos-app
npm init cosmos-app
yarn create cosmos-app
Explore examples!
cca --example
cca --name send-example --example send-tokens
cca --name stake-example --example stake-tokens
cca --name vote-example --example vote-proposal
cca --name ibc-example --example ibc-transfer
cca --name grpc-example --example grpc-web-grpc-gateway
uses osmojs
cca --name osmo-example --example osmosis
or the cosmwasm example:
cca --name osmowasm-example --example osmosis-cosmwasm
uses osmojs to swap tokens
cca --name swap-example --example swap-tokens
uses osmojs to provide liquidity
cca --name liquidity-example --example provide-liquidity
cca --name asset-list-example --example asset-list
uses juno-network
cca --name juno-example --example juno
uses stargazejs
cca --name stargaze-example --example stargaze
uses stargazejs
cca --name nft-example --example nft
cca --name cosmwasm-example --example cosmwasm
cca --name tailwind-example --example tailwindcss
Because the nature of how template boilerplates are generated, we generate yarn.lock
files inside of nested packages so we can fix versions to avoid non-deterministic installations.
When adding packages, yarn workspaces will use the root yarn.lock
. It could be ideal to remove it while adding packages, and when publishing or pushing new changes, generating the nested lock files.
In the root, to remove all nested lock files:
yarn locks:remove
When you need to remove/generate locks for all nested packages, simply run yarn locks
in the root:
yarn locks
Checkout these related projects:
- @cosmology/telescope Your Frontend Companion for Building with TypeScript with Cosmos SDK Modules.
- @cosmwasm/ts-codegen Convert your CosmWasm smart contracts into dev-friendly TypeScript classes.
- chain-registry Everything from token symbols, logos, and IBC denominations for all assets you want to support in your application.
- cosmos-kit Experience the convenience of connecting with a variety of web3 wallets through a single, streamlined interface.
- create-cosmos-app Set up a modern Cosmos app by running one command.
- interchain-ui The Interchain Design System, empowering developers with a flexible, easy-to-use UI kit.
- starship Unified Testing and Development for the Interchain.
🛠 Built by Cosmology — if you like our tools, please consider delegating to our validator ⚛️
AS DESCRIBED IN THE LICENSES, THE SOFTWARE IS PROVIDED “AS IS”, AT YOUR OWN RISK, AND WITHOUT WARRANTIES OF ANY KIND.
No developer or entity involved in creating this software will be liable for any claims or damages whatsoever associated with your use, inability to use, or your interaction with other users of the code, including any direct, indirect, incidental, special, exemplary, punitive or consequential damages, or loss of profits, cryptocurrencies, tokens, or anything else of value.