Generate realistic user profiles from 110+ countries in seconds with a modern interface
Live Demo • Features • Quick Start • API Documentation • Deployment
- Global Coverage - Generate users from 110+ countries worldwide
- Custom Filters - Generate users by gender, nationality, and quantity
- 5 Theme Options - Dark, Light, Red, Blue, and Green themes
- Responsive Design - Works seamlessly on all devices
- Fast & Modern - Built with performance in mind
- Live Updates - Real-time user generation
- Detailed Profiles - Complete user information including:
- Name (Title, First, Last)
- Contact (Email, Phone, Cell)
- Location (Address, City, State, Country, Zip)
- Personal (Age, Gender, DOB, Registration Date)
- Identification (Username, ID documents)
- Avatar with Initials
- Python 3.8 or higher
- pip package manager
-
Clone the repository
git clone https://github.com/walterwhite-69/UserForge.git cd UserForge -
Install dependencies
pip install -r requirements.txt
-
Run the application
python app.py
-
Open your browser
http://localhost:5000
Generate random user profiles with optional filters powered by FakerAPI.it.
| Parameter | Type | Description | Default | Example |
|---|---|---|---|---|
| results | integer | Number of users (1-50) | 10 | ?results=5 |
| gender | string | Filter by gender (male, female) | - | ?gender=female |
| nat | string | Nationality code (see below) | - | ?nat=JP |
| Code | Country | Code | Country | Code | Country |
|---|---|---|---|---|---|
| AF | Afghanistan | AL | Albania | DZ | Algeria |
| AR | Argentina | AM | Armenia | AU | Australia |
| AT | Austria | AZ | Azerbaijan | BH | Bahrain |
| BD | Bangladesh | BY | Belarus | BE | Belgium |
| BA | Bosnia | BR | Brazil | BG | Bulgaria |
| KH | Cambodia | CA | Canada | CL | Chile |
| CN | China | CO | Colombia | CR | Costa Rica |
| HR | Croatia | CY | Cyprus | CZ | Czech Republic |
| DK | Denmark | EC | Ecuador | EG | Egypt |
| EE | Estonia | ET | Ethiopia | FI | Finland |
| FR | France | GE | Georgia | DE | Germany |
| GH | Ghana | GR | Greece | GT | Guatemala |
| HK | Hong Kong | HU | Hungary | IS | Iceland |
| IN | India | ID | Indonesia | IR | Iran |
| IQ | Iraq | IE | Ireland | IL | Israel |
| IT | Italy | JM | Jamaica | JP | Japan |
| JO | Jordan | KZ | Kazakhstan | KE | Kenya |
| KW | Kuwait | LV | Latvia | LB | Lebanon |
| LY | Libya | LT | Lithuania | LU | Luxembourg |
| MO | Macau | MK | North Macedonia | MY | Malaysia |
| MT | Malta | MX | Mexico | MA | Morocco |
| MM | Myanmar | NP | Nepal | NL | Netherlands |
| NZ | New Zealand | NG | Nigeria | KP | North Korea |
| NO | Norway | OM | Oman | PK | Pakistan |
| PS | Palestine | PA | Panama | PY | Paraguay |
| PE | Peru | PH | Philippines | PL | Poland |
| PT | Portugal | QA | Qatar | RO | Romania |
| RU | Russia | SA | Saudi Arabia | RS | Serbia |
| SG | Singapore | SK | Slovakia | SI | Slovenia |
| ZA | South Africa | KR | South Korea | ES | Spain |
| LK | Sri Lanka | SD | Sudan | SE | Sweden |
| CH | Switzerland | SY | Syria | TW | Taiwan |
| TZ | Tanzania | TH | Thailand | TN | Tunisia |
| TR | Turkey | UA | Ukraine | AE | UAE |
| GB | United Kingdom | US | United States | UY | Uruguay |
| UZ | Uzbekistan | VE | Venezuela | VN | Vietnam |
| YE | Yemen | - | - | - | - |
curl "http://localhost:5000/api/users?results=3&gender=female&nat=JP"{
"success": true,
"count": 3,
"users": [
{
"uuid": "eb338bc6-a747-4f3e-bfaf-79fecf7dee9e",
"username": "tanaka_momoko710",
"title": "Ms",
"first_name": "舞",
"last_name": "工藤",
"gender": "female",
"email": "[email protected]",
"phone": "+995771098743",
"cell": "+206409398401",
"street_number": 105,
"street_name": "田辺町",
"city": "江古田市",
"state": "江古田市",
"country": "Japan",
"postcode": "2103931",
"nationality": "JP",
"date_of_birth": "2021-11-18T00:00:00.000Z",
"age": 3,
"registered_date": "2019-11-29T15:10:21.000Z",
"registered_age": 6,
"picture_large": null,
"picture_medium": null,
"picture_thumbnail": null,
"id_name": "National ID",
"id_value": "889047757"
}
]
}import requests
import json
BASE_URL = "http://localhost:5000"
# Get 5 female users from Japan
response = requests.get(f"{BASE_URL}/api/users?results=5&nat=JP&gender=female")
data = response.json()
for user in data['users']:
print(f"Name: {user['first_name']} {user['last_name']}")
print(f"Email: {user['email']}")
print(f"Location: {user['city']}, {user['country']}")
print(f"Username: {user['username']}")
print("-" * 50)Name: 舞 工藤
Email: [email protected]
Location: 江古田市, Japan
Username: tanaka_momoko710
--------------------------------------------------
Name: 智実 中島
Email: [email protected]
Location: 江古田市, Japan
Username: yoko42652
--------------------------------------------------
// Fetch 3 female users from Germany
fetch('http://localhost:5000/api/users?results=3&gender=female&nat=DE')
.then(response => response.json())
.then(data => {
data.users.forEach(user => {
console.log(`${user.first_name} ${user.last_name}`);
console.log(`Email: ${user.email}`);
console.log(`Phone: ${user.phone}`);
console.log(`---`);
});
})
.catch(error => console.error('Error:', error));UserForge includes 5 themes:
- Dark (default, with purple accents)
- Light (clean and minimal)
- Red (vibrant look)
- Blue (cool and soft)
- Green (fresh tone)
Click the theme toggle button in the header to switch themes.
-
Install Vercel CLI:
npm install -g vercel
-
Deploy:
vercel
-
Create a Heroku app:
heroku create your-app-name
-
Push to Heroku:
git push heroku main
- Connect your GitHub repository to Railway
- Set the start command:
python app.py - Deploy!
UserForge/
├── static/
│ ├── index.html
│ ├── style.css
│ └── app.js
├── app.py
├── example_fetch.py
├── requirements.txt
├── vercel.json
└── README.md
- Backend: Flask (Python)
- Frontend: HTML5, CSS3, JavaScript
- API: FakerAPI.it
- Styling: Custom CSS Variables
- Deployment: Vercel, Heroku, Railway
- Development & Testing - Generate test user data for any country
- UI/UX Design - Populate designs with realistic global profiles
- Data Analysis - Create sample datasets from various locales
- Education - Learn API integration and JSON handling
- Internationalization - Test apps with multilingual user data
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome!
- Fork the project
- Create a new branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push (
git push origin feature/AmazingFeature) - Open a Pull Request
- Data: FakerAPI.it
- Inspiration: modern minimal web design
Have questions or want to collaborate?
- Discord: discord.gg/rgWcEw5G8a
- Discord Username: heisenburger_7
Made with love by Walter