14.2.3 • Published 5 days ago

@angular-devkit/schematics v14.2.3

Weekly downloads
3,384,571
License
MIT
Repository
github
Last release
5 days ago

Schematics

A scaffolding library for the modern web.

Description

Schematics are generators that transform an existing filesystem. It can create files, refactor existing files, or move files around.

What distinguishes Schematics from other generators, such as Yeoman or Yarn Create, is that schematics are purely descriptive; no changes are applied to the actual filesystem until everything is ready to be committed. There is no side effect, by design, in Schematics.

Glossary

TermDescription
SchematicsA generator that executes descriptive code without side effects on an existing file system.
CollectionA list of schematics metadata. Schematics can be referred by name inside a collection.
ToolThe code using the Schematics library.
TreeA staging area for changes, containing the original file system, and a list of changes to apply to it.
RuleA function that applies actions to a Tree. It returns a new Tree that will contain all transformations to be applied.
SourceA function that creates an entirely new Tree from an empty filesystem. For example, a file source could read files from disk and create a Create Action for each of those.
ActionAn atomic operation to be validated and committed to a filesystem or a Tree. Actions are created by schematics.
SinkThe final destination of all Actions.

Tooling

Schematics is a library, and does not work by itself. A reference CLI is available on this repository, but is not published on NPM. This document explains the library usage and the tooling API, but does not go into the tool implementation itself.

The tooling is responsible for the following tasks:

  1. Create the Schematic Engine, and pass in a Collection and Schematic loader.
  2. Understand and respect the Schematics metadata and dependencies between collections. Schematics can refer to dependencies, and it's the responsibility of the tool to honor those dependencies. The reference CLI uses NPM packages for its collections.
  3. Create the Options object. Options can be anything, but the schematics can specify a JSON Schema that should be respected. The reference CLI, for example, parses the arguments as a JSON object and validates it with the Schema specified by the collection.
  4. Schematics provides some JSON Schema formats for validation that tooling should add. These validate paths, html selectors and app names. Please check the reference CLI for how these can be added.
  5. Call the schematics with the original Tree. The tree should represent the initial state of the filesystem. The reference CLI uses the current directory for this.
  6. Create a Sink and commit the result of the schematics to the Sink. Many sinks are provided by the library; FileSystemSink and DryRunSink are examples.
  7. Output any logs propagated by the library, including debugging information.

The tooling API is composed of the following pieces:

Engine

The SchematicEngine is responsible for loading and constructing Collections and Schematics. When creating an engine, the tooling provides an EngineHost interface that understands how to create a CollectionDescription from a name, and how to create a SchematicDescription.

Schematics (Generators)

Schematics are generators and part of a Collection.

Collection

A Collection is defined by a collection.json file (in the reference CLI). This JSON defines the following properties:

Prop NameTypeDescription
namestringThe name of the collection.
versionstringUnused field.

Schematic

Operators, Sources and Rules

A Source is a generator of Tree; it creates a root tree from nothing. A Rule is a transformation from one Tree to another. A Schematic (at the root) is a Rule that is normally applied on the filesystem.

Operators

FileOperators apply changes to a single FileEntry and return a new FileEntry. The result follows these rules:

  1. If the FileEntry returned is null, a DeleteAction will be added to the action list.
  2. If the path changed, a RenameAction will be added to the action list.
  3. If the content changed, an OverwriteAction will be added to the action list.

It is impossible to create files using a FileOperator.

FileOperatorDescription
contentTemplate<T>(options: T)Apply a content template (see the Template section)
pathTemplate<T>(options: T)Apply a path template (see the Template section)

Provided Sources

The Schematics library provides multiple Source factories by default that cover basic use cases:

SourceDescription
source(tree: Tree)Creates a source that returns the tree passed in argument.
empty()Creates a source that returns an empty tree.
apply(source: Source, rules: Rule[])Apply a list of rules to a source, and return the result.
url(url: string)Loads a list of files from a URL and returns a Tree with the files as CreateAction applied to an empty Tree

Provided Rules

The schematics library also provides Rule factories by default:

RuleDescription
noop()Returns the input Tree as is.
chain(rules: Rule[])Returns a Rule that's the concatenation of other rules.
forEach(op: FileOperator)Returns a Rule that applies an operator to every file of the input Tree.
move(root: string)Moves all the files from the input to a subdirectory.
merge(other: Tree)Merge the input tree with the other Tree.
contentTemplate<T>(options: T)Apply a content template (see the Template section) to the entire Tree.
pathTemplate<T>(options: T)Apply a path template (see the Template section) to the entire Tree.
template<T>(options: T)Apply both path and content templates (see the Template section) to the entire Tree.
filter(predicate: FilePredicate<boolean>)Returns the input Tree with files that do not pass the FilePredicate.

