spatie/typescript-transformer
Automatically generate TypeScript definitions from your PHP/Laravel code. spatie/typescript-transformer scans classes and types, then outputs .d.ts files so your frontend stays in sync with backend models, DTOs and enums with minimal manual typing.
The package tries to format the transformed TypeScript as good as possible, but sometimes this could be far from perfect. That's why it is possible to automatically format the TypeScript code after transforming.
By default, the package has support for two formatters:
PrettierFormatter: Formats the TypeScript code using PrettierEslintFormatter: Formats the TypeScript code using ESLintYou can add a formatter to the configuration like this:
use Spatie\TypeScriptTransformer\Formatters\PrettierFormatter;
$config->formatter(new PrettierFormatter());
It is possible to create your own formatter by implementing the Formatter interface:
interface Formatter
{
public function format(array $files): void;
}
The $files array contains the TypeScript files that need to be formatted, you can format them in any way you like.
How can I help you explore Laravel packages today?