Skip to content

[ Feature ] add on frameworks NestJS configurations #59

@Juan-Severiano

Description

@Juan-Severiano

Description

Add support for NestJS deployments to the project, providing pre-configured templates and deployment options for NestJS applications.

Motivation

NestJS is a popular progressive Node.js framework for building efficient, scalable server-side applications. Many developers use NestJS for enterprise applications and would benefit from having deployment configurations available in this project.

Proposed Solution

Add NestJS-specific configurations that include:

  • Framework Detection: Auto-detect NestJS projects based on dependencies and project structure
  • Build Configuration: Pre-configured build commands for NestJS applications
  • Environment Variables: Common NestJS environment variable templates
  • Docker Support: Optimized Dockerfile for NestJS deployments
  • Start Commands: Proper production start commands (npm run start:prod)
  • TypeScript Configuration: Ensure compatibility with NestJS's TypeScript setup
  • Dependency Management: Handle NestJS-specific dependencies (@nestjs/core, @nestjs/common, etc.)

Example Configuration

framework: nestjs
build:
  command: npm run build
  output: dist
start:
  command: npm run start:prod
port: 3000
environment:
  NODE_ENV: production

Additional Context

NestJS applications typically:

  • Use TypeScript by default
  • Require compilation before deployment
  • Run on port 3000 by default (configurable)
  • Have a dist folder as build output
  • Use decorators and reflection extensively

Benefits

  • Streamlined deployment process for NestJS developers
  • Reduced configuration overhead
  • Better developer experience
  • Aligns with the project's goal of supporting multiple frameworks

Related Frameworks

This could be part of a broader effort to support Node.js frameworks like:

  • Express.js
  • Fastify
  • Koa
  • Hapi

I'd be happy to contribute to implementing this feature if the maintainers are open to it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions