A full‑stack app built on the Stellar Testnet, showcasing wallet creation, funding, XLM payments, balance checks, and Soroban smart‑contract interactions — wrapped in a clean, minimal dark UI.
- Create a Stellar wallet in‑app
- Copy public & secret keys
- Fund wallet using Friendbot (Testnet)
- Check account balances
- Send XLM via secret‑key signing
- No Freighter dependency (demo‑safe & reliable)
- Interact with a Soroban smart contract
set(value)andget()functions- Uses simulate → prepare → sign → submit flow
- Minimal nude dark theme
- Centered, responsive layout
- Copy‑friendly key display
- Clean UX optimized for demos
Frontend
- React (Vite)
- Custom CSS (minimal dark theme)
Backend
- FastAPI
stellar-sdk- Stellar Horizon (Testnet)
- Soroban RPC
├── backend/
│ ├── app.py
│ ├── wallet.py
│ ├── payments.py
│ ├── soroban_client.py
│ └── account.py
│
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ ├── api.js
│ │ ├── App.jsx
│ │ └── index.css
│ └── main.jsx
│
└── README.mdcd backend
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
uvicorn app:app --reloadBackend runs at:
http://127.0.0.1:8000
Swagger docs:
http://127.0.0.1:8000/docscd frontend
npm install
npm run devFrontend runs at:
http://localhost:51731. Wallet → Create
Create wallet in‑app
Copy public & secret key
Wallet → Fund
Fund wallet via Friendbot (Testnet)
2. Balance
Paste public key → view balances
Wallet → Send
Paste sender secret key
Paste destination public key
3. Send XLM
4. Soroban
Use secret key
Set a value
Get stored value from contract- Runs only on Stellar Testnet
- Secret keys are exposed for demo purposes
- Do NOT use mainnet keys
- Freighter support is optional
For demo reliability, this app allows direct secret‑key signing on testnet instead of relying on browser wallets. This ensures:
- No extension issues
- Predictable behavior
- Smooth judge experience
- Mainnet support
- Freighter‑only signing mode
- Transaction history
- Better Soroban value decoding
👨💻 Author Dev Vrat Mishra