create-terra-app v0.10.0
create-cosmos-app
Set up a modern Cosmos app by running one command ⚛️
Demo
https://user-images.githubusercontent.com/545047/192061992-f0e1106d-f4b2-4879-ab0a-896f22ee4f49.mp4
Overview
# 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!Get Started Immediately
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 keplr + keplr mobile via wallet connect
- ⚛️ Sign and broadcast with cosmjs stargate + cosmwasm signers
- 🛠 Render pages with next.js hybrid static & server rendering
- 🎨 Build awesome UI with Cosmos Kit and Chakra UI
- 📝 Leverage chain-registry for Chain and Asset info for all Cosmos chains
Education & Resources
🎥 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.
Creating an App
To create a new app, you may choose one of the following methods:
global install
npm install -g create-cosmos-appThen run the command:
create-cosmos-appwe also made an alias cca if you don't want to type create-cosmos-app:
ccanpx
npx create-cosmos-appnpm
npm init cosmos-app Yarn
yarn create cosmos-app Examples
Explore examples!
cca --exampleSend Tokens
cca --name cca-sendtokens --example --template send-tokensOsmosis
uses osmojs
cca --name myosmoapp --example --template osmosisor the cosmwasm example:
cca --name osmowasm --example --template osmosis-cosmwasmJuno
uses juno-network
cca --name myjunoapp --example --template junoStargaze
uses stargazejs
cca --name mystarsapp --example --template stargazeCosmWasm
cca --name mywasmapp --example --template cosmwasmTailwind
cca --name cca-tailwind --example --template tailwindcssDevelopment
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:removeWhen you need to remove/generate locks for all nested packages, simply run yarn locks in the root:
yarn locksCredits
🛠 Built by Cosmology — if you like our tools, please consider delegating to our validator ⚛️
Code built with the help of these related projects:
- @cosmwasm/ts-codegen for generated CosmWasm contract Typescript classes
- @osmonauts/telescope a "babel for the Cosmos", Telescope is a TypeScript Transpiler for Cosmos Protobufs.
- chain-registry Cosmos chain registry and chain info.
- cosmos-kit A wallet connector for the Cosmos.
3 years ago