How to Submit a Language Pack to the Plugin Store


The best way to share a language pack with others is to add it to the Family Historian Plugin Store.  That way, any Family Historian user will be easily able to see it and install it.  All they will have to do is open the Language Packs Dialog within Family Historian (accessible from the Tools menu), click on the Import button, and choose ‘… from Family Historian Plugin Store‘ on the menu that appears  They will then see a list of language packs, including yours, and they can select it and click to import it.  Thereafter it will be available on their system as one of the available language packs.

If you have written a new language pack, or even if you have adapted and significantly improved somebody else’s language pack, please consider submitting it to the Family Historian plugin store – especially if there isn’t already a language pack there for your language.  You can do so anonymously if you wish, or you can use your real name – it’s up to you.  Obviously if yours will be the first language pack for a given language, it will be greatly valued.  But even if there are already other language packs for your language, please consider submitting yours anyway.  Different language packs may have different styles or benefits.  It’s good for users to have a choice.  Any user can download and install multiple language packs for the same language if they want to, and easily compare them; so there’s no problem about having more than one language pack for the same language.  It’s also not a problem if you have created your language pack by adapting someone else’s language pack – even if you previously downloaded that language pack from the plugin store.  More on this below.

You will be able to make as many changes and improvements as you want to your language pack after you have submitted it to the Plugin Store, so don’t assume that it has to be perfect before you submit it!

Submitting your language pack to the Plugin Store can be done in three steps:

  1. Apply to Become a Language Pack Author (if you aren’t one already)
  2. Prepare the Language Pack File
  3. Submit Your Language Pack File

All submissions are subject to the Terms and Conditions of Use.

If you have any problems or are unable to follow these instructions, please email

1. Apply to Become a Language Pack Author (if you aren’t one already)

To submit your language pack to the Plugin Store, you must first create an account in the Plugin Store as a Plugin Author.  It’s a good idea to do this part first because it can take a little while for your application to be processed.  To create the account, please do the following:

  • Go to and click on “Authors Area” in the top-right.
  • Click on the “Author application form” link in the “New Authors” area, fill in the details and click “Apply”.  There’s no need to specify a website if you don’t have one or don’t want to mention it.
  • We will process your application and email you your login details.  This may take a little while.  While waiting for your account details to arrive, please get your language pack file ready for submission (see next section below).
  • When the email arrives (the Subject line will probably be “[Plugin Store] Login Details” or something similar), click on the link to set your password.  Be sure to keep a record of your username and password (and the login link to the Plugin Store, which is for future reference.

2.  Prepare the Language Pack File

The file you will submit to the Plugin Store is the file that is created when you export the language pack.  But before you do that, please carefully check that the details in the header of the language plugin are correct.  To do that, select your language pack in the Language Packs Dialog and click on the Plugin button to view and edit the language pack plugin.  The plugin should have a header at the top which looks something like this:

@Title: French Language Pack
@Type: language
@Author: John Smith
@Contributors: Calico Pie Limited
@Version: 1.0
@LastUpdated: 5 Nov 2020
@Licence: This language pack is copyright (c) 2020 author and contributors,
and is licensed under the MIT License which is hereby incorporated by reference

Please check that you have all of these fields and that the values entered are all correct.  Here are notes on each of the fields:

  • @Title: optional.  Usually similar to the example above.
  • @Type: must have the value ‘language’, and nothing else, as shown in the example.
  • @Author: should have your name (it can be a comma-separated list of names if the pack has multiple authors).  If you wish to be anonymous, use a pseudonym rather than your real name.  Bear in mind that your language pack could be downloaded all over the world!
  • @Contributors: comma-separated list of people who have contributed to the language pack one way or another.  So for example, if you have adapted someone else’s language pack, you could either list them as a second author, or add them to the comma-separated list of contributors (e.g. “@Contributors: Calico Pie Limited, Amanda Swan, Nigel Jones”).  It’s up to you.
  • @Version: If this is your first submission, set the value to “1.0” as in the example above.  If you later make a minor improvement, you could change it to “1.1”.  A major enhancement could be “2.0”.  And so on.
  • @LastUpdated: put today’s date here.
  • @Licence:  Required.  We recommend that you enter this exactly as shown in the 3-line example above (just changing the year if necessary).  All Family Historian plugins and language packs are subject to the MIT license, which means that anyone is free to adapt them and use them in any way they want.  The licence also asserts that each plugin or language pack comes with no warranties of any kind and that you (and we) are not responsible for anything that might arise in connection with it. See for more details.

Once you are satisfied that the header information is correct, save changes to the plugin.  Then in the Language Packs Dialog, open the language pack header window by clicking on the Header button and confirm that all the details you entered are displaying correctly.  Please supply an appropriate description for the language pack in the Description field.  For example, you might add a description like this:

“This language pack can be used for ‘same language rendering’ of French to French, and can also be used for ‘other language translation’ of English to French.”

Press OK to close the Header dialog and save your language pack description.  Finally, select your language pack and click on the Export button.  Make a note of the file name and it’s location.  This is your language pack file that you will be submitting in the next step.

3. Submit Your Language Pack File

You are now ready to submit your language pack file to the Plugin Store.  Go to and login to your account.  Down the left-hand side of the window, you should see a “Language Packs” link.  Click on this and then click “Add New” (careful! It’s the Add New link under “Language Packs” you want and not the Add New link under “Plugins”).  The “Add New Language Pack” window opens.  Copy the language pack description (from the language pack header window in Step 2) into the main text field at the top.

In the area labelled “More Fields”, click on the Add File button to add your language pack file (at time of writing, this is a 2-step process where your file first gets added to the internal library of the Plugin Store and you have to check that it is selected and click another Add File button to add it to your submission) .

Still in the “More Fields” area, set Version, Submitter, Language Name and Internal Name to all match the values in the language pack header window from Step 2 (put the ‘Author’ details in the ‘Submitter‘ field).  The Language Id must at a minimum consist of the 3-letter language code for the language – e.g. “FRA” for French.  This code can also be found in the language pack header window, for your language pack.  If you wish to supply a longer language id, with a Variant value appended (see the Help for the language pack header window) you can do this.  There must, in that case, be a single space between the 3-letter code and the Variant value. So, for example, if the 3-letter code was “FRA” and your variant value was ‘Parisian dialect’, the language id would be “FRA Parisian dialect”.

Finally click the Submit for Review button.  Your language pack will be reviewed by Calico Pie before it is accepted. If there are any problems (e.g. missing fields in the plugin header), you will be contacted by email.