Skip to content

Commit 3665389

Browse files
Feat: [FN-177] 카드셋 에디터 구현
Feat: [FN-177] 카드셋 에디터 구현
2 parents b64d6f7 + 799580e commit 3665389

10 files changed

Lines changed: 754 additions & 14 deletions

File tree

package-lock.json

Lines changed: 356 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,19 @@
2525
"@nestjs/core": "^11.0.1",
2626
"@nestjs/mapped-types": "^2.1.0",
2727
"@nestjs/platform-express": "^11.0.1",
28+
"@nestjs/platform-socket.io": "^11.1.6",
2829
"@nestjs/swagger": "^11.2.0",
2930
"@nestjs/typeorm": "^11.0.0",
31+
"@nestjs/websockets": "^11.1.6",
3032
"jsonwebtoken": "^9.0.2",
3133
"mysql2": "^3.14.4",
3234
"reflect-metadata": "^0.2.2",
3335
"rxjs": "^7.8.1",
36+
"socket.io": "^4.8.1",
3437
"swagger-ui-express": "^5.0.1",
3538
"typeorm": "^0.3.26",
3639
"ws": "^8.18.3",
40+
"y-protocols": "^1.0.6",
3741
"y-websocket": "^3.0.0",
3842
"yjs": "^13.6.27"
3943
},

src/app.module.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import { Cardset as CardSet } from './cardset/entities/cardset.entity';
88
import { CardsetManager as CardSetManager } from './cardset-manager/entities/cardset-manager.entity';
99
import { CardModule } from './card/card.module';
1010
import { Card as Card } from './card/entities/card.entity';
11+
import { WebSocketModule } from './websocket/websocket.module';
1112
@Module({
1213
imports: [
1314
AuthModule,
@@ -25,6 +26,7 @@ import { Card as Card } from './card/entities/card.entity';
2526
CardsetModule,
2627
CardsetManagerModule,
2728
CardModule,
29+
WebSocketModule,
2830
],
2931
controllers: [],
3032
providers: [],

src/card/card.service.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { Injectable } from '@nestjs/common';
22

33
@Injectable()
4-
export class CardService {
5-
}
4+
export class CardService {}

src/card/entities/card.entity.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,4 @@ export class Card {
2121

2222
@Column({ type: 'text', nullable: false })
2323
content!: string;
24-
}
24+
}
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
import { Injectable } from '@nestjs/common';
22

33
@Injectable()
4-
export class CardsetManagerService {
5-
6-
}
4+
export class CardsetManagerService {}

src/cardset/cardset.service.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
import { Injectable } from '@nestjs/common';
22

33
@Injectable()
4-
export class CardsetService {
5-
6-
}
4+
export class CardsetService {}

src/main.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,16 @@
11
import { NestFactory } from '@nestjs/core';
22
import { AppModule } from './app.module';
33
import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger';
4+
import { IoAdapter } from '@nestjs/platform-socket.io';
5+
import { NestExpressApplication } from '@nestjs/platform-express';
46

57
async function bootstrap() {
6-
const app = await NestFactory.create(AppModule);
8+
const app = await NestFactory.create<NestExpressApplication>(AppModule);
9+
10+
// 정적 파일 서빙 설정 제거 (YJS 제거로 불필요)
11+
12+
// Socket.IO 어댑터 설정
13+
app.useWebSocketAdapter(new IoAdapter(app));
714

815
const config = new DocumentBuilder()
916
.setTitle('Flip Note API')
@@ -27,4 +34,4 @@ async function bootstrap() {
2734

2835
await app.listen(process.env.PORT ?? 3000);
2936
}
30-
bootstrap();
37+
void bootstrap();

0 commit comments

Comments
 (0)