Skip to content

segmentio/typewriter

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
August 4, 2022 17:40
src
January 30, 2023 16:18
August 4, 2022 17:40
August 4, 2022 17:40
September 7, 2022 14:16
January 30, 2023 16:18
August 4, 2022 17:40
August 4, 2022 17:40



Typewriter logo



CircleCI Status 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