node-entity-baker
Node.js application / library, which generates simple and powerful entity classes for ORM systems, like Doctrine and/or Entity Framework, wriiten in TypeScript.
Installation
As command line tool:
npm install -g entity-baker
As module:
npm install --save entity-baker
Usage
First create a entities.json
file inside your working directory (can also be in XML or YAML format, s. examples folder):
From command line
# run it from your working directory entity-baker --doctrine --entity-framework --entity-framework-core
As module
JavaScript
var EntityBaker = ;
TypeScript
;
compile
var fs = ; var entityFile = JSON; EntityBaker;
Data types
Type | Doctrine | Entity Framework |
---|---|---|
bigint |
bigint | System.Int64 |
bin |
binary | System.Byte[] |
binary |
binary | System.Byte[] |
blob |
blob | System.Byte[] |
bool |
boolean | System.Boolean |
boolean |
boolean | System.Boolean |
date |
date | System.Int64 |
datetime |
datetime | System.Int64 |
datetimetz |
datetimetz | System.DateTimeOffset |
decimal |
decimal | System.Decimal |
float |
float | System.Single |
guid |
guid | System.Guid |
int |
integer | System.Int32 |
int16 |
smallint | System.Int16 |
int32 |
integer | System.Int32 |
int64 |
bigint | System.Int64 |
integer |
integer | System.Int32 |
json |
json | dynamic |
smallint |
smallint | System.Int16 |
str |
string | System.String |
string |
string | System.String |
text |
text | System.String |
time |
time | System.TimeSpan |
uint16 |
smallint | System.UInt16 |
uint32 |
integer | System.UInt32 |
uint64 |
bigint | System.UInt64 |
uuid |
guid | System.Guid |
If you do not define a data type, it set to
int32
, if the column is a primary key, or...string
, if nothing else matches
↑]
Support and contribute [If you like the module, you can support the project by sending a donation via PayPal to me.
To contribute, you can open an issue and/or fork this repository.
To work with the code:
- clone this repository
- create and change to a new branch, like
git checkout -b my_new_feature
- run
npm install
from your project folder - edit and debug in your favorite editor, like Visual Studio Code
- commit your changes to your new branch and sync it with your forked GitHub repo
- make a pull request
The API documentation can be found here.