
Security News
NVD Concedes Inability to Keep Pace with Surging CVE Disclosures in 2025
Security experts warn that recent classification changes obscure the true scope of the NVD backlog as CVE volume hits all-time highs.
ts-creator
Advanced tools
A code generator to generate TypeScript code generator from TypeScript code
npm install ts-creator
import creator from 'ts-creator'
const generatedFactoryCode = creator(`const foo = "your code here"`)
import { transformSourceFile } from 'ts-creator'
declare const file: ts.SourceFile
const factoryFile = transformSourceFile(file)
import { transformNode } from 'ts-creator'
declare const node: ts.Expression
const factoryNode = transformNode(node)
If you want to write a TypeScript codegen.
You got TypeScript code:
function foo(bar: number): number {
return bar + 1
}
ts-creator generate TypeScript factory from given code to:
ts.createFunctionDeclaration(
undefined,
undefined,
undefined,
ts.createIdentifier('foo'),
undefined,
[
ts.createParameter(
undefined,
undefined,
undefined,
ts.createIdentifier('bar'),
undefined,
ts.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword),
undefined
)
],
ts.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword),
ts.createBlock(
[
ts.createReturn(
ts.createBinary(
ts.createIdentifier('bar'),
ts.createToken(ts.SyntaxKind.PlusToken),
ts.createNumericLiteral('1')
)
)
],
true
)
)
Result after run the generated factory code:
function foo(bar: number): number {
return bar + 1;
}
Use ts-creator
cli to generate code:
ts-creator <input> [options]
Simple usage:
# print generate code
ts-creator foo.ts
# or read data from pipeline
echo 42 | ts-creator
cat foo.ts | ts-creator
ts-creator < foo.ts
# write to file
ts-creator foo.ts -o foo.js
ts-creator foo.ts > foo.js
You can install ts-creator
globally.
npm i -g ts-creator
# or yarn
yarn global add ts-creator
If you install locally, may prepend npx
or yarn
you need.
# use npm
npm i ts-creator
npx ts-creator -h
# use yarn
yarn add ts-creator
yarn ts-creator -h
option | description | type | default |
---|---|---|---|
--target, -t | generate targets | Enum { expression , runnable , esmodule , commonjs } | expression |
--output, -o | output to filepath | String | undefined |
--tsx | tsx support | Boolean | false |
--color | colorful print | Boolean | true |
--semi | print semicolons at the ends of statements | Boolean | false |
--single-quote | use single quotes instead of double quotes | Boolean | true |
--jsx-single-quote | use single quotes in JSX | Boolean | false |
--bracket-spacing | print spaces between brackets in object literals | Boolean | true |
--tab-width | pecify the number of spaces per indentation-level | Number | 2 |
--use-tabs | indent lines with tabs instead of spaces | Boolean | false |
--trailing-comma | print trailing commas wherever possible | Enum { none , es5 , all } | none |
--prose-wrap | how to wrap output | Enum { always , never , preserve } | preserve |
--version, -v | show ts-creator versions | Boolean | false |
--help, -h | show helper | Boolean | false |
FAQs
A code generator to generate TypeScript code generator from TypeScript code
The npm package ts-creator receives a total of 86 weekly downloads. As such, ts-creator popularity was classified as not popular.
We found that ts-creator demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Security experts warn that recent classification changes obscure the true scope of the NVD backlog as CVE volume hits all-time highs.
Security Fundamentals
Attackers use obfuscation to hide malware in open source packages. Learn how to spot these techniques across npm, PyPI, Maven, and more.
Security News
Join Socket for exclusive networking events, rooftop gatherings, and one-on-one meetings during BSidesSF and RSA 2025 in San Francisco.