persian-names
TypeScript icon, indicating that this package has built-in type declarations

1.1.3 • Public • Published

Persian FirstName (JSON) 🇮🇷

Package of all Iranian (and Arabic) names

پکیج تمامی اسامی ایرانی (و عربی)

Using:

install:

npm install persian-names
yarn install persian-names

import:

import { PersianNames } from 'persian-names';

require:

const { PersianNames } = require('persian-names');

new class:

const persianName = new PersianNames(); //using default json file

const persianName = new PersianNames('./assets/firstname.json'); //using custom json

Examples

Validation Persian Name:

const is_name = persianName.validation('آرش');
console.log(is_name); //true  or  false

using options

const is_name = persianName.validation('امیر', {
  convertToPersian: true,
  typeCheck: 'exact',
  trimName: true,
});
console.log(is_name); //true  or  false

Get All FirstName:

const get_names = persianName.getNames();
console.log(get_names);

/*
[
   { id: 1, name: 'اَبدەَ', gender: 1, rate: 3 },
   { id: 2, name: 'اَبیش', gender: 1, rate: 3 },
   ...
]
*/

using options:

const get_names = persianName.getNames({
  genderType: 'stringFa',
  rateType: 'stringFa',
  getParamsData: {
    id: false,
    name: true,
    gender: true,
    rate: true,
  },
});
console.log(get_names);
/*
[
    { name: 'اَبدەَ', gender: 'مرد', rate: 'بسیار نادر' }
   { name: 'اَبیش', gender: 'مرد', rate: 'بسیار نادر' },
   ...
]
*/

Find Name:

const find_name = persianName.findName('زهرا');
console.log(find_name);
// return { id: 2887, name: 'زهرا', gender: 2, rate: 1 }

using options:

const find_name = persianName.findName('علی', {
  myTypeGender: {
    male: 'مردانه',
  },
  typeCheck: 'include',
});

Get Gender Name:

const get_gender_name = persianName.getGenderName('سارا', {
  genderType: 'stringFa',
});
console.log(get_gender_name);
// return { gender: 'زن' }

Include Name:

const include_name = persianName.includeName(
  'سلام من رضا هستم به همراه علی و احمد',
  {
    // options
  }
);
console.log(include_name);
/**  return {
  originalStr: 'سلام من رضا هستم به همراه علی و احمد',
  findNamesToStr: 'سلام من "رضا" هستم به همراه "علی" و "احمد"',
  names: [
    { id: 634, name: 'احمد', gender: 'male', rate: 1 },
    { id: 2399, name: 'رضا', gender: 'male', rate: 1 },
    { id: 3652, name: 'علی', gender: 'male', rate: 1 }
  ],
  length: 3
}
*/

options:

Options Description type support Default
convertToPersian convert alphabet arabic to persian boolean,undefined false
typeCheck include type or exact type for find name 'exact','include' exact
trimName trim name before validation (remove space and A-Z characters and emojis and ...) boolean,undefined false
myTypeGender custom gender (male,female,both) show in result undefined, male:string, female:string, both:string, undefined
genderType convert gender name for show undefined, genderTypeFa, genderTypeNumber, genderTypeArb, genderTypeNumber
rateType convert rate name for show undefined, rateTypeNumber, rateTypeFa rateTypeNumber
getParamsData items that can be displayed in the output undefined, id:bool, name:bool, gender:bool, rate:bool, undefined

Rate Types:

value number stringFa
1 1 پر کاربردی
2 2 معمولی
3 3 بسیار نادر

Gender Types:

value Number Fa Arb
1 1 مرد مذکر
2 2 زن مونث
3 3 هردو هردو

نکات

1- ممکن است یک سری از نام ها در این کتابخانه وجود نداشته باشد. که شما می توانید از طریق این لینک پروژه تبدیل کننده آن را دریافت کنید: project که این پروژه شامل فایل اکسل آماده اسامی + کد های جاوااسکریپت برای تبدیل فایل اکسل به json است.

2- بعضی از اسامی مانند حشمت و یا احسان و... هم در مردان و هم در زنان استفاده می شود پس این کتابخانه در جواب آن به شما پاسخ 3 و یا هردو و... میدهد.

3-این کتابخانه برای سهولت در توسعه و کار کردن با آن از دیتابیس داخلی یعنی json استفاده می کند.

4- این کتابخانه تا به الان شامل 6179 عدد نام مرد و زن (عربی و فارسی) است.

5- نام هایی مثل محمد و محمدرضا و یا محمدمهدی جدا هستند و جدا حساب می شوند.


مشتاق به دریافت پیشنهادات و نظرات دوستان هستم.

✉️ email : hejazi00831@gmail.com

🌐 github : https://github.com/mohammadhejazirad

Package Sidebar

Install

npm i persian-names

Weekly Downloads

0

Version

1.1.3

License

MIT

Unpacked Size

944 kB

Total Files

42

Last publish

Collaborators

  • mrhr