TIDE docs
v0.1.0
Live demo Get help
● Start · Step by step

Installation
ready for a release.

From the unzipped folder to a build that carries your identity, your signing key and your own endpoint. Plan about 30 minutes the first time.

01Unzip and install packages

  1. UnzipUse a path without spaces.
  2. Install Flutter packages
    flutter pub get
  3. Put the folder in GitOne test (test/product_identity_test.dart) checks the tracked files with git ls-files and fails outside a Git repository. Git also makes updates a merge, not a rewrite (how).
    git init
    git add .
    git commit -m "TIDE 0.1.0 (original)"
  4. Check that it builds
    flutter analyze      # expect: No issues found
    flutter test         # expect: All tests passed (436 in 0.1.0)

02Your app identity

Required The shipped identifier com.tideapp.app is a placeholder. Change it before your first store upload; a store never lets you change it afterwards. The full list of files is on Rebranding.

WhatWhere
Android application IDandroid/app/build.gradle.kts → applicationId and namespace, plus the package folder under android/app/src/main/kotlin/
iOS bundle IDios/Runner.xcodeproj/project.pbxproj → PRODUCT_BUNDLE_IDENTIFIER (easiest in Xcode → Runner → Signing & Capabilities)
Your domainBuild setting TIDE_HOST (how)

03Signing

Nothing signing-related ships, and .gitignore keeps it that way: key.properties, *.jks, *.keystore, *.p12, *.p8, *.mobileprovision and every .env are excluded.

Android

The release build type is signed with the debug key so flutter run --release works out of the box (android/app/build.gradle.kts). Google Play refuses a debug-signed upload. Create your own upload key:

keytool -genkey -v -keystore ~/upload-keystore.jks -keyalg RSA \
  -keysize 2048 -validity 10000 -alias upload

Then create android/key.properties and point a release signingConfig at it, as described in the Flutter Android deployment guide. Keep the keystore and its passwords safe: you need the same key for every future update.

iOS

Open ios/Runner.xcworkspace in Xcode, select Runner → Signing & Capabilities and pick your own Team. The shipped project has no DEVELOPMENT_TEAM.

04Your RPC endpoint

Recommended TIDE works on public endpoints, but they are rate-limited and shared by every app that uses them. Before launch, add your own:

  1. Get an endpointFrom any Solana RPC provider, for example Helius. Use your own account: providers do not allow sharing a key.
  2. Open the operator panelSettings → Operator panel → Endpoints and credentials.
  3. Paste the full URL into Solana RPC URLFor Helius that is https://mainnet.helius-rpc.com/?api-key=<your-key>. Press Save and apply. Leave the separate Helius API key field empty: in 0.1.0 no network call reads it.

For many installs at once, put the same values in a hosted config document instead (Configuration → Remote document).

06Your fee

The fee ships switched off. Set it when you are ready: Setting up earnings.

07Checklist: ready for a first release?

  • flutter analyze and flutter test pass.
  • Your own application ID and bundle ID are set.
  • Android has your upload key; Xcode has your Team.
  • Your terms, privacy and support addresses open.
  • Operator panel → In force right now shows the values you expect.
  • Settings → About shows no fee warning (or you know why it does).