👾 JS type systems interportability
Clone or download
Latest commit 9d8a303 Jan 6, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md Add postgraphile Jan 6, 2019
functional-programming-libraries.md more links Feb 4, 2018
type-o-rama.png first commit Jan 16, 2018

README.md

type-o-rama

Conversion table

Convert from X→ to →Y (X→Y).

→TypeScript →Flow →Graphql →JSON Schema →Elm →JSDoc →Closure JSDoc →Reason
TypeScript - + + + + +
Flow + - + 😢 +
GraphQL + + - + + +
JSON Schema 📦 + + - 📦
Elm + -
JSDoc + + -
JSON 📦 📦 + + 📦
Reason + + -
PureScript + +
JavaScript + + +
PropTypes + +
CSS Modules + +
gRPC + + + + +
Thrift +
SQL + + +

Badge type-o-rama

If you want to show that your project was mentioned in type-o-rama you can use this badge:

[![type-o-rama](https://img.shields.io/badge/type--o--rama-%F0%9F%9A%80-blue.svg)](https://github.com/stereobooster/type-o-rama)

TypeScript

TypeScript to Flow

See also:

TypeScript to JSON Schema

TypeScript to JSDoc

TypeScript to Closure JSDoc

TypeScript to Reason

TypeScript to Dart

TypeScript to Kotlin

Flow

Flow to TypeScript

See also:

Flow to Reason

Flow to Closure JSDoc

  • 😢 no options here

Who needs it:

Flow to Prepack

Flow to JSON Schema

Flow to PropTypes

GraphQL

GraphQL to TypeScript

See also:

GraphQL to Flow

GraphQL to JSON Schema

GraphQL to Elm

GraphQL to Reason

JSON Schema

JSON Schema to TypeScript

JSON Schema to Flow

JSON Schema to Graphql

JSON Schema to Elm

JSON Schema to gRPC

JSON Schema to SQL

OpenAPI

OpenAPI to TypeScript

Swagger to TypeScript

Swagger to Flow

Elm

Elm to TypeScript

JSDoc

JSDoc to Flow

JSDoc to TypeScript

TypeScript JSDoc to TypeScript

Who needs it:

Closure JSDoc to TypeScript

JSDoc flavours

See also:

JSON

JSON to TypeScript

JSON to Flow

JSON to Graphql

JSON to PropTypes

JSON to Elm

JSON to Scala

I suppose this can be used for Scala.js.

JSON to JSON Schema

JSON to Reason

Reason

Reason to TypeScript

Reason to Flow

PureScript

PureScript to TypeScript

PureScript to Flow

JavaScript

Status of Static Typing in ECMAScript

JavaScript to TypeScript

JavaScript to Flow

JavaScript to Reason

PropTypes

PropTypes to TypeScript

JSX to TypeScript

PropTypes to Flow

CSS Modules

CSS Modules to TypeScript

CSS Modules to Flow

gRPC

gRPC to TypeScript

gRPC to Flow

gRPC to GraphQL

gRPC to JSON Schema

gRPC to Elm

gRPC to SQL

gRPC to Scala

Thrift

Thrift to Typescript

SQL

SQL to Typescript

SQL to Flow

SQL to GraphQL

SQL to gRPC

WebIDL

https://developer.microsoft.com/en-us/microsoft-edge/platform/catalog/ - checkout "Visualization" tab.

WebIDL to TypeScript

WebIDL to Flow

Go

Go to TypeScript

Go to Flow

Kotlin

Kotlin to TypeScript

Runtime types to static types

Runtime type system

Why do you need Runtime and Static type system together? See this discussion.

Compatible with TypeScript

  • ts-runtime - TypeScript Runtime Type Checks Playground
  • io-ts - TypeScript compatible runtime type system for IO validation

Compatible with Flow

  • flow-runtime - Flow-compatible runtime type system for JavaScript.
  • flow-io - (deprecated) Flow compatible runtime type system for IO validation

Incompatible with existing static type systems

  • React PropTypes
  • tcomb - Type checking and DDD for JavaScript
  • hm-def - Runtime type checking for JS with Hindley Milner signatures
  • ftor - ftor enables ML-like type-directed, functional programming with Javascript including reasonable debugging
  • sanctuary-def - Run-time type system for JavaScript. See also sanctuary#254
  • rfx - Self documenting runtime interfaces.
  • rtype - Intuitive structural type notation for JavaScript.

See also:

Property based testing

Testing with TypeScript

Testing with Flow

Incompatible with existing static type systems

Testing with Elm

Testing with Reason

Testing with PureScript

Languages that compile to JS

(And not mentioned above)

See also:

Schemas