kybernus 1.0.1 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +20 -0
- package/README.md +49 -263
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +5 -1
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/prompts/wizard.d.ts +14 -1
- package/dist/cli/prompts/wizard.d.ts.map +1 -1
- package/dist/cli/prompts/wizard.js +45 -9
- package/dist/cli/prompts/wizard.js.map +1 -1
- package/dist/core/generator/project.d.ts +8 -0
- package/dist/core/generator/project.d.ts.map +1 -1
- package/dist/core/generator/project.js +41 -2
- package/dist/core/generator/project.js.map +1 -1
- package/dist/core/templates/downloader.d.ts +32 -0
- package/dist/core/templates/downloader.d.ts.map +1 -0
- package/dist/core/templates/downloader.js +95 -0
- package/dist/core/templates/downloader.js.map +1 -0
- package/dist/models/config.d.ts +1 -0
- package/dist/models/config.d.ts.map +1 -1
- package/package.json +6 -2
- package/templates/java-spring/pro/clean/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/java-spring/pro/clean/Dockerfile.hbs +0 -45
- package/templates/java-spring/pro/clean/README.md.hbs +0 -31
- package/templates/java-spring/pro/clean/docker-compose.yml.hbs +0 -18
- package/templates/java-spring/pro/clean/infra/main.tf.hbs +0 -83
- package/templates/java-spring/pro/clean/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/java-spring/pro/clean/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/java-spring/pro/clean/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/java-spring/pro/clean/pom.xml.hbs +0 -130
- package/templates/java-spring/pro/clean/src/main/java/{{packagePath}}/application/service/AuthService.java.hbs +0 -36
- package/templates/java-spring/pro/clean/src/main/java/{{packagePath}}/domain/entity/User.java.hbs +0 -77
- package/templates/java-spring/pro/clean/src/main/java/{{packagePath}}/domain/repository/UserRepository.java.hbs +0 -15
- package/templates/java-spring/pro/clean/src/main/java/{{packagePath}}/domain/usecase/LoginUserUseCase.java.hbs +0 -36
- package/templates/java-spring/pro/clean/src/main/java/{{packagePath}}/domain/usecase/RegisterUserUseCase.java.hbs +0 -46
- package/templates/java-spring/pro/clean/src/main/java/{{packagePath}}/infrastructure/persistence/InMemoryUserRepository.java.hbs +0 -41
- package/templates/java-spring/pro/clean/src/main/java/{{packagePath}}/infrastructure/security/SecurityAdapters.java.hbs +0 -53
- package/templates/java-spring/pro/clean/src/main/java/{{packagePath}}/infrastructure/web/controller/AuthController.java.hbs +0 -41
- package/templates/java-spring/pro/clean/src/main/java/{{packagePath}}/{{projectNamePascalCase}}Application.java.hbs +0 -14
- package/templates/java-spring/pro/hexagonal/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/java-spring/pro/hexagonal/Dockerfile.hbs +0 -45
- package/templates/java-spring/pro/hexagonal/README.md.hbs +0 -38
- package/templates/java-spring/pro/hexagonal/docker-compose.yml.hbs +0 -18
- package/templates/java-spring/pro/hexagonal/infra/main.tf.hbs +0 -83
- package/templates/java-spring/pro/hexagonal/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/java-spring/pro/hexagonal/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/java-spring/pro/hexagonal/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/java-spring/pro/hexagonal/pom.xml.hbs +0 -130
- package/templates/java-spring/pro/hexagonal/src/main/java/{{packagePath}}/application/service/AuthService.java.hbs +0 -36
- package/templates/java-spring/pro/hexagonal/src/main/java/{{packagePath}}/domain/entity/User.java.hbs +0 -77
- package/templates/java-spring/pro/hexagonal/src/main/java/{{packagePath}}/domain/repository/UserRepository.java.hbs +0 -15
- package/templates/java-spring/pro/hexagonal/src/main/java/{{packagePath}}/domain/usecase/LoginUserUseCase.java.hbs +0 -36
- package/templates/java-spring/pro/hexagonal/src/main/java/{{packagePath}}/domain/usecase/RegisterUserUseCase.java.hbs +0 -46
- package/templates/java-spring/pro/hexagonal/src/main/java/{{packagePath}}/infrastructure/persistence/InMemoryUserRepository.java.hbs +0 -41
- package/templates/java-spring/pro/hexagonal/src/main/java/{{packagePath}}/infrastructure/security/SecurityAdapters.java.hbs +0 -53
- package/templates/java-spring/pro/hexagonal/src/main/java/{{packagePath}}/infrastructure/web/controller/AuthController.java.hbs +0 -41
- package/templates/java-spring/pro/hexagonal/src/main/java/{{packagePath}}/{{projectNamePascalCase}}Application.java.hbs +0 -14
- package/templates/java-spring/pro/mvc/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/java-spring/pro/mvc/Dockerfile.hbs +0 -45
- package/templates/java-spring/pro/mvc/README.md.hbs +0 -116
- package/templates/java-spring/pro/mvc/docker-compose.yml.hbs +0 -18
- package/templates/java-spring/pro/mvc/infra/main.tf.hbs +0 -83
- package/templates/java-spring/pro/mvc/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/java-spring/pro/mvc/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/java-spring/pro/mvc/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/java-spring/pro/mvc/pom.xml.hbs +0 -130
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/config/GlobalExceptionHandler.java.hbs +0 -39
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/config/SecurityConfig.java.hbs +0 -44
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/config/WebConfig.java.hbs +0 -30
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/controller/AuthController.java.hbs +0 -69
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/controller/HealthController.java.hbs +0 -30
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/controller/PaymentsController.java.hbs +0 -49
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/dto/AuthRequest.java.hbs +0 -3
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/dto/AuthResponse.java.hbs +0 -3
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/model/.gitkeep +0 -0
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/repository/.gitkeep +0 -0
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/security/JwtAuthenticationFilter.java.hbs +0 -56
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/security/JwtTokenProvider.java.hbs +0 -59
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/service/.gitkeep +0 -0
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/service/StripeService.java.hbs +0 -67
- package/templates/java-spring/pro/mvc/src/main/java/{{packagePath}}/{{projectNamePascalCase}}Application.java.hbs +0 -13
- package/templates/java-spring/pro/mvc/src/main/resources/application.yml.hbs +0 -32
- package/templates/java-spring/pro/mvc/src/test/java/{{packagePath}}/{{projectNamePascalCase}}ApplicationTests.java.hbs +0 -13
- package/templates/java-spring/pro/mvc/src/test/resources/application.yml.hbs +0 -10
- package/templates/java-spring/pro/mvc/template.json +0 -14
- package/templates/nestjs/pro/clean/.env.example.hbs +0 -19
- package/templates/nestjs/pro/clean/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/nestjs/pro/clean/Dockerfile.hbs +0 -45
- package/templates/nestjs/pro/clean/infra/main.tf.hbs +0 -83
- package/templates/nestjs/pro/clean/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/nestjs/pro/clean/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/nestjs/pro/clean/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/nestjs/pro/clean/package.json.hbs +0 -37
- package/templates/nestjs/pro/clean/src/auth.module.ts.hbs +0 -17
- package/templates/nestjs/pro/clean/src/domain/entities/user.entity.ts.hbs +0 -12
- package/templates/nestjs/pro/clean/src/domain/repositories/user.repository.ts.hbs +0 -6
- package/templates/nestjs/pro/clean/src/domain/use-cases/register.use-case.ts.hbs +0 -18
- package/templates/nestjs/pro/clean/src/infrastructure/database/in-memory.repository.ts.hbs +0 -17
- package/templates/nestjs/pro/clean/src/infrastructure/http/auth.controller.ts.hbs +0 -16
- package/templates/nestjs/pro/clean/tsconfig.json.hbs +0 -21
- package/templates/nestjs/pro/hexagonal/.env.example.hbs +0 -19
- package/templates/nestjs/pro/hexagonal/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/nestjs/pro/hexagonal/Dockerfile.hbs +0 -45
- package/templates/nestjs/pro/hexagonal/infra/main.tf.hbs +0 -83
- package/templates/nestjs/pro/hexagonal/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/nestjs/pro/hexagonal/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/nestjs/pro/hexagonal/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/nestjs/pro/hexagonal/package.json.hbs +0 -37
- package/templates/nestjs/pro/hexagonal/src/adapters/inbound/http.adapter.ts.hbs +0 -12
- package/templates/nestjs/pro/hexagonal/src/adapters/outbound/persistence.adapter.ts.hbs +0 -13
- package/templates/nestjs/pro/hexagonal/src/auth.module.ts.hbs +0 -19
- package/templates/nestjs/pro/hexagonal/src/core/auth.service.ts.hbs +0 -16
- package/templates/nestjs/pro/hexagonal/src/core/domain/user.entity.ts.hbs +0 -8
- package/templates/nestjs/pro/hexagonal/src/core/ports/ports.ts.hbs +0 -9
- package/templates/nestjs/pro/hexagonal/tsconfig.json.hbs +0 -21
- package/templates/nestjs/pro/mvc/.env.example.hbs +0 -19
- package/templates/nestjs/pro/mvc/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/nestjs/pro/mvc/Dockerfile.hbs +0 -45
- package/templates/nestjs/pro/mvc/README.md.hbs +0 -28
- package/templates/nestjs/pro/mvc/infra/main.tf.hbs +0 -83
- package/templates/nestjs/pro/mvc/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/nestjs/pro/mvc/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/nestjs/pro/mvc/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/nestjs/pro/mvc/package.json.hbs +0 -37
- package/templates/nestjs/pro/mvc/src/app.module.ts.hbs +0 -17
- package/templates/nestjs/pro/mvc/src/auth/auth.controller.ts.hbs +0 -35
- package/templates/nestjs/pro/mvc/src/auth/auth.module.ts.hbs +0 -25
- package/templates/nestjs/pro/mvc/src/auth/auth.service.ts.hbs +0 -55
- package/templates/nestjs/pro/mvc/src/auth/jwt.strategy.ts.hbs +0 -19
- package/templates/nestjs/pro/mvc/src/controllers/health.controller.ts.hbs +0 -9
- package/templates/nestjs/pro/mvc/src/controllers/items.controller.ts.hbs +0 -32
- package/templates/nestjs/pro/mvc/src/main.ts.hbs +0 -17
- package/templates/nestjs/pro/mvc/src/models/create-item.dto.ts.hbs +0 -10
- package/templates/nestjs/pro/mvc/src/models/item.model.ts.hbs +0 -6
- package/templates/nestjs/pro/mvc/src/modules/items.module.ts.hbs +0 -9
- package/templates/nestjs/pro/mvc/src/payments/payments.controller.ts.hbs +0 -26
- package/templates/nestjs/pro/mvc/src/payments/payments.module.ts.hbs +0 -11
- package/templates/nestjs/pro/mvc/src/payments/payments.service.ts.hbs +0 -43
- package/templates/nestjs/pro/mvc/src/services/items.service.ts.hbs +0 -32
- package/templates/nestjs/pro/mvc/tsconfig.json.hbs +0 -21
- package/templates/nextjs/pro/default/.env.example.hbs +0 -20
- package/templates/nextjs/pro/default/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/nextjs/pro/default/Dockerfile.hbs +0 -45
- package/templates/nextjs/pro/default/README.md.hbs +0 -96
- package/templates/nextjs/pro/default/docker-compose.yml.hbs +0 -18
- package/templates/nextjs/pro/default/infra/main.tf.hbs +0 -83
- package/templates/nextjs/pro/default/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/nextjs/pro/default/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/nextjs/pro/default/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/nextjs/pro/default/next.config.js.hbs +0 -4
- package/templates/nextjs/pro/default/package.json.hbs +0 -34
- package/templates/nextjs/pro/default/postcss.config.js.hbs +0 -6
- package/templates/nextjs/pro/default/prisma/schema.prisma.hbs +0 -18
- package/templates/nextjs/pro/default/public/.gitkeep +0 -0
- package/templates/nextjs/pro/default/src/app/api/auth/[...nextauth]/route.ts.hbs +0 -61
- package/templates/nextjs/pro/default/src/app/api/checkout/route.ts.hbs +0 -30
- package/templates/nextjs/pro/default/src/app/api/health/route.ts.hbs +0 -9
- package/templates/nextjs/pro/default/src/app/api/webhook/route.ts.hbs +0 -51
- package/templates/nextjs/pro/default/src/app/dashboard/page.tsx.hbs +0 -52
- package/templates/nextjs/pro/default/src/app/globals.css.hbs +0 -3
- package/templates/nextjs/pro/default/src/app/layout.tsx.hbs +0 -22
- package/templates/nextjs/pro/default/src/app/page.tsx.hbs +0 -38
- package/templates/nextjs/pro/default/src/components/.gitkeep +0 -0
- package/templates/nextjs/pro/default/src/components/AuthButton.tsx.hbs +0 -34
- package/templates/nextjs/pro/default/src/components/Providers.tsx.hbs +0 -7
- package/templates/nextjs/pro/default/src/lib/prisma.ts.hbs +0 -13
- package/templates/nextjs/pro/default/src/proxy.ts.hbs +0 -22
- package/templates/nextjs/pro/default/tailwind.config.ts.hbs +0 -15
- package/templates/nextjs/pro/default/template.json +0 -18
- package/templates/nextjs/pro/default/tsconfig.json.hbs +0 -40
- package/templates/nodejs-express/pro/clean/.env.example.hbs +0 -19
- package/templates/nodejs-express/pro/clean/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/nodejs-express/pro/clean/Dockerfile.hbs +0 -45
- package/templates/nodejs-express/pro/clean/README.md.hbs +0 -41
- package/templates/nodejs-express/pro/clean/docker-compose.yml.hbs +0 -18
- package/templates/nodejs-express/pro/clean/infra/main.tf.hbs +0 -83
- package/templates/nodejs-express/pro/clean/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/nodejs-express/pro/clean/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/nodejs-express/pro/clean/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/nodejs-express/pro/clean/package.json.hbs +0 -55
- package/templates/nodejs-express/pro/clean/src/application/services/AuthService.ts.hbs +0 -66
- package/templates/nodejs-express/pro/clean/src/domain/entities/User.ts.hbs +0 -38
- package/templates/nodejs-express/pro/clean/src/domain/repositories/IUserRepository.ts.hbs +0 -13
- package/templates/nodejs-express/pro/clean/src/domain/usecases/LoginUserUseCase.ts.hbs +0 -39
- package/templates/nodejs-express/pro/clean/src/domain/usecases/RegisterUserUseCase.ts.hbs +0 -51
- package/templates/nodejs-express/pro/clean/src/index.ts.hbs +0 -40
- package/templates/nodejs-express/pro/clean/src/infrastructure/database/InMemoryUserRepository.ts.hbs +0 -46
- package/templates/nodejs-express/pro/clean/src/infrastructure/http/controllers/AuthController.ts.hbs +0 -45
- package/templates/nodejs-express/pro/clean/src/infrastructure/http/middlewares/AuthMiddleware.ts.hbs +0 -27
- package/templates/nodejs-express/pro/clean/src/infrastructure/providers/PasswordHasher.ts.hbs +0 -14
- package/templates/nodejs-express/pro/clean/src/infrastructure/providers/TokenGenerator.ts.hbs +0 -25
- package/templates/nodejs-express/pro/clean/tsconfig.json.hbs +0 -27
- package/templates/nodejs-express/pro/hexagonal/.env.example.hbs +0 -19
- package/templates/nodejs-express/pro/hexagonal/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/nodejs-express/pro/hexagonal/Dockerfile.hbs +0 -45
- package/templates/nodejs-express/pro/hexagonal/README.md.hbs +0 -42
- package/templates/nodejs-express/pro/hexagonal/docker-compose.yml.hbs +0 -18
- package/templates/nodejs-express/pro/hexagonal/infra/main.tf.hbs +0 -83
- package/templates/nodejs-express/pro/hexagonal/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/nodejs-express/pro/hexagonal/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/nodejs-express/pro/hexagonal/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/nodejs-express/pro/hexagonal/package.json.hbs +0 -55
- package/templates/nodejs-express/pro/hexagonal/src/adapters/inbound/http/AuthController.ts.hbs +0 -48
- package/templates/nodejs-express/pro/hexagonal/src/adapters/outbound/SecurityAdapters.ts.hbs +0 -31
- package/templates/nodejs-express/pro/hexagonal/src/adapters/outbound/persistence/InMemoryUserAdapter.ts.hbs +0 -38
- package/templates/nodejs-express/pro/hexagonal/src/core/AuthService.ts.hbs +0 -51
- package/templates/nodejs-express/pro/hexagonal/src/core/domain/entities/User.ts.hbs +0 -28
- package/templates/nodejs-express/pro/hexagonal/src/core/ports/inbound/IAuthPort.ts.hbs +0 -11
- package/templates/nodejs-express/pro/hexagonal/src/core/ports/outbound/ISecurityPorts.ts.hbs +0 -15
- package/templates/nodejs-express/pro/hexagonal/src/core/ports/outbound/IUserRepositoryPort.ts.hbs +0 -13
- package/templates/nodejs-express/pro/hexagonal/src/index.ts.hbs +0 -41
- package/templates/nodejs-express/pro/hexagonal/tsconfig.json.hbs +0 -27
- package/templates/nodejs-express/pro/mvc/.env.example.hbs +0 -19
- package/templates/nodejs-express/pro/mvc/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/nodejs-express/pro/mvc/Dockerfile.hbs +0 -45
- package/templates/nodejs-express/pro/mvc/README.md.hbs +0 -85
- package/templates/nodejs-express/pro/mvc/docker-compose.yml.hbs +0 -18
- package/templates/nodejs-express/pro/mvc/infra/main.tf.hbs +0 -83
- package/templates/nodejs-express/pro/mvc/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/nodejs-express/pro/mvc/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/nodejs-express/pro/mvc/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/nodejs-express/pro/mvc/package.json.hbs +0 -55
- package/templates/nodejs-express/pro/mvc/src/app.ts.hbs +0 -34
- package/templates/nodejs-express/pro/mvc/src/config/database.ts.hbs +0 -10
- package/templates/nodejs-express/pro/mvc/src/controllers/auth.controller.ts.hbs +0 -91
- package/templates/nodejs-express/pro/mvc/src/controllers/healthController.ts.hbs +0 -20
- package/templates/nodejs-express/pro/mvc/src/controllers/payments.controller.ts.hbs +0 -72
- package/templates/nodejs-express/pro/mvc/src/index.ts.hbs +0 -12
- package/templates/nodejs-express/pro/mvc/src/middleware/errorHandler.ts.hbs +0 -22
- package/templates/nodejs-express/pro/mvc/src/middlewares/auth.middleware.ts.hbs +0 -31
- package/templates/nodejs-express/pro/mvc/src/models/.gitkeep +0 -0
- package/templates/nodejs-express/pro/mvc/src/routes/index.ts.hbs +0 -14
- package/templates/nodejs-express/pro/mvc/src/services/.gitkeep +0 -0
- package/templates/nodejs-express/pro/mvc/src/services/stripe.service.ts.hbs +0 -102
- package/templates/nodejs-express/pro/mvc/template.json +0 -18
- package/templates/nodejs-express/pro/mvc/tsconfig.json.hbs +0 -27
- package/templates/python-fastapi/pro/clean/.env.example.hbs +0 -17
- package/templates/python-fastapi/pro/clean/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/python-fastapi/pro/clean/Dockerfile.hbs +0 -20
- package/templates/python-fastapi/pro/clean/app/domain/entities/user.py.hbs +0 -23
- package/templates/python-fastapi/pro/clean/app/domain/repositories/user_repository.py.hbs +0 -22
- package/templates/python-fastapi/pro/clean/app/domain/usecases/register_user.py.hbs +0 -30
- package/templates/python-fastapi/pro/clean/app/infrastructure/database/in_memory_repository.py.hbs +0 -26
- package/templates/python-fastapi/pro/clean/app/infrastructure/http/auth_controller.py.hbs +0 -26
- package/templates/python-fastapi/pro/clean/app/infrastructure/security/adapters.py.hbs +0 -23
- package/templates/python-fastapi/pro/clean/app/main.py.hbs +0 -10
- package/templates/python-fastapi/pro/clean/infra/main.tf.hbs +0 -83
- package/templates/python-fastapi/pro/clean/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/python-fastapi/pro/clean/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/python-fastapi/pro/clean/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/python-fastapi/pro/clean/requirements.txt.hbs +0 -12
- package/templates/python-fastapi/pro/hexagonal/.env.example.hbs +0 -17
- package/templates/python-fastapi/pro/hexagonal/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/python-fastapi/pro/hexagonal/Dockerfile.hbs +0 -20
- package/templates/python-fastapi/pro/hexagonal/app/adapters/inbound/http_adapter.py.hbs +0 -29
- package/templates/python-fastapi/pro/hexagonal/app/core/domain/user.py.hbs +0 -15
- package/templates/python-fastapi/pro/hexagonal/app/core/ports.py.hbs +0 -25
- package/templates/python-fastapi/pro/hexagonal/app/core/service.py.hbs +0 -28
- package/templates/python-fastapi/pro/hexagonal/app/main.py.hbs +0 -22
- package/templates/python-fastapi/pro/hexagonal/infra/main.tf.hbs +0 -83
- package/templates/python-fastapi/pro/hexagonal/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/python-fastapi/pro/hexagonal/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/python-fastapi/pro/hexagonal/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/python-fastapi/pro/hexagonal/requirements.txt.hbs +0 -12
- package/templates/python-fastapi/pro/mvc/.env.example.hbs +0 -17
- package/templates/python-fastapi/pro/mvc/.github/workflows/ci-cd.yml.hbs +0 -88
- package/templates/python-fastapi/pro/mvc/Dockerfile.hbs +0 -20
- package/templates/python-fastapi/pro/mvc/README.md.hbs +0 -41
- package/templates/python-fastapi/pro/mvc/app/controllers/auth.py.hbs +0 -46
- package/templates/python-fastapi/pro/mvc/app/controllers/health.py.hbs +0 -7
- package/templates/python-fastapi/pro/mvc/app/controllers/items.py.hbs +0 -21
- package/templates/python-fastapi/pro/mvc/app/controllers/payments.py.hbs +0 -32
- package/templates/python-fastapi/pro/mvc/app/main.py.hbs +0 -20
- package/templates/python-fastapi/pro/mvc/app/middleware/security.py.hbs +0 -39
- package/templates/python-fastapi/pro/mvc/app/models/item.py.hbs +0 -11
- package/templates/python-fastapi/pro/mvc/app/schemas/item.py.hbs +0 -16
- package/templates/python-fastapi/pro/mvc/app/services/item_service.py.hbs +0 -24
- package/templates/python-fastapi/pro/mvc/infra/main.tf.hbs +0 -83
- package/templates/python-fastapi/pro/mvc/infra/modules/ecs/main.tf.hbs +0 -54
- package/templates/python-fastapi/pro/mvc/infra/modules/rds/main.tf.hbs +0 -88
- package/templates/python-fastapi/pro/mvc/infra/modules/vpc/main.tf.hbs +0 -107
- package/templates/python-fastapi/pro/mvc/requirements.txt.hbs +0 -12
package/LICENSE
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Vini Trevisan
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights
|
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
9
|
+
furnished to do so, subject to the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
|
12
|
+
copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,321 +1,107 @@
|
|
|
1
1
|
# Kybernus CLI 🚀
|
|
2
2
|
|
|
3
|
-
[](https://github.com/ViniMTrevisan/Kybernus-CLI/actions)
|
|
4
|
-
[](https://www.npmjs.com/package/kybernus)
|
|
5
|
-
[](https://opensource.org/licenses/MIT)
|
|
6
|
-
|
|
7
3
|
**The Ultimate Backend Scaffolding Tool for Modern Developers.**
|
|
8
4
|
|
|
9
|
-
Build production-ready applications in minutes
|
|
5
|
+
Build production-ready applications in minutes. Kybernus generates robust, scalable backend projects with industry best practices built-in.
|
|
10
6
|
|
|
11
7
|
---
|
|
12
8
|
|
|
13
|
-
##
|
|
9
|
+
## Installation
|
|
14
10
|
|
|
11
|
+
```bash
|
|
12
|
+
npm install -g kybernus
|
|
15
13
|
```
|
|
16
|
-
kybernus/
|
|
17
|
-
├── apps/web/ # Next.js Web Application (Dashboard, Admin, APIs)
|
|
18
|
-
├── src/ # CLI Source Code
|
|
19
|
-
├── templates/ # Project Templates (5 stacks × 2 tiers)
|
|
20
|
-
├── tests/ # Automated Test Suite
|
|
21
|
-
└── docs/ # Documentation
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
### Components
|
|
25
|
-
|
|
26
|
-
| Component | Description |
|
|
27
|
-
|-----------|-------------|
|
|
28
|
-
| **CLI** | Interactive command-line tool for project scaffolding |
|
|
29
|
-
| **Web App** | Dashboard, authentication, admin panel, payment integration |
|
|
30
|
-
| **License System** | Trial/Free/Pro tiers with usage tracking |
|
|
31
|
-
| **Templates** | Production-ready project templates for 5 tech stacks |
|
|
32
14
|
|
|
33
15
|
---
|
|
34
16
|
|
|
35
|
-
##
|
|
17
|
+
## Quick Start
|
|
36
18
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
- **Clack** - Beautiful interactive prompts
|
|
41
|
-
- **Handlebars** - Template engine
|
|
42
|
-
- **Google Gemini** - AI-powered documentation (Pro)
|
|
19
|
+
```bash
|
|
20
|
+
# Create your first project
|
|
21
|
+
kybernus init
|
|
43
22
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
- **Stripe** - Payment processing
|
|
48
|
-
- **Resend** - Transactional emails
|
|
49
|
-
- **Upstash Redis** - Rate limiting & caching
|
|
50
|
-
- **TailwindCSS** - Styling
|
|
23
|
+
# Or start with a free trial (15 days, full Pro access)
|
|
24
|
+
kybernus register
|
|
25
|
+
```
|
|
51
26
|
|
|
52
27
|
---
|
|
53
28
|
|
|
54
|
-
##
|
|
29
|
+
## Supported Stacks
|
|
55
30
|
|
|
56
|
-
| Stack | Free
|
|
57
|
-
|
|
31
|
+
| Stack | Free | Pro |
|
|
32
|
+
|:------|:----:|:---:|
|
|
58
33
|
| **Node.js + Express** | ✅ MVC | ✅ Clean/Hexagonal |
|
|
59
34
|
| **Next.js** | ✅ MVC | ✅ Clean/Hexagonal |
|
|
60
35
|
| **Java Spring Boot** | ✅ MVC | ✅ Clean/Hexagonal |
|
|
61
|
-
| **NestJS** |
|
|
62
|
-
| **Python FastAPI** |
|
|
63
|
-
|
|
64
|
-
### Features by Tier
|
|
65
|
-
|
|
66
|
-
| Feature | Free | Trial (15 days) | Pro ($97) |
|
|
67
|
-
|:--------|:----:|:---------------:|:---------:|
|
|
68
|
-
| Basic Stacks | ✅ | ✅ | ✅ |
|
|
69
|
-
| Pro Stacks (NestJS, FastAPI) | ❌ | ✅ | ✅ |
|
|
70
|
-
| Clean/Hexagonal Architecture | ❌ | ✅ | ✅ |
|
|
71
|
-
| Docker & CI/CD | ❌ | ✅ | ✅ |
|
|
72
|
-
| Terraform Configs | ❌ | ✅ | ✅ |
|
|
73
|
-
| AI Documentation | ❌ | ✅ | ✅ |
|
|
74
|
-
| Project Limit | Unlimited | 3 Projects | Unlimited |
|
|
36
|
+
| **NestJS** | – | ✅ All Patterns |
|
|
37
|
+
| **Python FastAPI** | – | ✅ All Patterns |
|
|
75
38
|
|
|
76
39
|
---
|
|
77
40
|
|
|
78
|
-
##
|
|
41
|
+
## Commands
|
|
79
42
|
|
|
80
43
|
```bash
|
|
81
|
-
#
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
#
|
|
85
|
-
kybernus
|
|
86
|
-
kybernus
|
|
87
|
-
kybernus login # Authenticate with a license key
|
|
88
|
-
kybernus status # Check license status and usage
|
|
89
|
-
kybernus upgrade # Upgrade to Pro ($97 lifetime)
|
|
90
|
-
kybernus logout # Sign out and remove license
|
|
44
|
+
kybernus init # Generate a new project
|
|
45
|
+
kybernus register # Start a free trial (15 days)
|
|
46
|
+
kybernus login # Login with your license key
|
|
47
|
+
kybernus status # Check license and usage
|
|
48
|
+
kybernus upgrade # Upgrade to Pro ($97 lifetime)
|
|
49
|
+
kybernus logout # Sign out
|
|
91
50
|
```
|
|
92
51
|
|
|
93
|
-
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Example
|
|
94
55
|
|
|
95
56
|
```bash
|
|
96
|
-
# Start a new project
|
|
97
57
|
$ kybernus init
|
|
98
58
|
|
|
99
59
|
┌ 🚀 Kybernus Project Generator
|
|
100
60
|
│
|
|
101
61
|
◆ Project name: my-api
|
|
102
|
-
◆
|
|
103
|
-
│ ● Node.js + Express
|
|
104
|
-
│ ○ NestJS (Pro)
|
|
105
|
-
│ ○ Java Spring Boot
|
|
106
|
-
│ ○ Python FastAPI (Pro)
|
|
107
|
-
│ ○ Next.js
|
|
108
|
-
│
|
|
62
|
+
◆ Stack: Node.js + Express
|
|
109
63
|
◆ Architecture: Clean Architecture
|
|
110
64
|
◆ Include Docker? Yes
|
|
111
|
-
◆ Generate AI docs? Yes
|
|
112
65
|
│
|
|
113
|
-
└
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
---
|
|
117
|
-
|
|
118
|
-
## 🌐 Web Application
|
|
119
|
-
|
|
120
|
-
The web app (`apps/web/`) provides:
|
|
121
|
-
|
|
122
|
-
### Public Pages
|
|
123
|
-
- **Landing Page** - Product showcase with pricing
|
|
124
|
-
- **Documentation** - CLI reference and guides
|
|
125
|
-
- **Privacy Policy** & **Terms of Service**
|
|
126
|
-
|
|
127
|
-
### Authentication
|
|
128
|
-
- **Register/Login** - Email + password with bcrypt hashing
|
|
129
|
-
- **Password Recovery** - Email-based reset flow
|
|
130
|
-
- **Session Management** - JWT with 7-day persistence
|
|
131
|
-
- **Cookie Consent** - LGPD compliant
|
|
132
|
-
|
|
133
|
-
### User Dashboard
|
|
134
|
-
- License key display & copy
|
|
135
|
-
- Usage tracking (projects used / limit)
|
|
136
|
-
- Profile management (email/password updates)
|
|
137
|
-
- Upgrade to Pro via Stripe
|
|
138
|
-
|
|
139
|
-
### Admin Panel
|
|
140
|
-
- User management with search/filter
|
|
141
|
-
- Analytics dashboard
|
|
142
|
-
- System metrics
|
|
143
|
-
|
|
144
|
-
### API Endpoints
|
|
145
|
-
|
|
146
|
-
| Endpoint | Description |
|
|
147
|
-
|----------|-------------|
|
|
148
|
-
| `POST /api/auth/register` | Create trial account |
|
|
149
|
-
| `POST /api/auth/login` | Authenticate user |
|
|
150
|
-
| `POST /api/licenses/validate` | Validate license key |
|
|
151
|
-
| `POST /api/licenses/consume` | Consume a project credit |
|
|
152
|
-
| `POST /api/checkout` | Create Stripe checkout session |
|
|
153
|
-
| `POST /api/webhooks/stripe` | Handle payment webhooks |
|
|
154
|
-
| `GET /api/user/me` | Get current user data |
|
|
155
|
-
| `GET /api/admin/dashboard` | Admin analytics |
|
|
156
|
-
|
|
157
|
-
---
|
|
158
|
-
|
|
159
|
-
## 🧪 Testing
|
|
160
|
-
|
|
161
|
-
```bash
|
|
162
|
-
# Run all CLI tests (unit)
|
|
163
|
-
npm test
|
|
164
|
-
|
|
165
|
-
# Run web app tests
|
|
166
|
-
cd apps/web && npm test
|
|
167
|
-
|
|
168
|
-
# Run with watch mode
|
|
169
|
-
npm run test:watch
|
|
66
|
+
└ ✅ Project created successfully!
|
|
170
67
|
```
|
|
171
68
|
|
|
172
|
-
### Test Coverage
|
|
173
|
-
- **CLI Unit Tests**: 14 tests - Config, Generator, License Validator
|
|
174
|
-
- **Web Unit Tests**: 5 tests - Email templates
|
|
175
|
-
- **E2E Tests**: 40+ tests - API integration (run locally)
|
|
176
|
-
|
|
177
69
|
---
|
|
178
70
|
|
|
179
|
-
##
|
|
180
|
-
|
|
181
|
-
### Web App (Vercel)
|
|
182
|
-
1. Import repo to Vercel
|
|
183
|
-
2. Set **Root Directory**: `apps/web`
|
|
184
|
-
3. Add environment variables
|
|
185
|
-
4. Deploy
|
|
186
|
-
|
|
187
|
-
### CLI (NPM)
|
|
188
|
-
```bash
|
|
189
|
-
# Bump version
|
|
190
|
-
npm version patch
|
|
191
|
-
|
|
192
|
-
# Create and push tag
|
|
193
|
-
git tag v1.0.0
|
|
194
|
-
git push --tags
|
|
195
|
-
|
|
196
|
-
# GitHub Actions auto-publishes to NPM
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
See [VERCEL_README.md](apps/web/VERCEL_README.md) for detailed deployment guide.
|
|
200
|
-
|
|
201
|
-
---
|
|
202
|
-
|
|
203
|
-
## 🔧 Development
|
|
204
|
-
|
|
205
|
-
### Prerequisites
|
|
206
|
-
- Node.js 18+
|
|
207
|
-
- PostgreSQL (or Docker)
|
|
208
|
-
- NPM account (for publishing)
|
|
209
|
-
|
|
210
|
-
### Local Setup
|
|
211
|
-
|
|
212
|
-
```bash
|
|
213
|
-
# Clone repository
|
|
214
|
-
git clone https://github.com/ViniMTrevisan/Kybernus-CLI.git
|
|
215
|
-
cd Kybernus-CLI
|
|
216
|
-
|
|
217
|
-
# Install CLI dependencies
|
|
218
|
-
npm install
|
|
219
|
-
npm run build
|
|
220
|
-
|
|
221
|
-
# Install Web dependencies
|
|
222
|
-
cd apps/web
|
|
223
|
-
npm install
|
|
224
|
-
|
|
225
|
-
# Setup environment
|
|
226
|
-
cp .env.example .env
|
|
227
|
-
# Edit .env with your credentials
|
|
228
|
-
|
|
229
|
-
# Run database migrations
|
|
230
|
-
npx prisma migrate dev
|
|
231
|
-
|
|
232
|
-
# Start development server
|
|
233
|
-
npm run dev
|
|
234
|
-
```
|
|
235
|
-
|
|
236
|
-
### Environment Variables
|
|
237
|
-
|
|
238
|
-
```env
|
|
239
|
-
DATABASE_URL="postgresql://..."
|
|
240
|
-
JWT_SECRET="your-secret-key"
|
|
241
|
-
STRIPE_SECRET_KEY="sk_..."
|
|
242
|
-
STRIPE_WEBHOOK_SECRET="whsec_..."
|
|
243
|
-
RESEND_API_KEY="re_..."
|
|
244
|
-
UPSTASH_REDIS_REST_URL="https://..."
|
|
245
|
-
UPSTASH_REDIS_REST_TOKEN="..."
|
|
246
|
-
```
|
|
247
|
-
|
|
248
|
-
---
|
|
249
|
-
|
|
250
|
-
## 📁 Template Structure
|
|
251
|
-
|
|
252
|
-
Each template includes:
|
|
253
|
-
|
|
254
|
-
```
|
|
255
|
-
templates/{stack}/{tier}/
|
|
256
|
-
├── src/
|
|
257
|
-
│ ├── controllers/ # Route handlers
|
|
258
|
-
│ ├── services/ # Business logic
|
|
259
|
-
│ ├── repositories/ # Data access (Clean/Hex only)
|
|
260
|
-
│ ├── entities/ # Domain models (Clean/Hex only)
|
|
261
|
-
│ └── ports/ # Interfaces (Hexagonal only)
|
|
262
|
-
├── docker/
|
|
263
|
-
│ ├── Dockerfile
|
|
264
|
-
│ └── docker-compose.yml
|
|
265
|
-
├── .github/
|
|
266
|
-
│ └── workflows/ # CI/CD pipelines
|
|
267
|
-
├── terraform/ # Infrastructure as Code
|
|
268
|
-
└── README.md
|
|
269
|
-
```
|
|
270
|
-
|
|
271
|
-
---
|
|
272
|
-
|
|
273
|
-
## 🔐 License System
|
|
274
|
-
|
|
275
|
-
### How It Works
|
|
276
|
-
1. **Free Mode**: Basic stacks, MVC only, unlimited projects
|
|
277
|
-
2. **Trial Mode**: Full Pro access for 15 days, 3 project limit
|
|
278
|
-
3. **Pro Mode**: Lifetime access, all features, unlimited projects
|
|
279
|
-
|
|
280
|
-
### License Key Format
|
|
281
|
-
- Trial: `KYB-TRIAL-XXXX-XXXX-XXXX`
|
|
282
|
-
- Pro: `KYB-PRO-XXXX-XXXX-XXXX`
|
|
283
|
-
|
|
284
|
-
### Validation Flow
|
|
285
|
-
```
|
|
286
|
-
CLI → validate(licenseKey) → API → Database → Response
|
|
287
|
-
← { valid, tier, usage, limit } ←
|
|
288
|
-
```
|
|
289
|
-
|
|
290
|
-
---
|
|
71
|
+
## What's Included
|
|
291
72
|
|
|
292
|
-
|
|
73
|
+
### 3 projects FREE! Includes PRO and Architect templates
|
|
293
74
|
|
|
294
|
-
|
|
75
|
+
### Architect ($7)
|
|
76
|
+
- Basic project scaffolding (MVC)
|
|
77
|
+
- Node.js, Next.js, Java Spring Boot
|
|
78
|
+
- README with setup instructions
|
|
295
79
|
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
80
|
+
### Pro Tier ($97 lifetime)
|
|
81
|
+
- **All stacks** including NestJS and FastAPI
|
|
82
|
+
- **Clean & Hexagonal Architecture** patterns
|
|
83
|
+
- **Docker & docker-compose** configurations
|
|
84
|
+
- **CI/CD pipelines** (GitHub Actions)
|
|
85
|
+
- **Terraform** infrastructure configs
|
|
86
|
+
- **AI-powered documentation** (via Gemini)
|
|
87
|
+
- Unlimited projects
|
|
301
88
|
|
|
302
89
|
---
|
|
303
90
|
|
|
304
|
-
##
|
|
91
|
+
## Links
|
|
305
92
|
|
|
306
|
-
|
|
93
|
+
- 🌐 **Website**: [kybernus.vercel.app](https://kybernus.vercel.app)
|
|
94
|
+
- 📖 **Docs**: [kybernus.vercel.app/docs](https://kybernus.vercel.app/docs)
|
|
95
|
+
- 🐛 **Issues**: [GitHub Issues](https://github.com/ViniMTrevisan/Kybernus-CLI/issues)
|
|
307
96
|
|
|
308
97
|
---
|
|
309
98
|
|
|
310
|
-
##
|
|
99
|
+
## License
|
|
311
100
|
|
|
312
|
-
|
|
313
|
-
- **Issues**: [GitHub Issues](https://github.com/ViniMTrevisan/Kybernus-CLI/issues)
|
|
314
|
-
- **Email**: support@kybernus.dev
|
|
101
|
+
MIT © 2026 Vini Trevisan
|
|
315
102
|
|
|
316
103
|
---
|
|
317
104
|
|
|
318
105
|
<p align="center">
|
|
319
|
-
<strong>Code less, Build more.</strong
|
|
320
|
-
© 2026 Kybernus Systems. All rights reserved.
|
|
106
|
+
<strong>Code less, Build more.</strong>
|
|
321
107
|
</p>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAQA,UAAU,WAAW;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAQA,UAAU,WAAW;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,iBAoFrD"}
|
|
@@ -36,7 +36,11 @@ export async function initCommand(options) {
|
|
|
36
36
|
clack.note('🌟 Modo Pro ativo\n\nVocê tem acesso a todos os recursos!', '✨ Pro');
|
|
37
37
|
}
|
|
38
38
|
// Executar wizard interativo (ou usar options se non-interactive)
|
|
39
|
-
const config = await runWizard(licenseTier);
|
|
39
|
+
const config = await runWizard(licenseTier, options);
|
|
40
|
+
// Inject licenseKey into config if available
|
|
41
|
+
if (licenseKey) {
|
|
42
|
+
config.licenseKey = licenseKey;
|
|
43
|
+
}
|
|
40
44
|
// Validate project limit (Metered Trial)
|
|
41
45
|
if (licenseTier === 'pro' && licenseKey) {
|
|
42
46
|
const spinner = clack.spinner();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAYjE,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAoB;IAClD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAEzC,6BAA6B;IAC7B,IAAI,WAAW,GAAgB,MAAM,CAAC;IACtC,IAAI,UAAU,GAAuB,OAAO,CAAC,OAAO,CAAC;IAErD,uDAAuD;IACvD,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,UAAU,GAAG,aAAa,CAAC,aAAa,EAAE,CAAC;IAC/C,CAAC;IAED,8BAA8B;IAC9B,IAAI,UAAU,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAEpD,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,aAAa,CAAC,oBAAoB,EAAE,CAAC;YAExD,mCAAmC;YACnC,IAAI,SAAS,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC;gBACxC,WAAW,GAAG,KAAK,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;gBACxE,aAAa,CAAC,YAAY,EAAE,CAAC;YACjC,CAAC;QACL,CAAC;IACL,CAAC;IAED,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CACN,wQAAwQ,EACxQ,gBAAgB,CACnB,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,KAAK,CAAC,IAAI,CAAC,2DAA2D,EAAE,OAAO,CAAC,CAAC;IACrF,CAAC;IAED,kEAAkE;IAClE,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,16 @@
|
|
|
1
1
|
import { ProjectConfig, LicenseTier } from '../../models/config.js';
|
|
2
|
-
export
|
|
2
|
+
export interface ConfigOptions {
|
|
3
|
+
name?: string;
|
|
4
|
+
stack?: string;
|
|
5
|
+
architecture?: string;
|
|
6
|
+
buildTool?: string;
|
|
7
|
+
packageName?: string;
|
|
8
|
+
ai?: boolean;
|
|
9
|
+
geminiKey?: string;
|
|
10
|
+
nonInteractive?: boolean;
|
|
11
|
+
docker?: boolean;
|
|
12
|
+
cicd?: boolean;
|
|
13
|
+
terraform?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export declare function runWizard(licenseTier: LicenseTier, options?: ConfigOptions): Promise<ProjectConfig>;
|
|
3
16
|
//# sourceMappingURL=wizard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../../src/cli/prompts/wizard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAkC,MAAM,wBAAwB,CAAC;AAGpG,wBAAsB,SAAS,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../../src/cli/prompts/wizard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAkC,MAAM,wBAAwB,CAAC;AAGpG,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAsB,SAAS,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CA+K7G"}
|
|
@@ -1,10 +1,35 @@
|
|
|
1
1
|
import * as clack from '@clack/prompts';
|
|
2
|
-
export async function runWizard(licenseTier) {
|
|
2
|
+
export async function runWizard(licenseTier, options = {}) {
|
|
3
|
+
// Se for modo não interativo, validar options obrigatórias
|
|
4
|
+
if (options.nonInteractive) {
|
|
5
|
+
if (!options.name || !options.stack) {
|
|
6
|
+
throw new Error('Modo não interativo requer --name e --stack. Arquitetura assume padrão se não informada.');
|
|
7
|
+
}
|
|
8
|
+
// Default DevOps flags for Pro non-interactive
|
|
9
|
+
const devops = {
|
|
10
|
+
docker: options.docker || false,
|
|
11
|
+
cicd: options.cicd || false,
|
|
12
|
+
terraform: options.terraform || false
|
|
13
|
+
};
|
|
14
|
+
return {
|
|
15
|
+
projectName: options.name,
|
|
16
|
+
stack: options.stack,
|
|
17
|
+
architecture: options.architecture || 'mvc',
|
|
18
|
+
buildTool: options.buildTool || 'npm',
|
|
19
|
+
packageName: options.packageName,
|
|
20
|
+
useAI: options.ai || false,
|
|
21
|
+
geminiKey: options.geminiKey,
|
|
22
|
+
devops,
|
|
23
|
+
licenseTier
|
|
24
|
+
};
|
|
25
|
+
}
|
|
3
26
|
clack.intro('🚀 Bem-vindo ao Kybernus');
|
|
27
|
+
// Pre-fill prompt default values based on passed options
|
|
4
28
|
const answers = await clack.group({
|
|
5
29
|
projectName: () => clack.text({
|
|
6
30
|
message: 'Nome do projeto:',
|
|
7
31
|
placeholder: 'meu-projeto',
|
|
32
|
+
initialValue: options.name,
|
|
8
33
|
validate: (value) => {
|
|
9
34
|
if (!value)
|
|
10
35
|
return 'Nome é obrigatório';
|
|
@@ -15,6 +40,7 @@ export async function runWizard(licenseTier) {
|
|
|
15
40
|
}),
|
|
16
41
|
stack: () => clack.select({
|
|
17
42
|
message: 'Escolha a stack:',
|
|
43
|
+
initialValue: options.stack,
|
|
18
44
|
options: [
|
|
19
45
|
{ value: 'nextjs', label: 'Next.js (React + TypeScript)' },
|
|
20
46
|
{ value: 'java-spring', label: 'Java Spring Boot' },
|
|
@@ -32,6 +58,7 @@ export async function runWizard(licenseTier) {
|
|
|
32
58
|
return;
|
|
33
59
|
return clack.select({
|
|
34
60
|
message: 'Build tool:',
|
|
61
|
+
initialValue: options.buildTool,
|
|
35
62
|
options: [
|
|
36
63
|
{ value: 'maven', label: 'Maven (Gradle em breve)' },
|
|
37
64
|
],
|
|
@@ -43,6 +70,7 @@ export async function runWizard(licenseTier) {
|
|
|
43
70
|
return clack.text({
|
|
44
71
|
message: 'Package name (ex: com.usuario.projeto):',
|
|
45
72
|
placeholder: 'com.usuario.projeto',
|
|
73
|
+
initialValue: options.packageName,
|
|
46
74
|
validate: (value) => {
|
|
47
75
|
if (!value)
|
|
48
76
|
return 'Package name é obrigatório para Java';
|
|
@@ -57,23 +85,27 @@ export async function runWizard(licenseTier) {
|
|
|
57
85
|
const backendStacks = ['java-spring', 'nodejs-express', 'python-fastapi', 'nestjs'];
|
|
58
86
|
if (!backendStacks.includes(results.stack))
|
|
59
87
|
return;
|
|
60
|
-
const
|
|
88
|
+
const uiOptions = [{ value: 'mvc', label: 'MVC (Model-View-Controller)' }];
|
|
61
89
|
// Arquiteturas avançadas apenas no Pro
|
|
62
90
|
if (licenseTier === 'pro') {
|
|
63
|
-
|
|
91
|
+
uiOptions.push({ value: 'clean', label: '🌟 Clean Architecture (Pro)' }, { value: 'hexagonal', label: '🌟 Hexagonal Architecture (Pro)' });
|
|
64
92
|
}
|
|
65
93
|
return clack.select({
|
|
66
94
|
message: 'Arquitetura:',
|
|
67
|
-
options,
|
|
95
|
+
initialValue: options.architecture,
|
|
96
|
+
options: uiOptions,
|
|
68
97
|
});
|
|
69
98
|
},
|
|
70
99
|
useAI: () => clack.confirm({
|
|
71
100
|
message: 'Gerar documentação com IA (Google Gemini)?',
|
|
72
|
-
initialValue: false,
|
|
101
|
+
initialValue: options.ai || false,
|
|
73
102
|
}),
|
|
74
103
|
geminiKey: ({ results }) => {
|
|
75
104
|
if (!results.useAI)
|
|
76
105
|
return;
|
|
106
|
+
// Se a key já vier nas options, não pergunta
|
|
107
|
+
if (options.geminiKey)
|
|
108
|
+
return;
|
|
77
109
|
return clack.password({
|
|
78
110
|
message: 'Gemini API Key:',
|
|
79
111
|
validate: (value) => {
|
|
@@ -85,6 +117,10 @@ export async function runWizard(licenseTier) {
|
|
|
85
117
|
devops: async ({ results }) => {
|
|
86
118
|
if (licenseTier !== 'pro')
|
|
87
119
|
return [];
|
|
120
|
+
// Se já tiver alguma flag de devops, assume que estamos em modo override
|
|
121
|
+
if (options.docker || options.cicd || options.terraform) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
88
124
|
const selected = await clack.multiselect({
|
|
89
125
|
message: "DevOps & Infraestrutura (marque o que desejar com Space ou 'A' para selecionar todos):",
|
|
90
126
|
options: [
|
|
@@ -109,11 +145,11 @@ export async function runWizard(licenseTier) {
|
|
|
109
145
|
buildTool: answers.buildTool,
|
|
110
146
|
packageName: answers.packageName,
|
|
111
147
|
useAI: answers.useAI,
|
|
112
|
-
geminiKey: answers.geminiKey,
|
|
148
|
+
geminiKey: (options.geminiKey || answers.geminiKey),
|
|
113
149
|
devops: {
|
|
114
|
-
docker: answers.devops?.includes('docker') || false,
|
|
115
|
-
cicd: answers.devops?.includes('ci-cd') || false,
|
|
116
|
-
terraform: answers.devops?.includes('terraform') || false,
|
|
150
|
+
docker: options.docker || answers.devops?.includes('docker') || false,
|
|
151
|
+
cicd: options.cicd || answers.devops?.includes('ci-cd') || false,
|
|
152
|
+
terraform: options.terraform || answers.devops?.includes('terraform') || false,
|
|
117
153
|
},
|
|
118
154
|
licenseTier,
|
|
119
155
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../../src/cli/prompts/wizard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../../src/cli/prompts/wizard.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,14 @@ export declare class ProjectGenerator {
|
|
|
9
9
|
* Gera um projeto completo baseado na configuração
|
|
10
10
|
*/
|
|
11
11
|
generate(config: ProjectConfig, outputDir: string): Promise<void>;
|
|
12
|
+
/**
|
|
13
|
+
* Get Pro template path - downloads from API if not cached
|
|
14
|
+
*/
|
|
15
|
+
private getProTemplatePath;
|
|
16
|
+
/**
|
|
17
|
+
* Get local template path for Free tier (bundled with npm package)
|
|
18
|
+
*/
|
|
19
|
+
private getLocalTemplatePath;
|
|
12
20
|
/**
|
|
13
21
|
* Gera documentação usando IA (README.md e API.md)
|
|
14
22
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/core/generator/project.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/core/generator/project.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AASvD;;GAEG;AACH,qBAAa,gBAAgB;IACzB,OAAO,CAAC,MAAM,CAAiB;;IAM/B;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2DvE;;OAEG;YACW,kBAAkB;IA6BhC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;OAEG;YACW,uBAAuB;IA2CrC;;OAEG;IACH,OAAO,CAAC,eAAe;IAkBvB;;OAEG;IACH,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,4BAA4B;IAsCpC;;OAEG;YACW,sBAAsB;IAOpC;;OAEG;YACW,uBAAuB;IAgCrC;;OAEG;YACW,kBAAkB;IAsChC;;OAEG;YACW,mBAAmB;CAwCpC"}
|