A package for generating synthetic names based on Indian states.
Project description
IndiGen: A Python-Based Synthetic Name Generator for Indian States
This package is a dynamic state-based Indian name generator. It allows users to generate names (either first names or full names) for specific states or for all states of India at once. The system dynamically imports state-specific modules and their corresponding name generation functions.
Need for an Indian Name Generator: India is a diverse country with a rich tapestry of cultures, languages, and traditions. Each state has unique naming conventions that reflect its cultural and linguistic identity. An Indian name generator addresses this diversity and caters to various applications requiring culturally specific names.
This project caters to various applications, including:
- Diversity Representation: Ensuring names reflect India's unique cultural tapestry.
- Localization: Supporting region-specific datasets for marketing, content creation, and more.
- Research: Facilitating analysis of naming trends across Indian states.
Features
- Dynamically loads state-specific modules for name generation.
- Generates first names or full names for specific states or all Indian states.
- Customizable output: specify the number of names to generate.
- Comprehensive error handling for invalid inputs or module issues
Installation
# Install the package directly from PyPI
pip install indigen
# Install dependencies (if you have a `requirements.txt` file)
pip install -r requirements.txt
Usage
To run the main program:
python indigen.py
Contribution
Contributions are welcome! If you find bugs or have suggestions for improvements, feel free to open an issue or submit a pull request.
Directory Structure
project_root/
├── Indigen/
│ ├── __init__.py
│ ├── main_script.py # Main entry script for name generation
│ ├── utils/
│ │ ├── __init__.py
│ │ ├── state_utils.py # Contains `get_state_modules` for listing state modules
│ │ ├── common.py # Contains helper functions like `save_names_to_csv`, `format_name_data`
│ └── state_modules/
│ ├── __init__.py
│ ├── Assam_File.py # Example state module
│ ├── Bihar_File.py # Example state module
│ └── ... # More state modules
├── scripts/
│ ├── __init__.py
│ ├── indigen.py # Running script for the package
│
|── License #License for the project
├── requirements.txt # List of dependencies
└── README.md # Documentation for the project
Running Tests
To run tests, run the following command
python indigen.py
Authors
- @sudeepghate
- @dhanushghate
- @adithyam
- [@saishma_h]
License
MIT This project is licensed under the MIT License. See the LICENSE file for details.
Acknowledgements
Special thanks to all contributors and users who provided feedback and helped improve the project. Their input has been invaluable in making this tool robust and user-friendly. We also acknowledge the inspiration drawn from the work: Sharma, R. S. (2005). Panorama of Indian Anthroponomy: An Historical, Socio-cultural & Linguistic Analysis of Indian Personal Names. Mittal Publications.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file indigen-0.1.1.tar.gz.
File metadata
- Download URL: indigen-0.1.1.tar.gz
- Upload date:
- Size: 116.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6165725505486820e4e1a283f6d3ecb68fb3c9955e79b452abd4e5482539eed7
|
|
| MD5 |
f8ecc96c1ab47556a0d2e0f75bcb8664
|
|
| BLAKE2b-256 |
a37d3ba118dc309de697fc43ec5cefaba33737b1dc0427e855f343f9078bfdae
|
File details
Details for the file indigen-0.1.1-py3-none-any.whl.
File metadata
- Download URL: indigen-0.1.1-py3-none-any.whl
- Upload date:
- Size: 144.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e2ee398bf272c445ed08aac3cda92cbc57e9daa98589a750efee7aef18612d2
|
|
| MD5 |
d2cd5b93c8194e67ca856a3ca83f004a
|
|
| BLAKE2b-256 |
fbd5cad6895c73323bbb31d70bc6fc837d15e9f3be7c6965d1bf2eddfc534863
|