Examples

Simple

An example of a simple Schematics which creates a "hello world" file, using an option to determine its path:

import {Tree} from '@angular-devkit/schematics';

export default function MySchematic(options: any) {
  return (tree: Tree) => {
    tree.create(options.path + '/hi', 'Hello world!');
    return tree;
  };
}

A few things from this example:

  1. The function receives the list of options from the tooling.
  2. It returns a Rule, which is a transformation from a Tree to another Tree.

Future Work

Schematics is not done yet. Here's a list of things we are considering:

  • Smart defaults for Options. Having a JavaScript function for default values based on other default values.
  • Prompt for input options. This should only be prompted for the original schematics, dependencies to other schematics should not trigger another prompting.
  • Tasks for running tooling-specific jobs before and after a schematics has been scaffolded. Such tasks can involve initialize git, or npm install. A specific list of tasks should be provided by the tool, with unsupported tasks generating an error.
@schematics/angular@schematics/update@angular/clikanzhucai-nest-cli@chebandoneon/componentriyenzfdlfkdlk-schematicslksgllskgls-flskgldlux-components-generatemobilelivedesignsystemreactsg-cafenx-electron-testng-mvp@ruslanguns/schematicsnew_package_by_meng-module-addtailwind-schematicnx-gatsby-builder@goldenapple/cliheader-demo-trialkronos-uilimber-projectpt-reusables-schematicsmart-sense-clingx-modal-bsdsy-styleguidecex-shema@tcsyyj/bithumb-page@serverpanel/angularc384c38423no-way-84sim84angy-84angyy-84hahah2generator-sesame@vicoders/cli-suppoprtlcars-schematicsngx-config-splitternitor-firebase-login-testonenitor-sample-highcharts-testnitor-sample-highcharts-test10nitor-sample-highcharts-test2nitor-sample-highcharts-test3nitor-sample-highcharts-test4nitor-sample-highcharts-test5nitor-sample-highcharts-test6nitor-sample-highcharts-test7nitor-sample-highcharts-test8nitor-sample-highcharts-test9nitor-sample-testchartnitor-sample-testcharttwonitor-custom-login-test-twozschematicsshallow-render-schematic@dry-stack/schematicsrest-mariadbdashboard-shared@asap-dev/api-schematics-test@daniloraisi/azure-func-http121342b@nodesoccoop/angular-ncr-srcsng-ce-schematicsfacade-pattern@ts4/nestng-codeffekt-cliresscnewressc@darpankumar80/demo-schematics@ng-ally/schematics@volo/abp.ng.suite@alvesthiago/clean-cli@flkslkfs/schematics@microf()/schematicsmicrofunction-schematics@afunworm/bootstrapx@topechelon/bb-schematics@nx-azure/storage-cache@zjayers/schematics@xcentium/jss-angular-kit@lgm-clic/clic-schematicssamurai-cli@evenardo/schematics-nestjs@yatsiuk07/genspm-core-genws-modelorxmx-coresinergiadigital-abm@lgm-clic/schematicsfts-componentoneloginschematics@ngva/schematicsbai-catalystng-mega@anfibiacreativa/scully-docs@atarek/octo-schematicssumax-schema-testingsumax-schematicsapollo-components
14.1.3

1 month ago

14.2.0

1 month ago

14.2.1

1 month ago

14.2.2

18 days ago

14.2.3

11 days ago

14.2.0-rc.0

1 month ago

15.0.0-next.2

5 days ago

15.0.0-next.1

11 days ago

15.0.0-next.0

18 days ago

14.2.0-next.2

1 month ago

14.1.0-next.3

3 months ago

14.1.0-next.2

3 months ago

14.1.0-next.4

3 months ago

14.1.0-next.1

3 months ago

14.1.0-next.0

4 months ago

14.1.0-rc.3

2 months ago

13.3.9

2 months ago

13.3.7

4 months ago

13.3.8

3 months ago

14.1.0

2 months ago

14.1.1

2 months ago

14.1.2

2 months ago

14.0.0-rc.2

4 months ago

14.0.0-rc.3

4 months ago

14.0.0

4 months ago

14.0.1

4 months ago

14.0.2

3 months ago

14.0.3

3 months ago

14.0.4

3 months ago

