[](https://www.npmjs.com/package/fa-diagrams) [](https://travis-ci.org/Klemek/fa-diagrams) [](https://github.com/boyter/scc/#badges-beta) [](https://coveralls.io/github/Klemek/fa-diagrams?branch=master) [](https://lgtm.com/projects/g/Klemek/fa-diagrams/context:javascript) [](https://lgtm.com/projects/g/Klemek/fa-diagrams/alerts/) # fa-diagrams **SVG diagrams built from Font-Awesome icons**  ### **[Web Editor](https://klemek.github.io/fa-diagrams)** ## Summary * [Usage](#usage) * [Node module](#node-module) * [Html script](#html-script) * [Install](#install) * [CDN](#cdn) * [Static scripts](#static-scripts) * [NPM](#npm) * [Build from sources](#build-from-sources) * [API](#api) * [`options`](#options) * [`nodes`](#nodes) * [`links`](#links) * [Sub-elements](#sub-elements) * [More info](#more-info) * [Icon names](#icon-names) * [Link types](#link-types) * [Thrown errors](#thrown-errors) * [Change icons](#change-icons) * [Examples](#examples) * [Example 1 : Hello World](#example-1-hello-world) * [Example 2 : Web App](#example2-web-app) ## Usage *[back to top](#top)* ### Node module ```javascript const faDiagrams = require('fa-diagrams'); // data: example1 const data = { "nodes": [ { "name": "node1", "icon": "laptop-code", "color": "#4E342E", "bottom": "my app" }, { "name": "node2", "icon": "globe", "color": "#455A64", "bottom": "world" } ], "links": [ { "from": "node1", "to": "node2", "color": "#333333", "top": { "icon": "envelope" }, "bottom": "\"hello\"" } ] } const svg = faDiagrams.compute(data); // string containing xml data //export as SVG with fs const fs = require('fs'); fs.writeFileSync('diagram.svg', svg, {encoding:'utf-8'}); //export as PNG with svg2img (npm i svg2img) const svg2img = require('svg2img'); svg2img(svg, function(error, buffer) { fs.writeFileSync('diagram.png', buffer); }); ``` Will produce the diagram above ### Html script ```html
... ... ... ...