├── .eslintrc.json ├── .gitignore ├── .prettierrc ├── README.md ├── bin └── www ├── docker-compose.yml ├── env ├── .env.dev ├── .env.local ├── .env.production └── .env.test ├── jest.config.js ├── nodemon.json ├── package.json ├── posts ├── 1-typeorm │ ├── README.md │ └── images │ │ └── gui.png ├── 12-spa │ └── README.md ├── 13-external-api │ └── README.md ├── 2-jest │ └── README.md ├── 4-controller │ └── README.md ├── 5-session │ └── README.md ├── 6-logger │ └── README.md ├── 7-swagger │ └── README.md ├── 8-lint │ └── README.md ├── ServiceNotFoundError │ └── README.md ├── pagination │ ├── 1.md │ ├── 2.md │ └── images │ │ ├── cqrs.png │ │ ├── more.png │ │ ├── page-test.png │ │ └── pagerequest-test.png ├── parallel-tx │ └── README.md ├── typeorm-dynamic-query │ └── README.md └── typeorm-strategy │ ├── README.md │ └── images │ ├── config.png │ ├── entity.png │ ├── entity2.png │ ├── table.png │ └── table2.png ├── src ├── app.ts ├── config │ ├── ConstraintSnakeNamingStrategy.ts │ ├── database.ts │ ├── env.ts │ └── logger.ts ├── controller │ ├── PageRequest.ts │ └── article │ │ ├── ArticleController.ts │ │ └── dto │ │ └── ArticleSearchRequest.ts ├── entity │ ├── BaseTimeEntity.ts │ ├── BigintValueTransformer.ts │ ├── article │ │ ├── Article.ts │ │ └── ArticleRepository.ts │ └── user │ │ ├── User.ts │ │ └── UserRepository.ts ├── repository │ └── article │ │ ├── ArticleQueryRepository.ts │ │ └── dto │ │ └── ArticleSearchParam.ts ├── service │ ├── Page.ts │ ├── PageWithoutCount.ts │ └── article │ │ ├── ArticleService.ts │ │ ├── ArticleTransactionService.ts │ │ └── dto │ │ ├── ArticleCreateParam.ts │ │ └── ArticleSearchItem.ts └── start.ts ├── test ├── integration │ ├── controller │ │ └── article │ │ │ └── ArticleController.test.ts │ ├── entity │ │ └── article │ │ │ └── Article.test.ts │ ├── repository │ │ └── ArticleQueryRepository.test.ts │ └── service │ │ └── article │ │ └── ArticleTransactionService.test.ts ├── testConnection.ts └── unit │ ├── config │ └── ConstraintSnakeNamingStrategy.test.ts │ ├── controller │ └── PageRequest.test.ts │ ├── entity │ └── article │ │ └── Article.test.ts │ ├── service │ ├── Page.test.ts │ └── PageWithoutCount.test.ts │ └── values.test.ts ├── tsconfig.json └── yarn.lock /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .idea 3 | env-*/ 4 | coverage 5 | logs 6 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/.prettierrc -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/README.md -------------------------------------------------------------------------------- /bin/www: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/bin/www -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /env/.env.dev: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/env/.env.dev -------------------------------------------------------------------------------- /env/.env.local: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/env/.env.local -------------------------------------------------------------------------------- /env/.env.production: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/env/.env.production -------------------------------------------------------------------------------- /env/.env.test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/env/.env.test -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/jest.config.js -------------------------------------------------------------------------------- /nodemon.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/nodemon.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/package.json -------------------------------------------------------------------------------- /posts/1-typeorm/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/1-typeorm/README.md -------------------------------------------------------------------------------- /posts/1-typeorm/images/gui.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/1-typeorm/images/gui.png -------------------------------------------------------------------------------- /posts/12-spa/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /posts/13-external-api/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/13-external-api/README.md -------------------------------------------------------------------------------- /posts/2-jest/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/2-jest/README.md -------------------------------------------------------------------------------- /posts/4-controller/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/4-controller/README.md -------------------------------------------------------------------------------- /posts/5-session/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/5-session/README.md -------------------------------------------------------------------------------- /posts/6-logger/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/6-logger/README.md -------------------------------------------------------------------------------- /posts/7-swagger/README.md: -------------------------------------------------------------------------------- 1 | # Swagger -------------------------------------------------------------------------------- /posts/8-lint/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/8-lint/README.md -------------------------------------------------------------------------------- /posts/ServiceNotFoundError/README.md: -------------------------------------------------------------------------------- 1 | # Typedi 적용후 identifier was not found in the container 에러 발생시 2 | 3 | -------------------------------------------------------------------------------- /posts/pagination/1.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/pagination/1.md -------------------------------------------------------------------------------- /posts/pagination/2.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/pagination/2.md -------------------------------------------------------------------------------- /posts/pagination/images/cqrs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/pagination/images/cqrs.png -------------------------------------------------------------------------------- /posts/pagination/images/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/pagination/images/more.png -------------------------------------------------------------------------------- /posts/pagination/images/page-test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/pagination/images/page-test.png -------------------------------------------------------------------------------- /posts/pagination/images/pagerequest-test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/pagination/images/pagerequest-test.png -------------------------------------------------------------------------------- /posts/parallel-tx/README.md: -------------------------------------------------------------------------------- 1 | # 병렬 쿼리 실행시 트랜잭션 보장 2 | 3 | -------------------------------------------------------------------------------- /posts/typeorm-dynamic-query/README.md: -------------------------------------------------------------------------------- 1 | # TypeORM 동적쿼리 사용하기 2 | -------------------------------------------------------------------------------- /posts/typeorm-strategy/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/typeorm-strategy/README.md -------------------------------------------------------------------------------- /posts/typeorm-strategy/images/config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/typeorm-strategy/images/config.png -------------------------------------------------------------------------------- /posts/typeorm-strategy/images/entity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/typeorm-strategy/images/entity.png -------------------------------------------------------------------------------- /posts/typeorm-strategy/images/entity2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/typeorm-strategy/images/entity2.png -------------------------------------------------------------------------------- /posts/typeorm-strategy/images/table.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/typeorm-strategy/images/table.png -------------------------------------------------------------------------------- /posts/typeorm-strategy/images/table2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/posts/typeorm-strategy/images/table2.png -------------------------------------------------------------------------------- /src/app.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/app.ts -------------------------------------------------------------------------------- /src/config/ConstraintSnakeNamingStrategy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/config/ConstraintSnakeNamingStrategy.ts -------------------------------------------------------------------------------- /src/config/database.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/config/database.ts -------------------------------------------------------------------------------- /src/config/env.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/config/env.ts -------------------------------------------------------------------------------- /src/config/logger.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/config/logger.ts -------------------------------------------------------------------------------- /src/controller/PageRequest.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/controller/PageRequest.ts -------------------------------------------------------------------------------- /src/controller/article/ArticleController.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/controller/article/ArticleController.ts -------------------------------------------------------------------------------- /src/controller/article/dto/ArticleSearchRequest.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/controller/article/dto/ArticleSearchRequest.ts -------------------------------------------------------------------------------- /src/entity/BaseTimeEntity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/entity/BaseTimeEntity.ts -------------------------------------------------------------------------------- /src/entity/BigintValueTransformer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/entity/BigintValueTransformer.ts -------------------------------------------------------------------------------- /src/entity/article/Article.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/entity/article/Article.ts -------------------------------------------------------------------------------- /src/entity/article/ArticleRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/entity/article/ArticleRepository.ts -------------------------------------------------------------------------------- /src/entity/user/User.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/entity/user/User.ts -------------------------------------------------------------------------------- /src/entity/user/UserRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/entity/user/UserRepository.ts -------------------------------------------------------------------------------- /src/repository/article/ArticleQueryRepository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/repository/article/ArticleQueryRepository.ts -------------------------------------------------------------------------------- /src/repository/article/dto/ArticleSearchParam.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/repository/article/dto/ArticleSearchParam.ts -------------------------------------------------------------------------------- /src/service/Page.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/service/Page.ts -------------------------------------------------------------------------------- /src/service/PageWithoutCount.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/service/PageWithoutCount.ts -------------------------------------------------------------------------------- /src/service/article/ArticleService.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/service/article/ArticleService.ts -------------------------------------------------------------------------------- /src/service/article/ArticleTransactionService.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/service/article/ArticleTransactionService.ts -------------------------------------------------------------------------------- /src/service/article/dto/ArticleCreateParam.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/service/article/dto/ArticleCreateParam.ts -------------------------------------------------------------------------------- /src/service/article/dto/ArticleSearchItem.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/service/article/dto/ArticleSearchItem.ts -------------------------------------------------------------------------------- /src/start.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/src/start.ts -------------------------------------------------------------------------------- /test/integration/controller/article/ArticleController.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/integration/controller/article/ArticleController.test.ts -------------------------------------------------------------------------------- /test/integration/entity/article/Article.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/integration/entity/article/Article.test.ts -------------------------------------------------------------------------------- /test/integration/repository/ArticleQueryRepository.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/integration/repository/ArticleQueryRepository.test.ts -------------------------------------------------------------------------------- /test/integration/service/article/ArticleTransactionService.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/integration/service/article/ArticleTransactionService.test.ts -------------------------------------------------------------------------------- /test/testConnection.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/testConnection.ts -------------------------------------------------------------------------------- /test/unit/config/ConstraintSnakeNamingStrategy.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/unit/config/ConstraintSnakeNamingStrategy.test.ts -------------------------------------------------------------------------------- /test/unit/controller/PageRequest.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/unit/controller/PageRequest.test.ts -------------------------------------------------------------------------------- /test/unit/entity/article/Article.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/unit/entity/article/Article.test.ts -------------------------------------------------------------------------------- /test/unit/service/Page.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/unit/service/Page.test.ts -------------------------------------------------------------------------------- /test/unit/service/PageWithoutCount.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/unit/service/PageWithoutCount.test.ts -------------------------------------------------------------------------------- /test/unit/values.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/test/unit/values.test.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jojoldu/ts-api-template/HEAD/yarn.lock --------------------------------------------------------------------------------