We're excited to announce Aphelion v1.7.7, which introduces a game-changing feature: file output for the introspect command. This enables a complete Rust-based workflow from database introspection to synthetic data generation, eliminating the need for TypeScript dependencies.

What's New

Introspection File Output

The introspect command now supports the --output flag, allowing you to save schema JSON directly to a file:

# Introspect and save to file
aphelion introspect --url "postgresql://localhost/mydb" --output schema.json

# Generate SQL files
aphelion generate schema.json --output data --rows 1000

# Load into database
cd data && ./load.sh database_url

Why This Matters

  • Pure Rust workflow - No more TypeScript dependency for introspection
  • Schema format compatibility - Generates schemas with the correct data_type field
  • Better performance - Rust is faster than TypeScript for introspection
  • Simpler deployment - Single binary for the entire workflow

Testing Results

We tested v1.7.7 with 5 complex database schemas to ensure reliability:

Schema Database Tables Status
Chinook PostgreSQL 11 ✅ PASS
Sakila MySQL 16 ✅ PASS
Employees MySQL 6 ✅ PASS
Pagila PostgreSQL 22 ✅ PASS
AdventureWorks PostgreSQL 3 ✅ PASS

Total: 58 tables introspected and generated successfully with 100% success rate!

Data Quality

All generated data passed rigorous quality checks:

  • ✅ Dates in YYYY-MM-DD format
  • ✅ Times in HH:MM:SS format
  • ✅ Timestamps in YYYY-MM-DD HH:MM:SS format
  • ✅ Valid email addresses
  • ✅ Foreign key constraints respected
  • ✅ No NULL values in NOT NULL columns

Performance

Average time per schema: 2.7 seconds (introspect + generate)

Schema Format Compatibility

One of the key improvements in v1.7.7 is resolving the schema format incompatibility between TypeScript and Rust CLIs.

Before v1.7.7 (TypeScript)

{
  "name": "track_id",
  "type": "integer"  // ❌ Incompatible with Rust
}

After v1.7.7 (Rust)

{
  "name": "track_id",
  "data_type": "integer"  // ✅ Correct format!
}

This means schemas introspected with the Rust CLI are now fully compatible with the generate command, eliminating the need for manual schema migration.

Getting Started

Download v1.7.7

# Download the latest binary
curl -L https://github.com/vikramnandaai-eng/aphelion-universe/releases/download/v1.7.7/aphelion-linux-x64-v1.7.7 -o aphelion
chmod +x aphelion

# Verify version
./aphelion --version

Try It Out

# 1. Introspect your database
./aphelion introspect --url "postgresql://localhost/mydb" --output schema.json

# 2. Generate synthetic data
./aphelion generate schema.json --output data --rows 1000 --seed 42

# 3. Load into test database
cd data && ./load.sh "postgresql://localhost/test_db"

What's Next

With v1.7.7, we've completed the transition to a full Rust-based workflow. Future releases will focus on:

  • Additional introspection options (filters, excludes, etc.)
  • Schema validation and linting
  • Performance optimizations for large schemas
  • Enhanced data quality checks

Conclusion

Aphelion v1.7.7 represents a significant milestone in our journey to provide the best synthetic data generation tool for PostgreSQL and MySQL. The new introspection file output feature simplifies the workflow, improves performance, and eliminates dependencies.

Try it out today and let us know what you think!