Skip to content

Session Sharing - Collaborate on Solana Testing with Your Team

Session Sharing is a powerful feature that allows you to share your entire testing environment with team members, stakeholders, or collaborators - no technical setup required on their end.

Session Sharing creates a shareable link that contains:

  • Your current program’s testing UI
  • Configured account addresses
  • Recent transaction history
  • PDA derivations
  • Account suggestions

Anyone with the link can interact with your testing environment without needing to:

  • Install Testship
  • Set up the Solana CLI
  • Build the program locally
  • Configure development tools

Show your program in action:

  • Share a link with investors or clients
  • Let them interact with the program safely
  • No technical knowledge required
  • Real-time updates as they test

Work together on testing:

  • Share test scenarios with developers
  • Let designers see the program in action
  • Enable QA team to test thoroughly
  • Product managers can validate features

Make debugging easier:

  • Share exact state when bug occurred
  • Include transaction history leading to the issue
  • Let others reproduce the problem
  • Faster issue resolution

Teach others about your program:

  • Create interactive tutorials
  • Share with developers learning your codebase
  • Onboard new team members
  • Build community around your project
  1. Click “Share Session” in the Testship UI
  2. Configure Sharing Options:
    • Choose what to include (accounts, history, etc.)
    • Set expiration time (1 hour, 1 day, 1 week, never)
    • Enable/disable write access
  3. Generate Link: Get a unique shareable URL
  4. Share: Send the link to anyone

Recipients simply:

  1. Click the shared link
  2. View the interactive UI in their browser
  3. Test the program immediately
  4. See all context you’ve shared

Control what others can do:

Read-Only Mode

  • View the UI and accounts
  • See transaction history
  • Cannot execute instructions
  • Safe for public sharing

Interactive Mode

  • Execute instructions
  • Create new accounts
  • Modify state
  • Connect their own wallet

Optionally enable real-time collaboration:

  • See changes as others test
  • Cursor presence indicators
  • Live transaction feed
  • Chat functionality

Save specific states:

  • Bookmark important moments
  • Revert to earlier states
  • Compare different scenarios
  • Create test checkpoints

White-label the shared session:

  • Add your project logo
  • Custom color themes
  • Welcome messages
  • Documentation links

Track session usage:

  • View count
  • Interaction metrics
  • Most tested instructions
  • User feedback collection

Included in sessions:

  • Program IDL (public anyway)
  • Account addresses you specify
  • Transaction signatures (public on-chain)
  • UI state and configurations

Protected information:

  • Private keys (never!)
  • Wallet seed phrases
  • Local-only notes
  • Personal preferences
  • Sessions are encrypted in transit
  • Optional password protection
  • IP-based access restrictions
  • Session expiration/revocation
  • Audit logs
  • Use read-only mode
  • Set appropriate expiration
  • Include helpful descriptions
  • Test the link before sharing
  • Enable interactive mode
  • Use longer expiration
  • Share with specific team members
  • Enable real-time sync
  • Include full transaction history
  • Note the specific failure point
  • Add reproduction steps
  • Set unlimited expiration until fixed

Customize before sharing:

  • Duration: How long the session remains valid
  • Access Level: Read-only or interactive
  • Included Data: Which accounts and history to share
  • Network: Mainnet, devnet, or testnet
  • Rate Limits: Prevent abuse
  • Wallet Requirement: Require viewers to connect wallet
  • Whitelist: Specify allowed wallet addresses
  • Webhook Integration: Notify when session is accessed
  • Custom Domain: Use your own domain for links

While powerful, session sharing has some limits:

  • Maximum session size: 10 MB
  • Transaction history: Last 100 transactions
  • Maximum active sessions: 10 per user (free tier)
  • Session duration: Up to 30 days

Future enhancements planned:

  • Video recording of test sessions
  • Guided testing workflows
  • Embedded comments and annotations
  • Integration with GitHub issues
  • API for programmatic session creation

Learn about the seamless development experience with Hot Reloading.