# Fake Name & Identity Generator - Complete Technical Knowledge File (llms-full.txt) > Vib Tools - Engineering realistic biodata, test financial records, and geo-consistent mock datasets. ## Table of Contents 1. Core Identity Schema (TypeScript) 2. Supported Countries and Geographic Formats 3. Algorithmic Generators (Luhn, SSN, Postal Codes, Geo-Coordinates) 4. Bulk Generator Specifications 5. Microjob & Form QA Verification Tips 6. Cloudflare Pages Function API Reference 7. Developer Integration Examples (cURL, JavaScript, Python) --- ## 1. Core Identity Schema (TypeScript) Each generated synthetic identity conforms to the following schema: ```typescript export interface FakeIdentity { id: string; gender: 'male' | 'female'; prefix: string; firstName: string; middleInitial: string; lastName: string; fullName: string; photoUrl?: string; // Physical & Demographic age: number; birthday: string; // MM/DD/YYYY birthdayISO: string; // YYYY-MM-DD zodiac: string; height: string; // Metric & Imperial weight: string; // kg & lbs bloodType: string; // Address & Geography streetAddress: string; city: string; state: string; stateCode: string; zipCode: string; country: string; countryCode: string; // ISO 3166-1 alpha-2 latitude: number; longitude: number; // Telecommunications & Online phone: string; phoneRaw: string; email: string; username: string; password: string; website: string; ipAddress: string; macAddress: string; userAgent: string; // Financial & Government IDs (Synthetic Test Data) ssn: string; creditCard: { type: 'Visa' | 'Mastercard' | 'Amex' | 'Discover'; number: string; formattedNumber: string; expires: string; cvv: string; luhnValid: boolean; }; // Employment & Education occupation: string; company: string; salary: string; university: string; degree: string; // Tracking generatedAt: string; source: 'randomuser-api' | 'local-synthetic'; } ``` --- ## 2. Supported Countries (24 Total) | Country | Code | Primary Nameset | Currency | Zip/Postal Format | |---|---|---|---|---| | United States | US | American | USD ($) | 5 digits (e.g., 90210, 10001) | | United Kingdom | GB | British | GBP (£) | Alphanumeric (e.g., SW1A 1AA, EC1A 1BB) | | Canada | CA | Canadian | CAD ($) | Alphanumeric A1A 1A1 (e.g., M5V 2T6) | | Australia | AU | Australian | AUD ($) | 4 digits (e.g., 2000, 3000) | | Germany | DE | German | EUR (€) | 5 digits (e.g., 10115, 80331) | | France | FR | French | EUR (€) | 5 digits (e.g., 75001, 69001) | | Spain | ES | Spanish | EUR (€) | 5 digits (e.g., 28001, 08001) | | Switzerland | CH | German / French | CHF (Fr.) | 4 digits (e.g., 8001, 1201) | | Denmark | DK | Nordic | DKK (kr) | 4 digits (e.g., 1050) | | Finland | FI | Nordic | EUR (€) | 5 digits (e.g., 00100) | | Ireland | IE | British / Irish | EUR (€) | Eircode D02 X285 | | India | IN | Indian (Hindi) | INR (₹) | 6 digits PIN (e.g., 110001, 400001) | | Iran | IR | Persian | IRR (﷼) | 10 digits | | Mexico | MX | Spanish | MXN ($) | 5 digits (e.g., 06000) | | Netherlands | NL | Dutch | EUR (€) | 4 digits + 2 letters (e.g., 1012 JS) | | Norway | NO | Nordic | NOK (kr) | 4 digits (e.g., 0150) | | New Zealand | NZ | British / Maori | NZD ($) | 4 digits (e.g., 1010) | | Serbia | RS | Slavic | RSD (дин) | 5 digits (e.g., 11000) | | Turkey | TR | Turkish | TRY (₺) | 5 digits (e.g., 34000) | | Ukraine | UA | Ukrainian | UAH (₴) | 5 digits (e.g., 01001) | | Brazil | BR | Brazilian | BRL (R$) | 8 digits CEP (e.g., 01310-100) | | Bangladesh | BD | Bengali | BDT (৳) | 4 digits (e.g., 1205, 1000, 4000) | | Italy | IT | Italian | EUR (€) | 5 digits CAP (e.g., 00184, 20121) | | Japan | JP | Japanese | JPY (¥) | 3-4 digits (e.g., 100-0001, 150-0002) | --- ## 3. Algorithmic Generators ### Luhn Algorithm Checksum (MOD 10) All credit card numbers generated by this tool calculate the final check digit using the Luhn Algorithm: 1. Double every second digit from right to left. 2. If doubling results in a number > 9, subtract 9. 3. Sum all resulting digits. 4. If sum % 10 === 0, the number is valid. Supported Card Formats: - **Visa**: Prefix 4, 16 digits length. - **Mastercard**: Prefix 51-55, 16 digits length. - **American Express (Amex)**: Prefix 34 or 37, 15 digits length. - **Discover**: Prefix 6011, 16 digits length. --- ## 4. API Reference (`/api/generate`) ### Query Endpoint: `GET /api/generate` Parameters: - `country`: 2-letter country code (US, GB, CA, AU, DE, FR, BD, IN, etc.) - `gender`: `random` | `male` | `female` - `nameset`: `american` | `british` | `canadian` | `german` | `bengali` | `indian` | `spanish` - `count`: Number of profiles to return (1 to 100) Example Request: ```bash curl "https://vib.tools/api/generate?country=US&gender=male&count=2" ``` Example Response: ```json { "count": 2, "results": [ { "id": "fng-1727091234-a1b2", "fullName": "David R. Miller", "gender": "male", "streetAddress": "742 Evergreen Terrace", "city": "Springfield", "stateCode": "OR", "zipCode": "97477", "country": "United States", "countryCode": "US", "phone": "(541) 555-0199", "email": "david.miller@gmail.com", "ssn": "987-65-4321", "creditCard": { "type": "Visa", "formattedNumber": "4532 •••• •••• 8842", "expires": "08/29", "cvv": "743", "luhnValid": true } } ] } ``` --- ## 5. Developer Integration Snippets ### JavaScript / TypeScript Fetch ```javascript const response = await fetch('https://vib.tools/api/generate?country=US&count=5'); const data = await response.json(); console.log(data.results); ``` ### Python ```python import requests res = requests.get('https://vib.tools/api/generate', params={'country': 'US', 'count': 5}) profiles = res.json() print(profiles) ``` --- *Built with precision by Vib Tools (https://vib.tools/)*