1 | # fontoxml-development-tools [![Build Status](https://travis-ci.org/FontoXML/fontoxml-development-tools.svg?branch=master)](https://travis-ci.org/FontoXML/fontoxml-development-tools) [![NPM version](https://badge.fury.io/js/%40fontoxml%2Ffontoxml-development-tools.svg)](https://badge.fury.io/js/%40fontoxml%2Ffontoxml-development-tools) [![Greenkeeper badge](https://badges.greenkeeper.io/FontoXML/fontoxml-development-tools.svg)](https://greenkeeper.io/)
|
2 |
|
3 | The development tools for FontoXML are command-line tools which offer support for developers when configuring FontoXML Editor instances and their complementary apps, and facilitate running them locally for testing purposes. They act as a gateway to the FontoXML SDK and can be used for creating and updating editor instances, and preparing XML schemas for use with FontoXML.
|
4 |
|
5 | ## Installation
|
6 | The development tools require [NPM](https://www.npmjs.com/get-npm) on [Node.js®](https://nodejs.org/) version 8.11 or higher which are freely available. After installing Node.js you can install the FontoXML development tools using the following command:
|
7 |
|
8 | npm i -g @fontoxml/fontoxml-development-tools
|
9 |
|
10 | > **tip**: You can use Node Version Manager on Linux/MacOS or its Windows counterpart to install and use multiple version of Node.js on a single system. This is useful if you develop different projects with different versions of Node.js.
|
11 |
|
12 | ## Usage
|
13 | Get help for the available commands:
|
14 |
|
15 | fontoxml-development-tools --help
|
16 |
|
17 | Get help for a specific command, detailing all its arguments:
|
18 |
|
19 | fontoxml-development-tools <command> --help
|
20 |
|
21 | Use the `fdt` shorthand instead of `fontoxml-development-tools`:
|
22 |
|
23 | fdt <command> --help
|
24 |
|
25 | ## Development license
|
26 | Certain commands, like `editor`, `connectors` and `content-quality`, require a valid developer license file on your system and the permissions to run them. A license file `fonto.lic` can be stored in either of these locations:
|
27 |
|
28 | * In your user home directory (`$HOME` on linux/MacOS, or `%homepath%` on Windows).
|
29 | * In an ancestor folder of where you are running the `fdt` command.
|
30 |
|
31 | Verify that your license file is installed correctly by running the `fdt license validate` command.
|
32 |
|
33 | To obtain a license file, or to obtain additional permissions, please contact us at https://fontoxml.com/contact-us/ or reach out to your FontoXML contact if you have one available. License files are personal and we disadvice to store them in any version control system you might have.
|
34 |
|
35 | ## Usage examples
|
36 | Validate and update the currently installed license file:
|
37 |
|
38 | fdt license validate
|
39 |
|
40 | Output a table with information about all attributes in a schema:
|
41 |
|
42 | fdt attributes [--schema <schemaPath>] [--columns name ns use defaultvalue ...]
|
43 |
|
44 | Output schema information about a specific attribute, including all its definitions:
|
45 |
|
46 | fdt attribute <attributeName> [--schema <schemaPath>]
|
47 |
|
48 | Output a table with information about all elements in a schema:
|
49 |
|
50 | fdt elements [--schema <schemaPath>] [--columns name ns local desc atts ...]
|
51 |
|
52 | Output schema information about a specific element, including detailed content model info:
|
53 |
|
54 | fdt element <elementName> [--schema <schemaPath>]
|
55 |
|
56 | Output a table with information about all operations in a repository:
|
57 |
|
58 | fdt operations [--columns name file label desc key ...]
|
59 |
|
60 | Output information about a specific operation:
|
61 |
|
62 | fdt operation <operationName>
|
63 |
|
64 | Output a table with information about all schemas:
|
65 |
|
66 | fdt schemas [--columns package locations path]
|
67 |
|
68 | Output a table with information about all simple types in a schema:
|
69 |
|
70 | fdt simpletypes [--columns name variety format]
|
71 |
|
72 | Extract messages from packages and save them in a message bundle template:
|
73 |
|
74 | fdt localization extract [<output>] [--paths <package1> [<package2> ...]]
|
75 |
|
76 | Merge multiple message bundles into a single bundle:
|
77 |
|
78 | fdt localization merge [<output>] --bundles <bundle1> <bundle2> [<bundle3> ...]
|
79 |
|
80 | Update message bundle with a new template bundle:
|
81 |
|
82 | fdt localization update <output> <bundle> [--output-to-stdout]
|
83 |
|
84 | Output a table with information about all messages in a message (template) bundle:
|
85 |
|
86 | fdt localization messages <bundle> [--search-in <search text>] [--search-out <search text>] [--search-package <search text>] [--search-file <search text>] [--with-conflicts] [--without-conflicts] [--with-out] [--without-out] [--no-table]
|
87 |
|
88 | Create a new instance of a FontoXML Editor:
|
89 |
|
90 | fdt editor init [--name <name>] [--schema <path>] [--favicon <path>] [--addons <addon> [<addon>]] [--non-interactive] [--version <version>]
|
91 |
|
92 | Upgrade an instance of a FontoXML Editor, and/or add or remove addons:
|
93 |
|
94 | fdt editor upgrade [--addons <addon> [<addon>]] [--add-addons <addon> [<addon>]] [--remove-addons <addon> [<addon>]] [--remove-backup] [--non-interactive] [--version <version>]
|
95 |
|
96 | Start a development server for running a FontoXML Editor:
|
97 |
|
98 | fdt editor run ...
|
99 |
|
100 | Create a build version of a FontoXML Editor for production usage:
|
101 |
|
102 | fdt editor build [--no-mangle]
|
103 |
|
104 | Compile a XSD schema to a schema format which can be used by a FontoXML editor:
|
105 |
|
106 | fdt editor schema compile [<schemaSourcePath>] [--overwrite] [--version <version>]
|
107 |
|
108 | Initialize a connectors instance in an empty or non-existent directory:
|
109 |
|
110 | fdt connectors init [--location <path>] --version <version>
|
111 |
|
112 | Run a connectors instance with a self-signed certificate to test your configuration:
|
113 |
|
114 | fdt connectors run [--location <path>] [--config-location <path>]
|
115 |
|
116 | Build a connectors docker image for production use:
|
117 |
|
118 | fdt connectors build [--location <path>] [--image-name <image-name>] [--image-tag <image-tag>]
|
119 |
|
120 | Upgrade an existing FontoXML Connectors instance to the specified version:
|
121 |
|
122 | fdt connectors upgrade [--location <path>] --version <version>
|
123 |
|
124 | Download a self-contained build:
|
125 |
|
126 | fdt connectors download-self-contained --version <version> --runtime <runtime> [--location <path>]
|
127 |
|
128 | Initialize a Content Quality App instance in an empty or non-existent directory:
|
129 |
|
130 | fdt content-quality init [--location <path>] --version <version>
|
131 |
|
132 | Run a Content Quality App instance to test your configuration:
|
133 |
|
134 | fdt content-quality run [--location <path>] [--config-location <path>]
|
135 |
|
136 | Build a FontoXML Content Quality App docker image for production use:
|
137 |
|
138 | fdt content-quality build [--location <path>] [--image-name <image-name>] [--image-tag <tag>]
|
139 |
|
140 | Upgrade an existing FontoXML Content Quality App instance to the specified version:
|
141 |
|
142 | fdt content-quality upgrade [--location <path>] --version <version>
|
143 |
|
144 | Download a self-contained build:
|
145 |
|
146 | fdt content-quality download-self-contained --version <version> --runtime <runtime> [--location <path>]
|