or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

docs

blocks.mdcli.mdindex.mdpresets.mdtemplate-system.mdtypes.md
tile.json

tessl/npm-create-typescript-app

Quickstart-friendly TypeScript template with comprehensive, configurable, opinionated tooling

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
npmpkg:npm/create-typescript-app@2.46.x

To install, run

npx @tessl/cli install tessl/npm-create-typescript-app@2.46.0

index.mddocs/

Create TypeScript App

Create TypeScript App is a comprehensive template generator system that creates opinionated TypeScript projects with comprehensive tooling. Built on top of bingo-stratum, it provides both a CLI tool and programmatic API for generating TypeScript projects with pre-configured development environments, linting, testing, documentation, and CI/CD workflows.

Package Information

  • Package Name: create-typescript-app
  • Package Type: npm
  • Language: TypeScript
  • Installation: npx create-typescript-app or npm install -g create-typescript-app
  • Node.js Requirement: >=20.19.0

Core Imports

import { 
  template, 
  createConfig, 
  base, 
  blocks, 
  presets 
} from "create-typescript-app";

For accessing types:

import type { 
  BaseOptions, 
  Contributor, 
  Documentation, 
  WorkflowsVersions 
} from "create-typescript-app";

Basic Usage

CLI Usage

# Interactive project creation
npx create-typescript-app

# Global installation
npm install -g create-typescript-app
create-typescript-app

Programmatic Usage

import { createConfig, base, presets } from "create-typescript-app";

// Create configuration with preset
const config = createConfig({
  directory: "./my-project",
  title: "My TypeScript Project",
  repository: "my-typescript-project",
  owner: "username",
  preset: "common"
});

// Use with bingo-stratum template runner
// Template can be applied using bingo's template execution system

Architecture

Create TypeScript App is built around several key architectural components:

  • Template System: Core template configuration using bingo-stratum framework
  • Base Configuration: Comprehensive base options schema with 20+ configurable properties
  • Blocks System: 48+ modular blocks handling specific aspects (TypeScript, ESLint, testing, etc.)
  • Presets: Pre-configured combinations of blocks (minimal, common, everything)
  • CLI Interface: Interactive template runner with prompts and validation

The system follows a composable architecture where blocks can be mixed and matched, presets provide common configurations, and the base provides core project metadata.

Capabilities

Template System

Core template configuration and creation functionality for generating TypeScript projects with configurable options and block-based architecture.

const template: Template;

function createConfig(options: BaseOptions): TemplateConfig;

const base: BaseTemplate;

Template System

CLI Tool

Interactive command-line interface for creating TypeScript projects with guided prompts and preset selection.

// CLI accessible via bin/index.js
// Uses runTemplateCLI from bingo package

CLI Usage

Blocks System

Modular template building units handling specific aspects of project generation including TypeScript setup, linting, testing, documentation, and CI/CD.

const blocks: {
  blockTypeScript: Block;
  blockESLint: Block;
  blockVitest: Block;
  blockPackageJson: Block;
  blockREADME: Block;
  // ... 43+ more blocks
};

Blocks

Presets System

Pre-configured combinations of blocks representing common project configurations from minimal setups to full-featured development environments.

const presets: {
  minimal: Preset;
  common: Preset; 
  everything: Preset;
};

Presets

Type Definitions

Complete TypeScript type definitions for all configuration options, contributors, documentation structure, and workflow versions.

interface BaseOptions {
  directory: string;
  title: string;
  repository: string;
  owner: string;
  description?: string;
  preset?: string;
  // ... 15+ more options
}

Types