14.0.5

3 months ago

14.0.6

2 months ago

14.0.7

2 months ago

12.2.18

2 months ago

14.2.0-next.0

2 months ago

14.2.0-next.1

2 months ago

14.0.0-next.12

5 months ago

14.0.0-next.13

5 months ago

13.3.5

5 months ago

13.3.6

4 months ago

13.3.4

5 months ago

14.0.0-rc.1

4 months ago

14.0.0-rc.0

5 months ago

14.0.0-next.10

5 months ago

14.0.0-next.11

5 months ago

14.0.0-next.9

6 months ago

14.0.0-next.8

6 months ago

14.0.0-next.7

6 months ago

14.0.0-next.6

6 months ago

14.0.0-next.5

7 months ago

11.2.19

6 months ago

13.3.3

6 months ago

13.3.1

6 months ago

13.3.2

6 months ago

13.3.0

6 months ago

13.2.6

7 months ago

12.2.17

6 months ago

14.0.0-next.4

7 months ago

10.2.4

9 months ago

13.1.0-rc.0

10 months ago

13.2.0-next.2

9 months ago

13.2.0-next.0

10 months ago

13.2.0-next.1

9 months ago

14.0.0-next.3

7 months ago

14.0.0-next.2

7 months ago

14.0.0-next.1

8 months ago

14.0.0-next.0

8 months ago

11.2.18

9 months ago

11.2.17

9 months ago

11.2.16

9 months ago

13.1.3

9 months ago

13.1.4

8 months ago

13.1.1

10 months ago

13.1.2

9 months ago

13.1.0

10 months ago

13.2.4

7 months ago

13.2.5

7 months ago

13.2.2

8 months ago

13.2.3

8 months ago

13.2.0

8 months ago

13.2.1

8 months ago

12.2.14

10 months ago

12.2.15

9 months ago

12.2.16

8 months ago

13.2.0-rc.0

8 months ago

13.2.0-rc.1

8 months ago

13.1.0-next.3

10 months ago

13.1.0-next.2

10 months ago

13.1.0-next.1

11 months ago

13.0.4

10 months ago

13.0.2

11 months ago

13.0.3

10 months ago

13.1.0-next.0

11 months ago

13.0.0

11 months ago

13.0.1

11 months ago

11.2.15

11 months ago

13.0.0-rc.3

11 months ago

13.0.0-rc.2

11 months ago

12.2.12

11 months ago

12.2.13

11 months ago

12.2.9

12 months ago

13.0.0-rc.1

11 months ago

13.0.0-rc.0

12 months ago

13.0.0-next.9

12 months ago

13.0.0-next.8

12 months ago

12.2.10

12 months ago

12.2.11

11 months ago

12.2.8

12 months ago

13.0.0-next.7

12 months ago

12.2.7

1 year ago

13.0.0-next.6

1 year ago

12.2.6

1 year ago

13.0.0-next.5

1 year ago

12.2.5

1 year ago

13.0.0-next.4

1 year ago

12.2.4

1 year ago

13.0.0-next.3

1 year ago

12.2.3

1 year ago

13.0.0-next.2

1 year ago

12.2.2

1 year ago

13.0.0-next.1

1 year ago

12.2.1

1 year ago

13.0.0-next.0

1 year ago

12.2.0

1 year ago

12.2.0-rc.0

1 year ago

12.1.4

1 year ago

12.2.0-next.3

1 year ago

12.1.3

1 year ago

12.2.0-next.2

1 year ago

12.1.2

1 year ago

12.1.1

1 year ago

12.2.0-next.0

1 year ago

12.1.0

1 year ago

12.0.5

1 year ago

12.1.0-next.6

1 year ago

12.0.4

1 year ago

12.1.0-next.5

1 year ago

11.2.14

1 year ago

12.0.3

1 year ago

12.1.0-next.4

1 year ago

12.0.2

1 year ago

12.1.0-next.3

1 year ago

12.0.0

1 year ago

12.0.1

1 year ago

11.2.13

1 year ago

12.0.0-rc.3

1 year ago

12.1.0-next.2

1 year ago

11.2.12

1 year ago

11.2.11

1 year ago

12.0.0-rc.1

1 year ago

12.0.0-rc.2

1 year ago

11.2.10

1 year ago

12.0.0-rc.0

1 year ago

11.2.9

1 year ago

12.0.0-next.9

1 year ago

11.2.8

1 year ago

12.0.0-next.8

1 year ago

11.2.7

1 year ago

12.0.0-next.7

