Skip to content

Pseudata

One seed. Every language. Same data.

Your frontend expects Alice. Your backend returns Bob.
Different faker libraries = Different realities.

Pseudata solves this by making mock data generation a standardized algorithm—not a language-specific implementation.

📖 Read the full story: Why faker.js and Faker Don’t Agree

Cross-Language Consistency

Same seed = same data across all languages. No more integration test mismatches.

Infinite Scale

O(1) instant access to billions of records. Zero memory overhead—virtual arrays calculate on demand.

Multi-Locale Support

15+ locales with culturally appropriate names, addresses, and geographic data.

Zero Dependencies

Pure implementation in every language. No FFI, no bindings, just native code.

User[1000] with seed 42 = Always the same:

  • Same name
  • Same email
  • Same avatar
  • Every time. Every language.

Diagram showing seed 42 flowing to Go, Java, Python, and TypeScript implementations, all producing identical output: John Smith

package main
import "github.com/pseudata/pseudata"
users := pseudata.NewUserArray(42)
user := users.At(1000)
fmt.Println(user.Name) // → "John Smith"
fmt.Println(user.Email) // → "john.smith@example.com"