0.1.2 • Published 6 years ago

@telavant/platform v0.1.2

Weekly downloads
1
License
MIT
Repository
-
Last release
6 years ago

@telavant/platform

This library provides additional functionality for Angular Universal apps. It includes a built-in but extendable Express server, which is packaged separately as @telavant/server; backend database support via TypeORM; a DataController class for creating backend routes; a DataService class to provide a consistent interface to the data on both the front and back ends; and a custom Schematic to install the library in your project and generate backend components.

This package was generated with Angular CLI version 7.2.0.

TL;DR

ng new appname cd appname ng add @telavant/platform ng generate config-mysql ng generate resource example

Install

Run ng add @telavant/platform from your project folder. It will set itself up as the default schematic for the project. Since @telavant/platform extends @schematics/angular, you will still have access to the standard Angular generators.

By default, src/app/app.server.module.ts will be installed at or moved to src/server/server.module.ts and a backend routing module will be created as src/server/server-routing.module.ts. Backend components will also be created in the server folder. To change this, use the --server-dir option.

Entities (class models for your data) will be created in src/entities. To change this, use the --entity-dir option.

Additional options are the same as for the @schematics/angular:universal generator. Use --dry-run first to preview the changes that will be made.

Configuration

You can configure TypeORM by editing ormconfig.json, or by using one of the configuration generators provided by @telavant/platform. Currently, MySQL and SQLite are supported.

Examples: ng generate config-sqlite development --database=mydb.sql ng generate config-mysql production --host=db.example.com --port=3306 --username=example --database=prod --password=xxx

The development configuration will be used by default, unless you build for production.

Backend Routes

Create a backend route like this:

ng generate resource example

This will create a class named Example at src/entities/example.ts and export it from src/entities/index.ts. The backend component and data service will be created in src/server/example, and the backend REST routes will be added to src/server/server-routing.module.ts.

Building

Run npm start to build both the browser and server bundles and start the server script when the build is complete.

Soon

  • improved build scripts with file watchers and automatic server restarting when changes are detected
  • generate admin CRUD interface and front-end display with ng generate resource
  • generators for website features: authentication, blog/forums, ecommerce, third party services, etc.
  • backend email service
0.1.2

6 years ago

0.1.1

6 years ago

0.1.0

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago