Skip to content

Commit a1095b4

Browse files
committed
feat: 기존 main server에 swagger setup 추가
1 parent 1d9b7a9 commit a1095b4

File tree

4 files changed

+97
-12
lines changed

4 files changed

+97
-12
lines changed

backend/mainServer/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
"@jest/globals": "^29.7.0",
3333
"@nestjs/cli": "^10.0.0",
3434
"@nestjs/schematics": "^10.0.0",
35+
"@nestjs/swagger": "^8.0.5",
3536
"@nestjs/testing": "^10.0.0",
3637
"@types/express": "^5.0.0",
3738
"@types/jest": "^29.5.14",

backend/mainServer/src/main.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
import { NestFactory } from '@nestjs/core';
22
import { AppModule } from './app.module.js';
3+
import { setupSwagger } from './util/swagger.js';
34

45
async function bootstrap() {
56
const app = await NestFactory.create(AppModule);
7+
setupSwagger(app);
68
await app.listen(process.env.PORT ?? 3000);
79
}
810
bootstrap();
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { INestApplication } from '@nestjs/common';
2+
import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger';
3+
4+
export function setupSwagger(app: INestApplication): void {
5+
const options = new DocumentBuilder()
6+
.setTitle('NestJS Study API Docs')
7+
.setDescription('NestJS Study API description')
8+
.setVersion('1.0.0')
9+
.build();
10+
11+
const document = SwaggerModule.createDocument(app, options);
12+
SwaggerModule.setup('api-docs', app, document);
13+
}

yarn.lock

Lines changed: 81 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2044,6 +2044,13 @@ __metadata:
20442044
languageName: node
20452045
linkType: hard
20462046

2047+
"@microsoft/tsdoc@npm:^0.15.0":
2048+
version: 0.15.0
2049+
resolution: "@microsoft/tsdoc@npm:0.15.0"
2050+
checksum: 10c0/6beaf6e01ff54daeba69862cb3d27e03bbabfe299d23d0fade885f5b29bf98af01cecc746d23875fe60ba89514e3b630b71140b1b18d37301096f7a1e35451aa
2051+
languageName: node
2052+
linkType: hard
2053+
20472054
"@nestjs/cli@npm:^10.0.0":
20482055
version: 10.4.7
20492056
resolution: "@nestjs/cli@npm:10.4.7"
@@ -2130,6 +2137,23 @@ __metadata:
21302137
languageName: node
21312138
linkType: hard
21322139

2140+
"@nestjs/mapped-types@npm:2.0.6":
2141+
version: 2.0.6
2142+
resolution: "@nestjs/mapped-types@npm:2.0.6"
2143+
peerDependencies:
2144+
"@nestjs/common": ^8.0.0 || ^9.0.0 || ^10.0.0
2145+
class-transformer: ^0.4.0 || ^0.5.0
2146+
class-validator: ^0.13.0 || ^0.14.0
2147+
reflect-metadata: ^0.1.12 || ^0.2.0
2148+
peerDependenciesMeta:
2149+
class-transformer:
2150+
optional: true
2151+
class-validator:
2152+
optional: true
2153+
checksum: 10c0/c04ba9518d75c76ac6d00faa7a701d111b20bd220706bdef99777a4678f3423fa259ff5cc2968967a54bb58a08a85a7be6a781bfa07ddfb26304f82ee63c628b
2154+
languageName: node
2155+
linkType: hard
2156+
21332157
"@nestjs/platform-express@npm:^10.0.0":
21342158
version: 10.4.7
21352159
resolution: "@nestjs/platform-express@npm:10.4.7"
@@ -2161,6 +2185,34 @@ __metadata:
21612185
languageName: node
21622186
linkType: hard
21632187

2188+
"@nestjs/swagger@npm:^8.0.5":
2189+
version: 8.0.5
2190+
resolution: "@nestjs/swagger@npm:8.0.5"
2191+
dependencies:
2192+
"@microsoft/tsdoc": "npm:^0.15.0"
2193+
"@nestjs/mapped-types": "npm:2.0.6"
2194+
js-yaml: "npm:4.1.0"
2195+
lodash: "npm:4.17.21"
2196+
path-to-regexp: "npm:3.3.0"
2197+
swagger-ui-dist: "npm:5.18.2"
2198+
peerDependencies:
2199+
"@fastify/static": ^6.0.0 || ^7.0.0
2200+
"@nestjs/common": ^9.0.0 || ^10.0.0
2201+
"@nestjs/core": ^9.0.0 || ^10.0.0
2202+
class-transformer: "*"
2203+
class-validator: "*"
2204+
reflect-metadata: ^0.1.12 || ^0.2.0
2205+
peerDependenciesMeta:
2206+
"@fastify/static":
2207+
optional: true
2208+
class-transformer:
2209+
optional: true
2210+
class-validator:
2211+
optional: true
2212+
checksum: 10c0/7d5b0b2503dd674c467218cd46c5b2a5389a67183217a5542ed6b7421045cec231a889588413c6a8e00a7ebc96a89fa0c3374fadc0e24d643743630095b37b82
2213+
languageName: node
2214+
linkType: hard
2215+
21642216
"@nestjs/testing@npm:^10.0.0":
21652217
version: 10.4.7
21662218
resolution: "@nestjs/testing@npm:10.4.7"
@@ -2405,6 +2457,13 @@ __metadata:
24052457
languageName: node
24062458
linkType: hard
24072459

