gensearch
v2.4.3
Published
Generate search links for genealogy websites
Downloads
11
Readme
gensearch
Generate search links for a many genealogy websites.
Try the Demo
Usage
// Generate a search link for FamilySearch
var url = gensearch('familysearch', {
givenName: "Joe William",
familyName: "Clark"
});
// Some options can be changed. Here we modify the birth year range
var url = gensearch('familysearch', data, {
birthRange: 5
});
// Or we can set the configuration option once and have it apply to all future searches.
gensearch.config('familysearch', {
birthRange: 5
});
// We can also set options for multiple sites at once
gensearch.config({
familysearch: {
birthRange: 5
},
archives: {
deathRange: 10
}
});
Install
Web
Via the CDN unpkg:
<script src="//unpkg.com/gensearch@latest/dist/gensearch.min.js"></script>
Node
npm install gensearch
var genSearch = require('gensearch');
Schema
givenName
familyName
birthPlace
birthDate
deathPlace
deathDate
marriagePlace
marriageDate
fatherGivenName
fatherFamilyName
motherGivenName
motherFamilyName
spouseGivenName
spouseFamilyName
Sites
- americanancestors
- ancestry
- archives
- billiongraves
- chroniclingamerica
- familysearch
- findagrave
- findmypast.co.uk
- findmypast.com
- fold3
- genealogieonline
- genealogybank
- geneanet.en
- gengophers
- geni
- mocavo
- myheritage
- nla trove
- newspapers
- openarchives
- usgenweb
- werelate
- wikitree
- worldvitalrecords
americanancestors
http://www.americanancestors.org/
var url = gensearch('americanancestors', data);
ancestry
http://ancestry.com
var url = gensearch('ancestry', data, [options]);
| option | default | notes |
|--------|---------|-------|
| db
| | Search within a specific database. This value equates to the 'db' parameter value used by Ancestry. |
archives
http://archives.com
var url = gensearch('archives', data);
| option | default |
|--------|---------|
| birthRange
| 2 |
| deathRange
| 2 |
billiongraves
http://billiongraves.com/
var url = gensearch('billiongraves', data, [options]);
| option | default |
|--------|---------|
| yearRange
| 2 |
chroniclingamerica
http://chroniclingamerica.loc.gov/
var url = gensearch('chroniclingamerica', data);
familysearch
https://familysearch.org
var url = gensearch('familysearch', data, [options]);
| option | default | notes |
|--------|---------|-------|
| birthRange
| 2 |
| deathRange
| 2 |
| marriageRange
| 2 |
| collectionId
| | Only search within a specific collection. |
findagrave
http://findagrave.com
var url = gensearch('findagrave', data);
findmypast.co.uk
http://findmypast.co.uk
var url = gensearch('findmypast.co.uk', data, [options]);
| option | default | notes |
|--------|---------|-------|
| event
| | Type of event to search for. Valid values are birth
, death
, and other
. The otherDate
and otherPlace
options are used when event
is other
.
| birthRange
| 2 |
| deathRange
| 2 |
| otherRange
| 2 |
| otherDate
| | Only used when event
is other
. |
| otherPlace
| | Only used when event
is other
. |
findmypast.com
http://findmypast.com
var url = gensearch('findmypast.com', data, [options]);
| option | default | notes |
|--------|---------|-------|
| event
| | Type of event to search for. Valid values are birth
, death
, and other
. The otherDate
and otherPlace
options are used when event
is other
.
| birthRange
| 2 |
| deathRange
| 2 |
| otherRange
| 2 |
| otherDate
| | Only used when event
is other
. |
| otherPlace
| | Only used when event
is other
. |
fold3
http://fold3.com
var url = gensearch('fold3', data);
Only givenName
and familyName
are used for Fold3 searches.
genealogieonline
http://genealogieonline.nl/en/
var url = gensearch('genealogieonline', data, [options]);
| option | default |
|--------|---------|
| birthRange
| 5 |
| deathRange
| 5 |
genealogybank
http://genealogybank.com
var url = gensearch('genealogybank', data, [options]);
| option | default | notes |
|--------|---------|-------|
| lifespan
| 90 | If either a birthDate
or deathDate
exists, but not both, then this value is used to approximate the missing year. For example, if the birthDate
is 2 Feb 1766
and no deathDate
is given then we would add lifespan
to the birth year to get an approximate death year of 1856
. |
| datePadding
| 5 | This value is substracted from the calculated birth year and added to the calculated death year. |
geneanet.en
http://en.geneanet.org/
var url = gensearch('geneanet.en', data, [options]);
| option | default | notes |
|--------|---------|-------|
| place
| birth
| Determines whether the birth or death place is used for searching. Values: birth
or death
. |
gengophers
https://www.gengophers.com
var url = gensearch('gengophers', data);
geni
http://geni.com
var url = gensearch('geni', data);
Only givenName
and familyName
are used for Geni searches.
https://www.google.com
var url = gensearch('google', data);
mocavo
http://www.mocavo.com/
var url = gensearch('mocavo', data);
myheritage
http://www.myheritage.com
var url = gensearch('myheritage', data);
newspapers
http://www.newspapers.com/
var url = gensearch('newspapers', data, [options]);
| option | default | notes |
|--------|---------|-------|
| lifespan
| 90 | If either a birthDate
or deathDate
exists, but not both, then this value is used to approximate the missing year. For example, if the birthDate
is 2 Feb 1766
and no deathDate
is given then we would add lifespan
to the birth year to get an approximate death year of 1856
. |
| datePadding
| 5 | This value is substracted from the calculated birth year and added to the calculated death year. |
nla trove
http://trove.nla.gov.au/
var url = gensearch('nlatrove', data);
openarchives
http://openarch.nl
var url = gensearch('openarchives', data);
Only givenName
and familyName
are used for Open Archive searches.
usgenweb
http://www.usgwarchives.net/
var url = gensearch('usgenweb', data);
werelate
http://werelate.org
var url = gensearch('werelate', data, [options]);
| option | default |
|--------|---------|
| birthRange
| 2 |
| deathRange
| 2 |
wikitree
http://www.wikitree.com/
var url = gensearch('wikitree', data);
worldvitalrecords
http://worldvitalrecords.com
var url = gensearch('worldvitalrecords', data, [options]);
| option | default |
|--------|---------|
| dateRange
| 2 |
Contribute
Setup
git clone https://github.com/rootsdev/gen-search.git
cd gen-search
npm install
Add a site
- Create the site file in the src/sites directory. Look at archives.js for a simple example or familysearch.js for a more complex example.
- Add the new site to the src/search.js site list, in alphabetical order please.
- Add a test file in the test/sites directory. Look at any of the other site test files for an example.
- Run tests with
npm test
. Thegensearch.js
file will be automatically built with browserify before the tests are run. - Document the new site in the README file, in alphabetical order please. Be sure to add a link in the site list just before the site specific docs.
- Commit and submit a pull request.