Skip to content

segmentio/typewriter

Repository files navigation



Typewriter logo



NPM Version License Known Vulnerabilities


Typewriter GIF Example

  • 💪 Strongly Typed Analytics: Generates strongly-typed Segment analytics clients that provide compile-time errors, along with intellisense for event/property names, types and descriptions.

  • 👮 Analytics Testing: Validate your instrumentation matches your spec before deploying to production, so you can fail your CI builds without a manual analytics QA process.

  • 🌐 Cross-Language Support: Supports native clients for analytics.js, analytics-node, analytics-android and analytics-ios.

  • Segment Protocols: Built-in support to sync your typewriter clients with your centralized Segment Tracking Plans.

Get Started

# Walks you through setting up a `typewriter.yml` and generating your first client.
$ npx typewriter init

For more instructions on setting up your typewriter client, such as adding it to your CI, see our documentation.

Contributing

Migrating from v7

Check the instructions on our documentation

  • You'll need to change your Segment Config API Token for a Public API Token
  • v8 doesn't support Analytics-iOS nor Analytics-Android. We recommend using Analytics-Swift and Analytics-Kotlin instead which are supported. If you need to use these libraries you can run v7 specifying the version with your commands:
$ npx typewriter@7 build