TypeScript Workflow

What are workflows?

Workflows are the tools processes people use to move a feature from inception to reality

Project Workflow

  • Conception
  • Design
  • Breakdown & Estimation
  • Setup
  • Development
  • Test
  • Deployment
  • Support

Development Workflow

Software engineers want to release software and features

  • better
  • faster
  • with more confidence

TypeScript Tools

IDE

A good IDE integrates with your development workflow allowing you to work quicker and more efficiently

Traits of a good IDE

  • type hinting
  • completion
  • linting
  • tool integration

Scaffolding/Boilerplate

Boilerplate helps avoid bottlenecks that occur during the setup stage

Code Style

A consistent code style makes code eaier to read, more maintainable, and helps avoid common errors

Build tools

Build tools let engineers share build processes and configuration

Testing

Automated testing ensures that changes do not create undesired side effects

Intern

Intern is an all-in-one solution for testing

  • Unit tests
  • Functional tests
  • Tests against real browsers
  • Code coverage analysis
  • Benchmarking
  • Accessibility testing
  • Visual regression testing

Development Paradigms

Building & Distributing

  • Build into a separate build folder
  • Avoid separate build and release scripts

Test Builds

  • Build your application and tests as separate build steps
  • Build tests against your distribution

.d.ts Files

The TypeScript compiler does not automatically copy .d.ts files during a build.

  • Copy over .d.ts files manually
  • Rename them to .ts
  • show webserv's Handler.js

Mock Server

A basic web server that can serve up content or proxy to another server to support client development

Common tools
  • Roll your own -- connect/express + http-proxy + plugins
  • Charles Proxy
  • Other tools?

General Tools

Questions?