Wondering what’s next for npm?Check out our public roadmap! »

This package has been deprecated

Author message:

npm i cv.json

json-vcard

1.2.1 • Public • Published

json-vcard

NPM

Project License Version Travis npm

When you want to create a VCard (CV website), you have to put your information into a static HTML file (if you don't want a server based one). Then, if you want to change the design, sometimes changing CSS is not enough; you have to change HTML too. So, this project meant to:

  • Create a CV webpage without needing to configure servers.
  • Facilitate the update of informations without breaking the page's structure.
  • Make it easy to select and create themes.

Technically speaking:

  • Create a client side VCard.
  • Separate information and design.
  • Create many themes.

As consequences:

  • The application can be hosted widely and doesn't need any special server configuration
  • The page is built locally and dynamically in the user's side
  • The themes can be changed easily without
  • Most importantly, the user doesn't have to program anything

See a demo here

How it works

The HTML file doesn't contain anything at all. It just calls for the script which will do the calls.

GitHub Logo

  1. The browser will download the index file
  2. Then, it downloads the script
  3. The script will download the css specified in the index file and apply it to the documznt
  4. It will download the template into a shared string
  5. The script will then merge the template and the information in the json file
  6. If there are some files, the script will download them asynchronously
  7. When the script receive response from a file it will merge its content into the template
  8. Finally, when all the wanted files has responded, the script pushed the merged content into the body of the page

Check the API

How to use

By introducing information inside a json file ("vcard.json"), you can generate a Vcard webpage (CV). This can be done using javascript ("jsonvcard.js") which is called as follows:

<html>
<head>
  <meta charset="UTF-8">
  <title>Test portfelio</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <script type="text/javascript" src="<link/to/jsonvcard.js>" ></script> 
</head>
<body>
  <script>
    JsonVCard.setStyleName("violet")
      .setRelativePath("link/to/current/directory") /*where your profile picture and helper files are*/
      .setThemesPath("link/to/the/theme")/*Not affected by setRelativePath*/
      .setThemeName("theme-name")/*must come after setThemesPath*/
      .setFooter("link/to/footer.htm") /*Not affected by setRelativePath*/
      .process("link/to/vcard.json");/*Not affected by setRelativePath*/
  </script> 
</body>
</html>

The json file ("vcard.json") contains information about the one for whom we want to generate a CV. it is self explanatory and easy to fill.

For API documentation, check this YuiDoc generated documentation

For a list of available themes, check THIS

Download from Github

  • Download the last release HERE
  • Extract the files in your project
  • Modify index.html
  • Modify vcard.json

Download from Npm

In your project tree, tape this command line to download the latest version to "node_modules":

npm install json-vcard
node node_modules/json-vcard/install.js

All needed files will be copied to the root (where the shell is positioned)

  • Modify index.html
  • Modify vcard.json

Also, if you just want to update the package, don't execute the last instruction. Otherwise, it will overwrite your json file (if its namme is vcard.json)

Community

All the C's are here:

License

Copyright (C) 2016-2017 Abdelkrime Aries

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Install

npm i json-vcard

DownloadsWeekly Downloads

2

Version

1.2.1

License

Apache-2.0

Last publish

Collaborators

  • avatar