@smartsoft001/full-stack
@smartsoft001/full-stack installs the whole framework for a project with an Angular frontend and a NestJS backend: the core packages and both runtime stacks.
Install
npm install @smartsoft001/full-stack
What it is
It ships no code of its own, only pinned dependencies. A project that has both halves, which is the usual shape of an application built on this framework, gets everything at one version with one command instead of choosing two stacks and keeping them in step.
Payments stay a separate opt-in. A backend that takes them adds @smartsoft001/payments-stack next to this one.
Usage
After installing, each half is configured the way its own stack documents. The frontend registers the shared providers once in the application config:
import { provideHttpClient } from '@angular/common/http';
import { ApplicationConfig, importProvidersFrom } from '@angular/core';
import { provideRouter } from '@angular/router';
import { provideTranslateService } from '@ngx-translate/core';
import { SharedModule } from '@smartsoft001/angular';
export const appConfig: ApplicationConfig = {
providers: [
provideRouter([]),
provideHttpClient(),
provideTranslateService(),
importProvidersFrom(SharedModule),
],
};
The backend configures the shared module once in the application module:
import { Module } from '@nestjs/common';
import { SharedModule } from '@smartsoft001/nestjs';
@Module({
imports: [
SharedModule.forRoot({
tokenConfig: {
secretOrPrivateKey: 'change-me',
expiredIn: 3600,
},
permissions: {
create: ['admin'],
read: ['admin', 'user'],
update: ['admin'],
delete: ['admin'],
},
db: {
host: 'localhost',
port: 27017,
database: 'my-app',
},
}),
],
})
export class AppModule {}
API
None of its own. The package is a manifest with pinned dependencies, so what it brings is its whole interface:
| Package |
|---|
@smartsoft001/core |
@smartsoft001/angular-stack |
@smartsoft001/nestjs-stack |
Every version is pinned exactly, so the set installs at one version and a release never leaves the two halves of a project on different ones.
Related packages
What the two stacks bring is listed on their own pages, angular-stack and nestjs-stack. The generated screens and endpoints are documented under CRUD.