Building RandBox from Scratch (3/5): Feature Modules Deep Implementation
Basics Module
Multiple overloads unify integer generation while ensuring type and range validation. Floating supports precision; strings support length and custom charsets.
Person Module
Flexible name generation by locale and gender; age and birthday utilities; document generators for testing forms with realistic formats.
Location Module
Coordinates, latitude, longitude with precision; address and city generators; phone numbers and postal codes by locale.
Finance Module
Credit card numbers validated by Luhn; expiry month/year; currencies and currency pairs for fintech simulations.
Text Module
Syllables, words, sentences, and paragraphs with lengths and structure controls; emoji for UX demos.
Time Module
Dates, timestamps, timezones with AM/PM support and boundaries.
Web Module
Domains, URLs, emails, IPs, MAC addresses, and social tags for realistic web data.