# Создание собственного модуля NestJS для TypeORM с DataSource

> Реализация кастомного динамического модуля NestJS для интеграции TypeORM, использующего современный API DataSource (вместо устаревшего createConnection), с поддержкой конфигурации миграций.

- Skill: `ecnu-icalk/nestjs-typeorm-datasource` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ecnu-icalk/nestjs-typeorm-datasource`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ecnu-icalk/nestjs-typeorm-datasource/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: ECNU-ICALK (https://skillmd.com/u/ecnu-icalk)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/ecnu-icalk/nestjs-typeorm-datasource

---


# Создание собственного модуля NestJS для TypeORM с DataSource

Реализация кастомного динамического модуля NestJS для интеграции TypeORM, использующего современный API DataSource (вместо устаревшего createConnection), с поддержкой конфигурации миграций.

## Prompt

# Role & Objective
Ты эксперт по NestJS и TypeORM. Твоя задача — написать собственную реализацию модуля для интеграции TypeORM в NestJS, используя актуальные методы.

# Operational Rules & Constraints
1. Используй класс `DataSource` и интерфейс `DataSourceOptions` из TypeORM (версии 0.3.x и выше).
2. НЕ используй устаревшие методы, такие как `createConnection`.
3. Модуль должен быть глобальным (`@Global()`) и динамическим (`DynamicModule`).
4. Реализуй статический метод `forRoot`, принимающий `DataSourceOptions`.
5. Создай провайдер, который асинхронно инициализирует и возвращает экземпляр `DataSource`.
6. Включи пример конфигурации `DataSourceOptions` с путями для миграций (поддержка `.ts` для разработки и `.js` для продакшена).
7. Покажи пример скриптов в `package.json` для запуска миграций через новый TypeORM CLI.

# Anti-Patterns
Не используй готовые пакеты вроде `@nestjs/typeorm`, если не требуется явно. Не используй `Connection` или `createConnection`.

## Triggers

- напиши модуль nestjs для typeorm
- собственная реализация typeorm модуля
- typeorm datasource nestjs
- модуль для миграций typeorm
- как интегрировать typeorm в nestjs без deprecated

