Requirements
tools, accounts, keys.
What to install on your computer, what to sign up for, which keys are optional, and what running SOLSCOPE costs.
01Tools on your computer
| Tool | Version | Why |
|---|---|---|
| Flutter SDK (includes Dart) | 3.41 or newer, stable (Dart 3.11+) | Builds the app. pubspec.yaml declares Flutter 3.41.0 as its lower bound: the package versions locked in pubspec.lock need Dart 3.11, which ships with Flutter 3.41, and the iOS wallet-return wiring uses the scene-lifecycle API added in Flutter 3.38. Verified with Flutter 3.41.4. Install |
| Google Chrome | current | Runs the web build locally. |
| Xcode + CocoaPods | Xcode 15 or newer (verified with 26.4.1) | iOS builds. Needs a Mac. |
| Android Studio | Narwhal 2025.1.1 or newer | Android SDK Platform 36 (compileSdk = 36), JDK 17, emulator and the keytool command. |
No Node.js, database or server runtime is needed: SOLSCOPE has no backend.
flutter --version
flutter doctor # lines for platforms you don't build for may stay yellow
02Accounts
| Account | Needed for | |
|---|---|---|
| A Solana RPC provider (Helius, QuickNode, Alchemy or your own node) | Production traffic. The public fallback is rate limited. | Before launch |
| A static host (Vercel, Netlify, Cloudflare Pages, Firebase Hosting, nginx…) | The web terminal and, optionally, your admin JSON file | For web |
| Apple Developer Program | App Store and TestFlight | For iOS |
| Google Play Console | Google Play | For Android |
| Firebase | Not used. SOLSCOPE has no Firebase dependency (docs/FIREBASE.md). | Not needed |
Apple guideline 3.1.5(i) requires wallet apps to come from a developer enrolled as an organisation. Enrol your company, not a personal account, if you plan to publish on iOS.
03API keys
All keys are optional for a first run. The exact names and where they go are in Configuration.
| Provider | Unlocks | |
|---|---|---|
| Your own Solana RPC URL (your provider account) | Reliable reads and transaction submission; indexed reads such as the top-holder list if your endpoint serves them | Before launch |
| Helius (free tier) | Full holder count, dev-wallet launch history, funding source | Recommended |
| CoinGecko Demo | A higher rate limit for the SOL reference price | Optional |
Jupiter, Dexscreener and GeckoTerminal need no key. Every key above is for an account you open with that provider: you accept their terms and you pay them for anything above their free tier. None of them is included in the item price.
04What your users can run
| Platform | Minimum | Notes |
|---|---|---|
| Web | Current browsers | Verified: flutter build web --release succeeds. |
| iOS | iOS 13.0 | IPHONEOS_DEPLOYMENT_TARGET in ios/Runner.xcodeproj. Store build unverified in this documentation pass. |
| Android | Flutter's default minSdk | android/app/build.gradle.kts. Store build unverified in this documentation pass. |
A macos/ folder is in the source and builds; it is not a documented store target. Linux and Windows targets are not generated.
05Costs not included in the price
The item price covers the source code and this documentation. These third-party services are billed by their providers, on your own accounts. You are responsible for any usage costs incurred through your own API accounts. Check each provider's current pricing.
- Solana RPC provider (Helius, QuickNode, Alchemy or your own node): needed for production traffic; you pay its plan above the free tier.
- Helius API key (optional): free tier, then billed by Helius to you.
- CoinGecko API (optional): the Demo key is free with rate limits; paid plans are billed by CoinGecko to you.
- Jupiter API: the app uses Jupiter's keyless endpoint; if you move to a keyed Jupiter plan, it is billed by Jupiter to you.
- Firebase (optional, not used by default): SOLSCOPE has no Firebase dependency and ships no Firebase project, ID or key. If you choose to publish your admin config through Firebase Remote Config (a small code addition,
docs/FIREBASE.md) or host the web build on Firebase Hosting, it runs in your own Firebase project: Remote Config is free, Hosting has a free quota on the Spark plan, and usage above it on the Blaze (pay-as-you-go) plan is billed by Google to you. Firebase pricing. - Static hosting and a domain for the web build and your admin JSON: paid by you (often free for small traffic).
- Apple Developer Program (yearly) and Google Play Console (one-time) to publish the apps: paid by you.
- Solana network fees: paid by the wallet that signs each swap — your users, not you.
No server, database or cloud function is needed, so there is none to pay for. Who pays: you, the buyer, for every account above; your users pay only the Solana network fee of their own swaps.
06Setting up each external service
All of these are optional for a first run. Each one is an account you open in your own name.
- A Solana RPC endpoint (before launch)Sign up with an RPC provider such as Helius, QuickNode or Alchemy (provider guides: Helius docs, QuickNode Solana docs, Alchemy docs), create a Solana mainnet endpoint, and copy its HTTPS URL. For a web build, restrict the endpoint to your site's domain in the provider's dashboard (often called "allowed origins" or "domain allowlist"), because a web build's URL is readable by visitors. Put the URL in
SOLSCOPE_RPC_URLor Setup → Data sources. - Helius API keyAt dashboard.helius.dev create a free account, open API Keys in the left menu and copy the key (Helius guide: Authentication). Put it in
SOLSCOPE_HELIUS_API_KEYor Setup → Data sources. For a web build, add your domain to the key's allowed domains. - CoinGecko Demo keyAt coingecko.com/en/api create a Demo account, open Developer Dashboard → + Add New Key, create a key and copy it into
SOLSCOPE_COINGECKO_DEMO_KEY(CoinGecko guide: Setting up your API key). - Your fee account (Jupiter)No Jupiter account is needed for quotes (Jupiter guide: dev.jup.ag/docs). To be paid a fee you need a token account, not a wallet address: Setting up earnings → The fee account walks through it.
- Firebase (only if you choose it)Not needed to run SOLSCOPE. To read your admin config from Remote Config instead of a static JSON file, follow
docs/FIREBASE.mdin the package (you addfirebase_coreandfirebase_remote_configto your own build) and Google's Remote Config guide; to host the web build there, follow Firebase Hosting. Use your own Firebase project; none ships with the item. - Check itIn a build with your passcode, Setup → Data sources shows each key as Set and What is answering right now shows your RPC and whether indexed reads are served.