0.27.0 • Published 4 months ago

haystack-codegen v0.27.0

Weekly downloads
-
License
BSD-3-Clause
Repository
github
Last release
4 months ago

Haystack Core Code Generation Tools

This project is classed as experimental!

Generates TypeScript code for haystack-core using haystack 4 defs.

APIs

Please click here for the API documentation.

Def docs

Please click here for the generated typedoc information for all defs.

Installation

npm install haystack-codegen

Or to install globally...

npm install haystack-codegen --global

Use

Use the -t option to specify a space separated list of tags. For example, to create all the TypeScript code for a site and ahu tag...

defcodegen -t site ahu

If you want to generate TypeScript for all of the tags in a defs database run...

defcodegen -t *all*

Tip: try running typedoc on the generated code for some nice looking HTML documentation!

Generating a file

The tool runs relative to the directory it is run in. The default generated file path is ./src/haystack/types.ts. An alternative file can be specified via the -f option...

defcodegen -t site ahu -f ./src/foo/bar.ts

Specifying the defs

The tool uses defs to generate TypeScript code. The defs database can be specified in a number of ways. By default...

  • The tool looks for the FIN_HOME environment variable. If found, the defs will be compiled from the $FIN_HOME/lib/pod directory.
  • The tool looks for the FAN_HOME environment variable. If found, the defs will be compiled from the $FAN_HOME/lib.fan directory. In this scenario only POD files that start with ph will be used.
  • As a last resort, the tool will fallback to the def library embedded into haystack-codegen. Please note, this library could easily become out of date quickly.

Loading defs from a server

Due to the dynamic nature of defs, the most commonly used way is to load defs from a running server.

Ensure server authentication is disabled when doing this (for FIN/SkySpark use the -noAuth option on start up).

For instance, to generate the TypeScript code for the site tag from a server's demo project...

defcodegen -t site -u http://localhost:8080/api/demo

Help

For more information on command line options run defcodegen --help.

0.27.0

4 months ago

0.26.0

9 months ago

0.25.0

9 months ago

0.24.0

10 months ago

0.23.0

1 year ago

0.22.0

1 year ago

0.21.0

1 year ago

0.20.0

2 years ago

0.19.0

2 years ago

0.17.0

2 years ago

0.18.0

2 years ago

0.12.0

2 years ago

0.13.0

2 years ago

0.14.0

2 years ago

0.15.0

2 years ago

0.16.0

2 years ago

0.10.0

2 years ago

0.11.0

2 years ago

0.9.0

2 years ago

0.8.0

3 years ago

0.7.0

3 years ago

0.6.0

3 years ago

0.5.0

3 years ago

0.4.0

3 years ago

0.3.0

3 years ago

0.2.0

3 years ago

0.1.0

3 years ago