87
KAMMYSLIWIEC LEVERAGING ANGULAR IN NODE . JS WITH NEST

LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

LEVERAGING ANGULARIN NODE.JS WITH NEST

Page 2: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

KAMIL MYSLIWIEC CREATOR OF NESTJS | CO-FOUNDER OF TRILON.IO

GOOGLE DEVELOPER EXPERT @KAMMYSLIWIEC

Page 3: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMIL MYŚLIWIEC SOFTWARE ENGINEER

@KAMMYSLIWIEC

Page 4: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

Adonis Express Koa Nest Fastify

Page 5: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

ANGULAR

Page 6: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

ANGULAR IS A PLATFORM

Page 7: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

ANGULAR COMBINESBEST PRACTICES

Page 8: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

ANGULAR GIVESRIGHT ABSTRACTIONS

Page 9: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

NESTJS WWW.NESTJS.COM

@NESTFRAMEWORK

KAMMYSLIWIEC

Page 10: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

NEST IS A PLATFORM

Page 11: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

A HIGHERLEVEL OF REUSABILITY

Page 12: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

KNOWLEDGE REUSABILITY

Page 13: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

EXPERIENCE REUSABILITY

Page 14: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

CODE REUSABILITY

Page 15: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

Page 16: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

DTO

Page 17: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

create(item: CreatePostDto): Observable<Post> {

return this.http.post(POSTS_ENDPOINT, item);

}

Page 18: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

create(item: CreatePostDto): Observable<Post> {

return this.http.post(POSTS_ENDPOINT, item);

}

Page 19: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Post()

create(@Body() createPostDto: CreatePostDto): Post {

return this.postsService.create(createPostDto);

}

Page 20: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Post()

create(@Body() createPostDto: CreatePostDto): Post {

return this.postsService.create(createPostDto);

}

Page 21: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

DTO

INTERFACES

Page 22: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

create(item: CreatePostDto): Observable<Post> {

return this.http.post(POSTS_ENDPOINT, item);

}

Page 23: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Post()

create(@Body() createPostDto: CreatePostDto): Post {

return this.postsService.create(createPostDto);

}

Page 24: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

DTO

INTERFACES

SERVICES

Page 25: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

$ mkdir my-app && cd my-app $ ng new client $ nest new server

Page 26: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

$ mkdir my-app && cd my-app $ ng new client $ nest new server

Page 27: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

$ mkdir my-app && cd my-app $ ng new client $ nest new server

Page 28: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

CODE REUSABILITY

Page 29: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec
Page 30: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

BUILDING BLOCKS

Page 31: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

MODULES1

Page 32: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

DECLARATIONS

PROVIDERS

IMPORTS

EXPORTS

Page 33: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

DECLARATIONS

PROVIDERS

IMPORTS

EXPORTS

Page 34: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

DECLARATIONS

PROVIDERS

IMPORTS

EXPORTS

Page 35: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

DECLARATIONS

PROVIDERS

IMPORTS

EXPORTS

Page 36: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

DECLARATIONS

PROVIDERS

IMPORTS

EXPORTS

CONTROLLERS

Page 37: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

CONTROLLERS

PROVIDERS

IMPORTS

EXPORTS

Page 38: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

CONTROLLERS

PROVIDERS

IMPORTS

EXPORTS

Page 39: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

CONTROLLERS

PROVIDERS

IMPORTS

EXPORTS

Page 40: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@NgModule({

imports: [CommonModule],

declarations: [AppComponent],

providers: [AppService],

exports: [],

})

export class ApplicationModule {}

Page 41: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@NgModule({

imports: [CommonModule],

declarations: [AppComponent],

providers: [AppService],

exports: [],

})

export class ApplicationModule {}

Page 42: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Module({

imports: [CommonModule],

declarations: [AppComponent],

providers: [AppService],

exports: [],

})

export class ApplicationModule {}

Page 43: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Module({

imports: [CommonModule],

declarations: [AppComponent],

providers: [AppService],

exports: [],

})

export class ApplicationModule {}

Page 44: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Module({

imports: [CommonModule],

controllers: [AppController],

providers: [AppService],

exports: [],

})

export class ApplicationModule {}

Page 45: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Module({

imports: [CommonModule],

controllers: [AppController],

providers: [AppService],

exports: [],

})

export class ApplicationModule {}

Page 46: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

PROVIDERS2

Page 47: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Injectable({ providedIn: 'root' })

export class CatsService {

constructor(

private httpService: HttpService,

) {}

}

Page 48: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Injectable({ providedIn: 'root' })

export class CatsService {

constructor(

private httpService: HttpService,

) {}

}

Page 49: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Injectable()

export class CatsService {

constructor(

private httpService: HttpService,

) {}

}

Page 50: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Injectable()

export class CatsService {

constructor(

private httpService: HttpService,

) {}

}

Page 51: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

DEPENDENCYINJECTION

Page 52: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Injectable()

export class CatsService {

constructor(

private httpService: HttpService,

) {}

}

Page 53: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Injectable()

export class CatsService {

constructor(

@Inject(HTTP_SERVICE)

private httpService: HttpService,

) {}

}

Page 54: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

GUARDS3

Page 55: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

ROUTEUSER

Page 56: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

ROUTEUSERREQUEST

Page 57: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Injectable()

export class AuthGuard implements CanActivate {

canActivate(...): boolean {

return true;

}

}

Page 58: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Injectable()

export class AuthGuard implements CanActivate {

canActivate(

route: ActivatedRouteSnapshot,

state: RouterStateSnapshot,

): boolean {

return true;

}

}

Page 59: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Injectable()

export class AuthGuard implements CanActivate {

canActivate(

context: ExecutionContext,

): boolean {

return true;

}

}

Page 60: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

INTERCEPTORS4

Page 61: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

REMOTECLIENT

Page 62: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

HANDLERREQUEST

Page 63: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

MORE

Page 64: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

PIPES

Page 65: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

EXCEPTION FILTERS

Page 66: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

SWAGGER

Page 67: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec
Page 68: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

WEBSOCKETS

Page 69: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@SubscribeMessage(‘events')

handleEvent(client: WsClient, data: string): string {

return data;

}

Page 70: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

MICROSERVICES

Page 71: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

REUSABILITY

Page 72: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

DEVELOPER WORKFLOW

Page 73: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

NEST CLI

Page 74: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

SCHEMATICS

Page 75: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

LATEST NEWS

Page 76: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

SERVE STATIC

Page 77: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

$ nest g angular-app client

Page 78: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

@Module({

imports: [

AngularModule.forRoot({

rootPath: 'client/dist/client',

}),

],

})

export class AppModule {}

Page 79: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

ANGULARUNIVERSAL

Page 80: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

SERVER-SIDERENDERING

Page 81: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

$ ng new ssr-app && cd ssr-app$ ng add @nestjs/ng-universal

Page 82: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

$ ng new ssr-app && cd ssr-app$ ng add @nestjs/ng-universal

Page 83: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec
Page 84: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

OPEN SOURCE

Page 85: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

Page 86: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIEC

WWW.TRILON.IO

Page 87: LEVERAGING ANGULAR IN NODE.JS WITH NEST · kammysliwiec kamil mysliwiec creator of nestjs | co-founder of trilon.io google developer expert @kammysliwiec

KAMMYSLIWIECKAMMYSLIWIEC

THANKYOU

@KAMMYSLIWIEC