AXIS docs
v1.0.0
Live demo Get help
● Start · Who pays for what

Costs and third-party services
not included in the price.

The item price covers the source code. Running and publishing a terminal involves outside services, accounts and fees. This page names every one the code depends on, says who pays, and marks what is optional. Prices change, so none are quoted here: check each provider's current pricing page.

01At a glance

Service or costNeeded forWho pays
Static web hosting and a domainThe web terminal, your config.json, your legal pagesYou, the operatorFor web
Apple Developer Program (yearly membership)Publishing on the App StoreYouFor iOS
Google Play Console (one-time registration)Publishing on Google PlayYouFor Android
FirebaseOptional config channel, push notifications, crash reportsYou. Usage beyond Firebase's no-cost quota is billed by Google.Optional
Reown (WalletConnect) project IDOptional dApp connections from the in-app walletYou. Check Reown's current plans.Optional
Transak (fiat on-ramp) and 1inch (swap aggregator API)Nothing in AXIS 1.0.0: the code only carries empty, optional key slots for themYou, only if you build a feature that uses them. Left empty, nothing is called and nothing is billed.Not used
Arbitrum RPC / data providerDeposits and wallet balances on ArbitrumYou, for production traffic. Public endpoints are the free default.Recommended
100 USDC of perps collateral on your builder addressReceiving the Hyperliquid builder feeYou. It stays your own money in your own account.To earn
Hyperliquid trading fees, Arbitrum gas, Hyperliquid withdrawal feeEach trade, deposit and withdrawalThe trader (your user)—
Legal and regulatory adviceOffering leveraged trading to the publicYouBefore launch

AXIS has no backend of its own: there is no server you must rent to run it, and no AXIS or MIKODES service that bills you. Trading data and order execution come from Hyperliquid's public API, which needs no key (lib/core/hyperliquid/hyperliquid_env.dart).

02Hosting and domain

flutter build web --release produces a static folder (build/web/) that any static host can serve. You also need somewhere to publish your config.json (it can be the same host) and your privacy policy, terms and risk disclosure pages, which the app links to from lib/core/config/axis_identity.dart. A domain of your own is needed for all three and for the support email address. Many static hosts have a free tier; whether it fits your traffic is for you to check.

03App store accounts

  • Apple Developer Program: a yearly membership. For an app that holds crypto keys and offers trading, use an organisation account, not an individual one (App Store Review Guideline 3.1.5; see Accounts you must arrange).
  • Google Play Console: a one-time registration fee.

Both are only needed if you publish the mobile apps. The web build needs neither.

04Firebase (optional)

The package ships with a placeholder lib/firebase_options.dart, and the app runs without Firebase. If you connect a Firebase project (Firestore or Remote Config as a config channel, Cloud Messaging for push, Crashlytics for crash reports, Analytics), Google bills usage beyond the free quota of those products under your Firebase project. A hosted config.json does the same configuration job without Firebase (Option A).

05Reown / WalletConnect (optional)

dApp connections need a Reown project ID (walletconnect_project_id or the REOWN_PROJECT_ID build setting). Without it the WalletConnect screen says it is not configured and the rest of the terminal works normally. Creating a project is described in Accounts you must arrange.

Who pays: you do. The project belongs to your own Reown account, and every cost it incurs - their paid plans, request or connection limits, any overage - is billed by Reown to you under their current pricing and terms. The item price includes no Reown project, plan or usage, and the author is not a party to your agreement with Reown. Check their pricing and size the plan for the number of users you expect.

06Transak and 1inch (not used by AXIS 1.0.0)

The source shares its configuration layer with a multi-chain wallet, so it can hold two keys AXIS itself never uses:

  • Transak, a fiat on-ramp (buying crypto with a card or bank transfer): an optional onramp block in the config (transakEnabled, transakApiKey) and a TRANSAK_API_KEY build setting (lib/core/config/admin_config_model.dart, lib/core/config/api_key_repository.dart).
  • 1inch, a DEX swap aggregator API: an optional oneinch_api_key config value and an ONEINCH_API_KEY build setting (same files).

No AXIS screen opens Transak or calls the 1inch API: deposits are a USDC transfer on Arbitrum, and trading goes to Hyperliquid. Leave both empty and nothing is sent to either service and nothing is billed. Who pays, if you add such a feature yourself: you need your own Transak partner account and your own 1inch Developer Portal key. 1inch's API plans and limits are billed by 1inch to you; Transak's processing fees are charged by Transak to the person buying crypto, and your partner terms are between you and Transak. Neither is included in the item price, and the author is not a party to those agreements.

07RPC and data providers

Hyperliquid's own endpoints (api.hyperliquid.xyz) need no key. Deposits and wallet balances use Arbitrum One, and for that the app ships with public RPC endpoints (lib/core/chains.dart: a primary endpoint and two fallbacks). Public endpoints are free, shared and rate-limited, and their operators can change or withdraw them.

For production traffic, use a paid RPC or data provider account of your own and add its endpoint under Account → Networks (how), or change the defaults in lib/core/chains.dart and rebuild. Never ship a key you do not want public: anything compiled into a web build can be read by its users.

08Fees your users pay

None of these are paid by you, and none are set by AXIS except your builder fee:

  • Hyperliquid trading fees on every fill, charged by the venue.
  • Your builder fee, if you switch it on: charged by Hyperliquid on the filled amount, on top of the venue fee, only for wallets that approved it (Earnings).
  • Arbitrum gas for a deposit: the deposit is a USDC transfer on Arbitrum, paid in ETH on Arbitrum from the user's wallet.
  • Hyperliquid's withdrawal fee: the app shows a flat 1 USDC fee in the withdraw sheet (HyperliquidProvider.withdrawFeeUsdc). The venue sets this fee; check Hyperliquid's documentation for the current value.
  • Funding payments on open positions, exchanged between traders by the venue.

09Builder address collateral

Hyperliquid pays builder fees only to an address that holds at least 100 USDC of perps collateral. This is your own money, in an account you control; it is not a fee and nobody else can spend it. Without it, orders still carry your builder code but no fee arrives (details). Treat it as funds at risk like any exchange balance.