Advanced Usage

Advanced techniques and configurations for create-awesome-node-app

Using Different Package Managers

create-awesome-node-app supports multiple package managers. You can choose the one that best fits your workflow:

# Create a new project with npm
npx create-awesome-node-app my-app

# Specify package manager explicitly
npx create-awesome-node-app my-app --use-npm

# Install dependencies
cd my-app
npm install

# Run development server
npm run dev

CI/CD Integration

Most templates offer extensions that include files for different CI/CD tools. These extensions provide ready-to-use configurations for popular CI/CD platforms:

GitHub Actions

The GitHub Setup extension adds GitHub Actions workflows for CI/CD, along with issue templates and other GitHub-specific configurations.

npx create-awesome-node-app my-app --addons github-setup

Docker Compose

The Docker Compose Setup extension adds Docker environments for development and production.

npx create-awesome-node-app my-app --addons docker-compose-setup

Deployment Workflow

Here's a typical deployment workflow for a create-awesome-node-app project:

Deployment Workflow

Monorepo Setup

create-awesome-node-app offers a Turborepo Boilerplate template for monorepo setups:

# Create a new monorepo project
npx create-awesome-node-app my-monorepo --template turborepo-boilerplate

# Navigate to the project
cd my-monorepo

# Run all packages in development mode
npm run dev

# Build all packages
npm run build

The Turborepo Boilerplate template includes:

  • Turborepo configuration for efficient builds
  • Workspace setup for managing multiple packages
  • Shared configurations for TypeScript, ESLint, and other tools
  • Example packages to demonstrate the monorepo structure

Troubleshooting Common Issues

Installation Failures

If you encounter issues during installation:

Problem: Dependencies fail to install

Solution: Try using the --no-install flag and then install dependencies manually

npx create-awesome-node-app my-app --no-install
cd my-app && npm install

Template or Extension Not Found

If a template or extension is not found:

Problem: Specified template or extension doesn't exist

Solution: List available templates and extensions to check the correct names

npx create-awesome-node-app --list-templates
npx create-awesome-node-app --list-addons

Compatibility Issues

If you encounter compatibility issues between templates and extensions:

Problem: Extension is not compatible with the selected template

Solution: Check the extension's compatibility in the documentation or use the interactive mode

npx create-awesome-node-app my-app --interactive

Available Templates and Extensions

create-awesome-node-app offers a variety of templates and extensions. Here's how to list them:

# List all available templates
npx create-awesome-node-app --list-templates

# List all available extensions
npx create-awesome-node-app --list-addons

You can also view the templates and extensions on the project's website or GitHub repository.

Interactive Mode

The interactive mode provides a guided experience for creating projects:

npx create-awesome-node-app my-app --interactive

In interactive mode, you'll be prompted to:

  1. Select a template from the available options
  2. Choose extensions compatible with the selected template
  3. Configure template-specific options (if available)
  4. Confirm your choices before project creation

This mode is especially useful for beginners or when you're not sure which template or extensions to use.