A pixel-styled terminal interface for exploring and interacting with the Monad Testnet.
- Connect Wallet
- Type any command into the terminal (e.g.
help,check pnl MON 1 to USDC) - Check FAQs for more commands and important information 🤖
| Command | Description |
|---|---|
| help | Show command help menu |
| analyze | Analyze wallet Token and NFT interactions |
| stake | Initiate aPriori staking process |
| stake aprMON | Input how much MON you want to stake |
| confirm-stake | Execute and finalize staking process |
| check balance | View token balance |
| check pnl 1 to USDC | Simulate PnL from recent token performance |
| record stats | Record your last PnL on-chain (24h cooldown) |
| achievements | View your unlocked achievements |
| mint <achievement_name> | Mint a soulbound achievement NFT |
| best price for 1 to USDC | Compare DEX prices |
| swap to | Quote a token swap (except MON atm) |
| confirm to | Execute a quoted swap |
| show my nfts | Display your NFTs |
| send to | Send token to another wallet |
| token report 1 to USDC | View 7-day history and sentiment |
- ⚛️ Frontend: React + Vite
- 🎨 Styling: Retro pixel-art CSS (CRT-inspired)
- 🔐 Wallet: wagmi + ethers.js
- 📊 Charting: Recharts
- 🛠 Backend: Node.js + Express (Railway-hosted)
- 🌐 APIs: Alchemy, Monorail, custom integrations
-
Clone the repo
git clone https://github.com/MrJAO/Mon-Terminal.git cd Mon-Terminal -
Backend setup (
mcp-server)cd mcp-server npm install # create .env with required variables (see below) npm run dev # or `node index.js`
-
Frontend setup
cd ../src npm install npm run dev -
Open
http://localhost:5173in your browser and interact!
# Port (default 3001)
PORT=3001
# Contract Addresses for Backend
MON_TERMINAL_ADDRESS=0xD5fC940644e5527D97cAFede0BE9ce78F9067F33 (Record Stats Smart Contract)
ACHIEVEMENT_NFT_ADDRESS=0x1f036DB021e447b083D8F3c9F875464d17fFd18F (Achievements Smart Contract)
# Alchemy API
ALCHEMY_API_KEY=Your API KEY
ALCHEMY_TESTNET_RPC_URL=Your RPC URL (backup)
# Monorail token resolver
MONORAIL_DATA_API=https://api.monorail.xyz
MONORAIL_API_URL=https://testnet-pathfinder-v2.monorail.xyz
MAX_HOPS=3
SLIPPAGE=100
DEADLINE=60
REACT_APP_BACKEND_URL=YOUR Railyway App link
MONORAIL_API_URL=https://testnet-pathfinder-v2.monorail.xyz
VITE_MONAD_RPC_UR=https://testnet-rpc.monad.xyz
VITE_MON_TERMINAL_ADDRESS=0xD5fC940644e5527D97cAFede0BE9ce78F9067F33 (Record Stats Smart Contract)
VITE_ACHIEVEMENT_NFT_ADDRESS=0x1f036DB021e447b083D8F3c9F875464d17fFd18F (Achievements Smart Contract)cd mcp-server
Create Dockerfile
Paste these inside your Dockerfile:
FROM node:18
# Create app directory
WORKDIR /app
# Install Python3, venv, and pip
RUN apt-get update && \
apt-get install -y python3 python3-venv python3-pip && \
rm -rf /var/lib/apt/lists/*
# Create a virtual environment for Python dependencies
RUN python3 -m venv /opt/venv
ENV PATH="/opt/venv/bin:$PATH"
# Install Python dependencies inside the venv
RUN pip install --no-cache-dir requests
# Copy package files and install Node dependencies
COPY package*.json ./
RUN npm install
# Copy the rest of the app code
COPY . ./
# Expose the port your Express app listens on
EXPOSE 3001
# Start the Express server #
CMD ["node", "index.js"]- Connect GitHub repo → select the
mcp-serverfolder - Choose Dockerfile as the builder
- Add environment variables in Railway dashboard
- Deploy and note the generated domain (e.g.
https://mon-terminal.up.railway.app)
- Push
src/changes to GitHub - Vercel will auto-deploy your React app
- Monad Documentation
- Monorail MCP Server (GitHub)
- Fast Agent (GitHub)
- Alchemy Token API Quickstart
- Alchemy NFT API Quickstart
- Alchemy Transfers API Quickstart
Made with 💜 by @CryptoModJAO
Feel free to tag me for feedback, suggestions, or bug reports.