Skip to content

HeliosDB Onboarding System - Quick Start Guide

HeliosDB Onboarding System - Quick Start Guide

Getting Started in 5 Minutes

Prerequisites

Terminal window
# Install dependencies
- PostgreSQL 14+
- Redis 6+
- Rust 1.70+

1. Setup Database

Terminal window
# Create database
createdb heliosdb_onboarding
# Run migrations
psql heliosdb_onboarding < migrations/001_initial_schema.sql

2. Configure Environment

Terminal window
# Copy environment template
cp .env.example .env
# Edit .env
export DATABASE_URL="postgresql://localhost/heliosdb_onboarding"
export REDIS_URL="redis://localhost:6379"
export SENDGRID_API_KEY="your_key_here"
export STRIPE_SECRET_KEY="sk_test_..."

3. Build and Run

Terminal window
# Build
cargo build --release
# Run server
cargo run --release
# Server starts on http://localhost:8080

4. Test API

Terminal window
# Sign up a customer
curl -X POST http://localhost:8080/signup \
-H "Content-Type: application/json" \
-d '{
"email": "test@example.com",
"name": "Test User",
"password": "SecurePass123!",
"company": "Test Inc",
"account_type": "trial"
}'
# Response includes:
# - user_id
# - database credentials
# - API key
# - resource quotas

๐Ÿ“š Key Endpoints

POST /signup - Create account
GET /verify-email?token=xxx - Verify email
GET /onboarding/status/:user_id - Onboarding progress
POST /onboarding/complete-step - Complete step
GET /trial/status/:user_id - Trial info
GET /usage/:user_id - Usage stats

Admin CLI

Terminal window
# List customers
heliosdb-admin list-customers --limit 10
# Extend trial
heliosdb-admin trial extend \
--user-id <uuid> \
--days 7 \
--reason "POC extension"
# View metrics
heliosdb-admin system-metrics

๐Ÿ“ง Email Templates

Located in templates/:

  • welcome_email.html - Welcome message
  • trial_expiring.html - Expiration warning
  • onboarding_day1.html - Day 1 tips

๐Ÿ—„ Sample Data

Terminal window
# Load e-commerce sample data
psql heliosdb_onboarding < sample_data/ecommerce.sql

Resource Quotas

Trial (14 days)

  • 25 connections
  • 10GB storage
  • 60 GPU minutes/day
  • 100K queries/day

Starter ($29/mo)

  • 50 connections
  • 50GB storage
  • 120 GPU minutes/day
  • 500K queries/day

Professional ($99/mo)

  • 200 connections
  • 200GB storage
  • 480 GPU minutes/day
  • 2M queries/day

Enterprise (Custom)

  • 1000 connections
  • 1TB storage
  • 1440 GPU minutes/day
  • 10M queries/day

Security

  • Passwords: Argon2 hashing
  • Tokens: 24-hour expiration
  • API Keys: Format hdb_...
  • Input: Comprehensive validation

Monitoring

Metrics exposed on /metrics:

  • Signup rate
  • Trial conversions
  • Onboarding completion
  • Usage by tier

๐Ÿ› Troubleshooting

Database Connection Error

Terminal window
# Check PostgreSQL is running
pg_isready
# Verify DATABASE_URL
echo $DATABASE_URL

Email Not Sending

Terminal window
# Check SMTP configuration
# Verify SENDGRID_API_KEY is set
# Check logs for email errors

Redis Connection Error

Terminal window
# Check Redis is running
redis-cli ping
# Should return PONG

Configuration

Edit config/onboarding.toml:

[signup]
require_email_verification = true
trial_duration_days = 14
[trial_limits]
max_connections = 25
max_storage_gb = 10

๐Ÿงช Testing

Terminal window
# Run tests
cargo test
# Run specific test
cargo test test_signup
# Run with logging
RUST_LOG=debug cargo test

๐Ÿ“– Full Documentation

  • API Reference: API_DOCUMENTATION.md
  • Complete Guide: README.md
  • System Overview: ONBOARDING_SYSTEM_COMPLETE.md

๐Ÿ†˜ Support

Next Steps

  1. Setup database and environment
  2. Start the server
  3. Test signup endpoint
  4. Configure email templates
  5. Deploy to production

Ready to launch!