How It Works¶
Signals has three main components:
- The parser
- The generators
- The templates
Parser¶
The parser reads your JSON schema file and translates those JSON objects into Python objects. It creates two main types of objects DataObject``s, which include the fields, relationships, and structure of the data your API sends, and ``URL``s with specific ``API
endpoints associated.
Generators¶
By and large, each generator should correspond to a front-end platform (e.g., iOS, Android, AngularJS). TODO: Better explanation of what a generator does that is separate from what the templates do
Templates¶
We use Jinja, the popular Python templating engine, to produce the actual model definitions and code to make server requests. A single generator could have multiple template styles. For example, the iOS generator could have both Objective-C and Swift templates, an AngularJS generator could have templates for $http
, $resource
, and restangular
.