Katana Development Starter Kit¶
This tutorial will help you set up and use the Katana Development Starter Kit for building applications on Katana and its testnet, Tatara.
Note: Tatara will deprecate on or around the release of Public Mainnet. A new testnet will release along with it
What is Katana?¶
Katana is a chain focused on providing optimized infrastructure for DeFi applications with integrated “money legos” - composable financial building blocks that developers can use to create new financial applications. It is focused on creating an experience where applications building on it can tap into deeper liquidity and offer higher yields than is available on any other chain.
Prerequisites¶
Before you begin, make sure you have a Conduit API key that’s been whitelisted. Follow instructions here.
Then, make sure you have the following tools installed:
- Bun - A fast JavaScript runtime and package manager
- Foundry - A toolkit for Ethereum application development
- Git - Version control
Installing Bun¶
curl -fsSL https://bun.sh/install | bash
More info here.
Installing Foundry¶
curl -L https://foundry.paradigm.xyz | bash
foundryup
More info here
Setting Up Your Project¶
-
Clone the repository and navigate to it:
git clone https://github.com/katana-network/specialk cd specialk
-
Create an environment file by copying the example:
cp .env.example .env
-
Edit
.env
to add your RPC endpoints:Get your testnet API Key hereTATARA_RPC_URL=https://your-tatara-rpc-url
-
Install dependencies:
bun install
Running a Local Tatara Fork¶
To develop locally without spending testnet tokens, you can run a local fork of the Tatara testnet.
Step 1: Start Anvil Fork (Terminal 1)¶
bun run start:anvil:tatara
Step 2: Verify the Fork (Terminal 2)¶
bun run verify:anvil:tatara
Connecting to the Fork¶
You can now connect MetaMask or another wallet to your local fork:
- Network Name: Tatara Local Fork
- RPC URL:
http://localhost:8545
- Chain ID: 471
- Currency Symbol: ETH
Opening the Example App¶
Build the example app with:
bun run build:all
Going forward you can just run bun run build
to rebuild the app-only,
but the first build:all
run will build the ABIs, the MCP server,
and more.
This will:
- Compile your TypeScript code
- Create a
dist
folder with your built application - Copy static assets like HTML, CSS, and images
Then, make sure your local fork is running (Terminal 1) and serve the compiled web app with any server, e.g.:
cd dist
npx http-server
Exploring the Interfaces¶
One of the key features of this starter kit is the comprehensive set of
interfaces for Katana’s “money legos.” Browse the interfaces
directory to see
what’s available. The README of that folder contains a full list of contracts
and their descriptions.
Alternatively, for a more readable UI, you can use the Katana Contract Directory UI.
Next Steps¶
Now that you have a working development environment, you can:
- Explore the example App code to understand how it interacts with Katana
- Review the interfaces to understand available contracts
- Start building your own application using the “money legos”
For more tutorials, examples, and inspiration, please see the awesome-katana repo.
Troubleshooting¶
If you encounter issues:
- Make sure your RPC URL in
.env
is correct - Check that port 8545 isn’t already in use by another application
- Ensure Foundry is properly installed and
anvil
is in your PATH - If the script isn’t executable, run
chmod +x scripts/start_anvil.sh
- If all else fails, let us know in the starter kit issues!
Happy building on Katana! 🚀