분류 전체보기
-
login API on nestJS using graphqlProject using Nest.js/E-commerce App 2021. 9. 2. 13:32
user.entity.ts import { Field, InputType, ObjectType, registerEnumType, } from '@nestjs/graphql'; import { IsBoolean, IsEmail, IsEnum, IsString } from 'class-validator'; import { BeforeInsert, Column, Entity } from 'typeorm'; import * as bcrypt from 'bcrypt'; import { CoreEntity } from 'src/common/entities/common.entity'; import { InternalServerErrorException } from '@nestjs/common'; export enum..
-
nestJS entityProject using Nest.js/E-commerce App 2021. 9. 2. 12:33
common.entity.ts import { Field, ObjectType } from '@nestjs/graphql'; import { CreateDateColumn, PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm'; @ObjectType() export class CoreEntity { @PrimaryGeneratedColumn() @Field((type) => Number) id: number; @CreateDateColumn() @Field((type) => Date) createdAt: Date; @UpdateDateColumn() @Field((type) => Date) updatedAt: Date; } user.entity.ts i..
-
Connect DB which is postgresql with nest.jsProject using Nest.js/E-commerce App 2021. 9. 2. 10:41
개요 DB는 postgresql을 사용할 것이다. postgresql은 관계형 DB로 SQL 쿼리를 사용한다. Postgresql download https://www.postgresql.org/ 여기서 postgresql을 다운받는다. PG admin download pg admin은 postgresql을 UI로 조작할 수 있는 Window Admin panel이다. postgresql에서 계정 생성하기 Servers => PostgreSQL 13 => Login/Group Roles => Create => Login/Group Role...을 클릭한다. General => Name에 이름을 입력한다. Privileges에서 원하는 권한을 선택한다. 마지막으로 Save를 선택한다. 비밀번호 설정을 위해..
-
Graphql Configuration with nest.jsProject using Nest.js/E-commerce App 2021. 9. 2. 09:45
Graphql 이 프로젝트에서는 Graphql을 사용할 것이다. Nest.js에서는 graphql과 TS의 호흡이 정말 좋기 때문이다. nest.js는 apollo-server를 사용한다. 설치 $ npm i @nestjs/graphql graphql apollo-server-express app.module.ts app.module.ts에 @Module({})에 GRaphQlModule만 추가하면 끝. 참고 자료 노마드 코더의 우버 이츠 클론 강의 Graphql Ref : https://docs.nestjs.com/graphql/quick-start#getting-started-with-graphql--typescript
-
Config에 validation 설정하기 on nest.js with JoiProject using Nest.js/E-commerce App 2021. 9. 2. 09:40
Joi Config에 추가한 환경 변수가 valid한지 확인해주는 모듈이다. 물론 config variables 뿐만아니라 다른 variables도 valid 검사를 해준다. 설치 $ npm i joi app.module.ts 추후에 DB 설정과 JWT private key가 필요해서 미리 .env에 값을 추갛ㅆ고 다음과 같이 string 검사를 해주는 validation을 추가했다. TS에서는 import Joi from 'joi';를 하면 error가 나기 때문에 다음 그림과 같이 선언해줘야 한다. 참고 자료 노마드 코더의 우버 이츠 클론 강의 Joi : https://joi.dev/api/?v=17.4.2
-
nest.js dotenv 설정Project using Nest.js/E-commerce App 2021. 9. 2. 09:35
Configuration 개발을 하게 되면 애플리케이션은 종종 다른 환경에서 동작해야할 때가 있다. 해당 환경에 따라 설정 값을 달리 줘야 하는데, 이를 도와주는 moduel이 ConfigModule이다. .env 파일에 환경 변수들을 저장하고 이를 app.moduel.ts에 ConfigModule에 추가하는 것이다. 설치 $ npm i @nestjs/config cross-env 여기서 @nestjs/config 만 설치해도 되지만 윈도우 환경에서 NODE_ENV=dev 값을 주기 위해서 cross-env도 설치해준다. package.json 개발 환경 실행 명령어를 위처럼 수정한다. app.module.ts 위처럼 ConfigModule.forRoot를 app.module.ts의 imports에 추가..
-
Nest.js 설치Project using Nest.js/E-commerce App 2021. 9. 2. 09:08
Nest.js 설명 nest.js는 node.js 기반 프레임워크다. 효과적이고 scalable한 server를 만들 수 있다. express와 달리 nest.js는 프레임워크의 규칙을 따라야 한다. 모듈 규칙이 있고 이에 맞게 코드를 디자인해야 한다. express 처럼 유연하지 않을 수는 있어도, 이러한 일정한 규칙이 있는 것이 객체지향적인 프로그램을 만드는데 도움이 된다. 즉, Nest.js는 굉장히 아키텍쳐적인 프레임워크다. 게다가 nest.js는 TS를 전적으로 지원한다. 그리고 OOP, FP와 FRP(Functional Reactive Programming)이 요소를 결합했다. 설치 $ npm i -g @nestjs/cli $ nest new 참고 자료 노마드 코더의 우버 이츠 클론 강의 Le..
-
Netlify에 React 배포Project using React/Cloning Netflix 2021. 5. 9. 11:19
package.json { "scripts": { "start": "react-scripts start", "build": "CI=false react-scripts build", "deploy": "gh-pages -d build", "predeploy": "yarn run build" } "homepage": "", } package.json에 필요한 코드다. "build"에 CI=false를 해줘야 성공적으로 배포할 수 있다. netlify는 warn같은 에러 아닌 경고에도 배포를 하지 못 하게 막는다.. 참고 자료 노마드 코더의 React 멤버쉽 강의 Netlify 소스 코드 Add CI=false to 'scripts':'build'