2460+
"@scarf/scarf@npm:=1.4.0":
2461+
version: 1.4.0
2462+
resolution: "@scarf/scarf@npm:1.4.0"
2463+
checksum: 10c0/332118bb488e7a70eaad068fb1a33f016d30442fb0498b37a80cb425c1e741853a5de1a04dce03526ed6265481ecf744aa6e13f072178d19e6b94b19f623ae1c
2464+
languageName: node
2465+
linkType: hard
2466+
24082467
"@sinclair/typebox@npm:^0.27.8":
24092468
version: 0.27.8
24102469
resolution: "@sinclair/typebox@npm:0.27.8"
@@ -8113,26 +8172,26 @@ __metadata:
81138172
languageName: node
81148173
linkType: hard
81158174

8116-
"js-yaml@npm:^3.10.0, js-yaml@npm:^3.13.1":
8117-
version: 3.14.1
8118-
resolution: "js-yaml@npm:3.14.1"
8175+
"js-yaml@npm:4.1.0, js-yaml@npm:^4.1.0":
8176+
version: 4.1.0
8177+
resolution: "js-yaml@npm:4.1.0"
81198178
dependencies:
8120-
argparse: "npm:^1.0.7"
8121-
esprima: "npm:^4.0.0"
8179+
argparse: "npm:^2.0.1"
81228180
bin:
81238181
js-yaml: bin/js-yaml.js
8124-
checksum: 10c0/6746baaaeac312c4db8e75fa22331d9a04cccb7792d126ed8ce6a0bbcfef0cedaddd0c5098fade53db067c09fe00aa1c957674b4765610a8b06a5a189e46433b
8182+
checksum: 10c0/184a24b4eaacfce40ad9074c64fd42ac83cf74d8c8cd137718d456ced75051229e5061b8633c3366b8aada17945a7a356b337828c19da92b51ae62126575018f
81258183
languageName: node
81268184
linkType: hard
81278185

8128-
"js-yaml@npm:^4.1.0":
8129-
version: 4.1.0
8130-
resolution: "js-yaml@npm:4.1.0"
8186+
"js-yaml@npm:^3.10.0, js-yaml@npm:^3.13.1":
8187+
version: 3.14.1
8188+
resolution: "js-yaml@npm:3.14.1"
81318189
dependencies:
8132-
argparse: "npm:^2.0.1"
8190+
argparse: "npm:^1.0.7"
8191+
esprima: "npm:^4.0.0"
81338192
bin:
81348193
js-yaml: bin/js-yaml.js
8135-
checksum: 10c0/184a24b4eaacfce40ad9074c64fd42ac83cf74d8c8cd137718d456ced75051229e5061b8633c3366b8aada17945a7a356b337828c19da92b51ae62126575018f
8194+
checksum: 10c0/6746baaaeac312c4db8e75fa22331d9a04cccb7792d126ed8ce6a0bbcfef0cedaddd0c5098fade53db067c09fe00aa1c957674b4765610a8b06a5a189e46433b
81368195
languageName: node
81378196
linkType: hard
81388197

@@ -8314,7 +8373,7 @@ __metadata:
83148373
languageName: node
83158374
linkType: hard
83168375

8317-
"lodash@npm:^4.17.15, lodash@npm:^4.17.21":
8376+
"lodash@npm:4.17.21, lodash@npm:^4.17.15, lodash@npm:^4.17.21":
83188377
version: 4.17.21
83198378
resolution: "lodash@npm:4.17.21"
83208379
checksum: 10c0/d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c
@@ -8393,6 +8452,7 @@ __metadata:
83938452
"@nestjs/core": "npm:^10.0.0"
83948453
"@nestjs/platform-express": "npm:^10.0.0"
83958454
"@nestjs/schematics": "npm:^10.0.0"
8455+
"@nestjs/swagger": "npm:^8.0.5"
83968456
"@nestjs/testing": "npm:^10.0.0"
83978457
"@types/express": "npm:^5.0.0"
83988458
"@types/jest": "npm:^29.5.14"
@@ -10519,6 +10579,15 @@ __metadata:
1051910579
languageName: node
1052010580
linkType: hard
1052110581

10582+
"swagger-ui-dist@npm:5.18.2":
10583+
version: 5.18.2
10584+
resolution: "swagger-ui-dist@npm:5.18.2"
10585+
dependencies:
10586+
"@scarf/scarf": "npm:=1.4.0"
10587+
checksum: 10c0/254f0d0b14766d505e69c36ea656afe838c32eefe1317aa4a8a2ffae06f1e53c55333130c6cea2f57bb47825b0cc465436f3f7af41254bd24b0601e56f914dba
10588+
languageName: node
10589+
linkType: hard
10590+
1052210591
"symbol-observable@npm:4.0.0":
1052310592
version: 4.0.0
1052410593
resolution: "symbol-observable@npm:4.0.0"

0 commit comments

Comments
 (0)