1 year ago

11.2.6

2 years ago

12.0.0-next.6

2 years ago

12.0.0-next.5

2 years ago

11.2.5

2 years ago

11.2.4

2 years ago

12.0.0-next.4

2 years ago

12.0.0-next.3

2 years ago

11.2.3

2 years ago

9.1.15

2 years ago

10.2.3

2 years ago

11.2.2

2 years ago

12.0.0-next.2

2 years ago

11.2.1

2 years ago

12.0.0-next.1

2 years ago

12.0.0-next.0

2 years ago

11.2.0

2 years ago

9.1.14

2 years ago

10.2.2

2 years ago

11.1.4

2 years ago

11.2.0-rc.1

2 years ago

11.1.3

2 years ago

11.2.0-rc.0

2 years ago

11.2.0-next.0

2 years ago

11.1.2

2 years ago

11.1.1

2 years ago

11.1.0

2 years ago

11.1.0-rc.0

2 years ago

11.0.7

2 years ago

11.0.6

2 years ago

11.1.0-next.4

2 years ago

10.2.1

2 years ago

9.1.13

2 years ago

11.0.5

2 years ago

11.1.0-next.3

2 years ago

11.1.0-next.2

2 years ago

11.0.4

2 years ago

11.0.3

2 years ago

11.1.0-next.1

2 years ago

11.0.2

2 years ago

11.1.0-next.0

2 years ago

11.0.1

2 years ago

11.0.0

2 years ago

11.0.0-rc.3

2 years ago

11.0.0-rc.2

2 years ago

11.0.0-rc.1

2 years ago

11.0.0-rc.0

2 years ago

10.2.0

2 years ago

10.1.7

2 years ago

11.0.0-next.7

2 years ago

11.0.0-next.6

2 years ago

10.1.6

2 years ago

11.0.0-next.5

2 years ago

10.1.5

2 years ago

11.0.0-next.4

2 years ago

10.1.4

2 years ago

11.0.0-next.3

2 years ago

10.1.3

2 years ago

11.0.0-next.2

2 years ago

10.1.2

2 years ago

10.1.1

2 years ago

11.0.0-next.1

2 years ago

11.0.0-next.0

2 years ago

10.1.0

2 years ago

10.0.8

2 years ago

10.1.0-rc.0

2 years ago

10.1.0-next.7

2 years ago

10.0.7

2 years ago

10.1.0-next.6

2 years ago

10.0.6

2 years ago

10.1.0-next.5

2 years ago

10.1.0-next.4

2 years ago

10.1.0-next.3

2 years ago

10.0.5

2 years ago

8.3.29

2 years ago

10.0.4

2 years ago

10.1.0-next.2

2 years ago

9.1.12

2 years ago

10.0.3

2 years ago

10.1.0-next.1

2 years ago

9.1.11

2 years ago

10.0.2

2 years ago

10.1.0-next.0

2 years ago

10.0.1

2 years ago

9.1.10

2 years ago

10.0.0

2 years ago

8.3.28

2 years ago

9.1.9

2 years ago

10.0.0-rc.4

2 years ago

10.0.0-rc.5

2 years ago

8.3.27

2 years ago

9.1.8

2 years ago

10.0.0-rc.3

2 years ago

10.0.0-rc.2

2 years ago

9.1.7

2 years ago

10.0.0-rc.0

2 years ago

10.0.0-next.6

2 years ago

9.1.6

2 years ago

10.0.0-next.5

2 years ago

9.1.5

2 years ago

10.0.0-next.4

2 years ago

9.1.4

2 years ago

10.0.0-next.3

2 years ago

9.1.3

2 years ago

10.0.0-next.2

2 years ago

9.1.2

2 years ago

10.0.0-next.1

2 years ago

10.0.0-next.0

2 years ago

9.1.1

2 years ago

8.3.26

2 years ago

7.3.10

2 years ago

9.1.0

3 years ago

9.1.0-rc.0

3 years ago

9.0.7

3 years ago

9.1.0-next.4

3 years ago

9.0.6

3 years ago

9.1.0-next.3

3 years ago

9.0.5

3 years ago

9.1.0-next.2

3 years ago

9.0.4

3 years ago

9.1.0-next.1

3 years ago

9.1.0-next.0

3 years ago

9.0.3

3 years ago

9.0.2

3 years ago

9.0.1

3 years ago

9.0.0

3 years ago

8.3.25

3 years ago

9.0.0-rc.14

3 years ago

9.0.0-rc.13

3 years ago

