Europass Parser JavaScript Library


Europass CV helps users to present their skills and qualifications effectively and clearly. Any user can create a CV online here.   

Europass Parser JavaScript Library gives the opportunity to developers to parse Europass CV information created from users quickly into their forms.

Get the library at our GitHub page.

Getting Started

  • europass-config.js includes all the available Europass Schema keys that can be parsed into an HTML form. For example, in the following line:
    { 'original': 'SkillsPassport.LearnerInfo.Identification.PersonName.FirstName', 'replace': 'name', 'enabled': true},

    The key original indicates the absolute path to the Europass CV JSON Schema in dot annotation style.

    The key replace is the name you have declared in the specific input field of the form.

    The key enable gives extra flexibility to the developer in case a form field should not be populated from Europass CV data.

  • europass-parser.js is the library that takes as an input the configuration file and fills the HTML elements.


Some sections, such as Work Experience, Education, Achievements, Languages, Skills, have more than one Object inside. For these sections, the corresponding HTML elements need to be populated by the developer for the Europass Parser to be able to fill them in.

The events below inform the developer of the number of Objects for each Section that exists inside Europass CV data.

  • Work Experience records 'work_length'
  • Education records 'education_length'
  • Achievements records 'achievements_length'
  • Mother tongues records 'mother_tongues_length'
  • Foreign languages records 'foreign_languages'
  • Driving licenses records 'driving_length'

For these sections europass-config.js contains an extra key, the suffix

{ 'original': 'SkillsPassport.LearnerInfo.WorkExperience.Position.Label', 'replace': 'work_experience_title', 'suffix': '_', 'enabled': true}

For example:

document.addEventListener('work_length', function (event) {
    var number_of_work_experiences = event.detail;
     Create here the corresponding html fields


The suffix should be used as follows:

<input name="work_experience_title"></input> 
<!-- The html below should be generated from the developer if does not already exists. -->
<input name="work_experience_title_1"></input>

This way the Europass Parser JavaScript Library finds the available fields to fill in.

Notice: All the HTML elements that are to be filled in from the library must be at least created at the time the event is fired.

Finished parsing event.

  • Finishing parsing Event 'EuropassParser_finished'


  • Usage with React.js
    1. Install Europass Parser JavaScript Library through npm
    2. Import the library and the config into the component
      //Other React Imports
      import EuropassParser from 'europass-parser';
      import EuropassParserConfig from './config';


      window.EuropassParserConfig = EuropassParserConfig;


    3. Use the library following the Get Started instructions.
  • Usage with Angular 4+
    1. install Europass Parser JavaScript Library through npm
    2. add in .angular-cli.json file in scripts


    3. add the following into typings.d.ts
      declare module 'europass-parser'
    4. add it into the components imports
      import * as EuropassParser from 'europass-parser';


    5. Use it as previously described.

Getting the library

There are multiple ways of getting europass-parser.js

  • Via NPM:
    npm install europass-parser.js 



    var EuropassParser = require('europass-parser');


    import * as EuropassParser form 'europass-parser';


  • Via Download:

    Click here to download Europass Parser JavaScript Library.
    Unzip the folder and include the scripts inside into your project.

    <script src="path/to/europass-config.js"></script>
    // When you get the Europass CV file from a user pass it to the library


  • Compile from sources:
    1. Clone this repository
    2. cd into the repository folder
       npm install 
       npm run build 


    3. build folder is generated containing the europass-parser.js and europass-config.js

Was this page helpful?
Let us know how we did