8.3.24

3 years ago

9.0.0-rc.12

3 years ago

9.0.0-rc.11

3 years ago

9.0.0-rc.10

3 years ago

8.3.23

3 years ago

9.0.0-rc.9

3 years ago

8.3.22

3 years ago

9.0.0-rc.8

3 years ago

8.3.21

3 years ago

9.0.0-rc.7

3 years ago

9.0.0-rc.6

3 years ago

9.0.0-rc.5

3 years ago

8.3.20

3 years ago

9.0.0-rc.4

3 years ago

9.0.0-rc.3

3 years ago

9.0.0-rc.2

3 years ago

8.3.19

3 years ago

8.3.18

3 years ago

9.0.0-rc.1

3 years ago

9.0.0-rc.0

3 years ago

8.3.17

3 years ago

9.0.0-next.19

3 years ago

8.3.16

3 years ago

9.0.0-next.18

3 years ago

9.0.0-next.17

3 years ago

8.3.15

3 years ago

9.0.0-next.16

3 years ago

9.0.0-next.15

3 years ago

8.3.14

3 years ago

9.0.0-next.14

3 years ago

8.3.13

3 years ago

9.0.0-next.13

3 years ago

8.3.12

3 years ago

9.0.0-next.12

3 years ago

9.0.0-next.11

3 years ago

8.3.10

3 years ago

9.0.0-next.10

3 years ago

8.3.9

3 years ago

9.0.0-next.9

3 years ago

9.0.0-next.8

3 years ago

8.3.8

3 years ago

9.0.0-next.7

3 years ago

8.3.7

3 years ago

9.0.0-next.6

3 years ago

8.3.6

3 years ago

8.3.5

3 years ago

9.0.0-next.5

3 years ago

8.3.4

3 years ago

9.0.0-next.4

3 years ago

9.0.0-next.3

3 years ago

8.3.3

3 years ago

9.0.0-next.2

3 years ago

8.3.2

3 years ago

8.3.1

3 years ago

9.0.0-next.1

3 years ago

9.0.0-next.0

3 years ago

8.3.0

3 years ago

8.3.0-rc.0

3 years ago

8.2.2

3 years ago

8.3.0-next.2

3 years ago

8.3.0-next.1

3 years ago

8.2.1

3 years ago

8.2.0

3 years ago

8.3.0-next.0

3 years ago

8.1.3

3 years ago

8.2.0-rc.0

3 years ago

8.2.0-next.1

3 years ago

8.1.2

3 years ago

8.2.0-next.0

3 years ago

8.1.1

3 years ago

8.1.0

3 years ago

8.0.6

3 years ago

8.0.5

3 years ago

8.1.0-rc.0

3 years ago

8.1.0-beta.3

3 years ago

8.0.4

3 years ago

8.1.0-beta.2

3 years ago

8.1.0-beta.1

3 years ago

8.1.0-beta.0

3 years ago

8.0.3

3 years ago

8.0.2

3 years ago

8.0.1

3 years ago

8.0.0

3 years ago

8.0.0-rc.4

3 years ago

8.0.0-rc.3

3 years ago

7.3.9

3 years ago

8.0.0-rc.2

3 years ago

8.0.0-rc.1

3 years ago

8.0.0-rc.0

3 years ago

8.0.0-beta.18

3 years ago

8.0.0-beta.17

3 years ago

8.0.0-beta.16

3 years ago

8.0.0-beta.15

3 years ago

8.0.0-beta.14

3 years ago

8.0.0-beta.13

3 years ago

8.0.0-beta.12

3 years ago

8.0.0-beta.11

3 years ago

7.3.8

3 years ago

8.0.0-beta.10

4 years ago

7.3.7

4 years ago

8.0.0-beta.9

4 years ago

8.0.0-beta.8

4 years ago

8.0.0-beta.7

4 years ago

7.3.6

4 years ago

8.0.0-beta.6

4 years ago

7.3.5

4 years ago

8.0.0-beta.5

4 years ago

7.3.4

4 years ago

8.0.0-beta.4

4 years ago

8.0.0-beta.2

4 years ago

7.3.3

4 years ago

8.0.0-beta.1

4 years ago

7.3.2

4 years ago

7.3.1

4 years ago

8.0.0-beta.0

4 years ago

7.3.0

4 years ago

7.2.4

4 years ago

7.3.0-rc.0

4 years ago

7.2.3

4 years ago

7.2.2

4 years ago

7.3.0-beta.0

4 years ago

7.2.1

4 years ago

7.2.0

4 years ago

0.8.9

4 years ago

7.2.0-rc.0

4 years ago

7.1.4

4 years ago

7.2.0-beta.2

4 years ago

7.1.3

4 years ago

7.2.0-beta.1

4 years ago

7.1.2

4 years ago

7.1.1

4 years ago

7.2.0-beta.0

4 years ago

0.8.8

4 years ago

7.1.0

4 years ago

7.0.7

4 years ago

7.1.0-rc.0

4 years ago

7.0.6

4 years ago

7.0.5

4 years ago

7.1.0-beta.1

4 years ago

0.8.7

4 years ago

7.1.0-beta.0

4 years ago

7.0.4

4 years ago

7.0.3

4 years ago

0.8.6

4 years ago

7.0.2

4 years ago

7.0.1

4 years ago

7.0.0

4 years ago

0.8.5

4 years ago

7.0.0-rc.3

4 years ago

7.0.0-rc.2

4 years ago

7.0.0-rc.1

4 years ago

0.8.4

4 years ago

0.6.0-rc.0

4 years ago

7.0.0-rc.0

4 years ago

7.0.0-beta.4

4 years ago

0.8.3

4 years ago

0.9.0-beta.3

4 years ago

0.8.2

4 years ago

0.9.0-beta.2

4 years ago

0.9.0-beta.1

4 years ago

0.9.0-beta.0

4 years ago

0.8.1

4 years ago

0.8.0

4 years ago

0.8.0-rc.1

4 years ago

0.8.0-rc.0

4 years ago

0.7.5

4 years ago

0.7.4

4 years ago

0.8.0-beta.3

4 years ago

0.8.0-beta.2

4 years ago

0.7.3

4 years ago

0.8.0-beta.1

4 years ago

0.8.0-beta.0

4 years ago

0.7.2

4 years ago

0.7.1

4 years ago

0.7.0

4 years ago

0.7.0-rc.3

4 years ago

0.7.0-rc.2

4 years ago

0.7.0-rc.1

4 years ago

0.7.0-rc.0

4 years ago

0.7.0-beta.2

4 years ago

0.6.8

4 years ago

0.7.0-beta.1

4 years ago

0.7.0-beta.0

4 years ago

0.6.7

4 years ago

0.6.6

4 years ago

0.6.5

4 years ago

0.6.4

4 years ago

0.6.3

4 years ago

0.6.2

4 years ago

0.6.1

4 years ago

0.6.0

4 years ago

0.5.13

4 years ago

0.5.12

4 years ago

0.5.11

4 years ago

0.5.10

4 years ago

0.5.9

4 years ago

0.5.8

4 years ago

0.5.7

4 years ago

0.5.6

4 years ago

0.5.5

4 years ago

0.5.4

4 years ago

0.5.3

4 years ago

0.5.2

4 years ago

0.5.1

4 years ago

0.5.0

4 years ago

0.4.9

4 years ago

0.4.8

4 years ago

0.4.7

5 years ago

0.4.6

5 years ago

0.4.5

5 years ago

0.4.4

5 years ago

0.4.3

5 years ago

0.4.2

5 years ago

0.4.1

5 years ago

0.3.2

5 years ago

0.4.0

5 years ago

0.3.1

5 years ago

0.3.0

5 years ago

0.2.0

5 years ago

0.0.52

5 years ago

0.0.51

5 years ago

0.0.50

5 years ago

0.0.49

5 years ago

0.0.48

5 years ago

0.0.46

5 years ago

0.0.45

5 years ago

0.0.44

5 years ago

0.0.43

5 years ago

0.0.42

5 years ago

0.0.41

5 years ago

0.0.40

5 years ago

0.0.39

5 years ago

0.0.38

5 years ago

0.0.37

5 years ago

0.0.36

5 years ago

0.0.35

5 years ago

0.0.34

5 years ago

0.0.33

5 years ago

0.0.32

5 years ago

0.0.31

5 years ago

0.0.30

5 years ago

0.0.28

5 years ago

0.0.27

5 years ago

0.0.26

5 years ago

0.0.25

5 years ago

0.0.24

5 years ago

0.0.23

5 years ago

0.0.22

5 years ago

0.0.21

5 years ago

0.0.19

5 years ago

0.0.18

5 years ago

0.0.17

5 years ago

0.0.16

5 years ago

0.0.15

5 years ago

0.0.14

5 years ago

0.0.13

5 years ago

0.0.12

5 years ago

0.0.11

5 years ago

0.0.10

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago