nowfound

Dev tools · alternatives · 2026

24 alternatives to Ts-Chan – Go-Like Concurrency Primitives for TypeScript/JavaScript

Hey HN, I’m sharing ts-chan, an NPM package providing Go-like concurrency primitives, including channels and select statements, for TypeScript and JavaScript, supporting Node.js, Deno, Bun, and browsers. This is something I've built to make implementing Go-style "control loops" feasible in JavaScript, but there are many possible applications. Highlights: - Features a FIFO processing Chan class and versatile Select class for concurrency control. - Supports buffered channel and channel close semantics very close to Go's. - TypeScript-first implementation. - Defines a simple "channel protocol"…

Ts-Chan is an NPM package that brings Go-style concurrency primitives to TypeScript and JavaScript, including channels and select statements. It provides a FIFO Chan class and Select class for managing concurrent… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes. Ts-Chan – Go-Like Concurrency Primitives for TypeScript/JavaScript launched in 2023; newer entries below may have overtaken it.

  1. 1

    Pure C implementation of Go channels. Contribute to tylertreat/chan development by creating an account on GitHub.

    2014 · github.com · its alternatives →

  2. 2

    A SQL database implemented purely in TypeScript type annotations. - codemix/ts-sql

    2020 · github.com · its alternatives →

  3. 3

    Hi, I made a bridge (https://github.com/fzyzcjy/flutter_rust_bridge v2.0.0) between Flutter and Rust, which auto translates syntaxes like arbitrary types, &mut, async, traits, results, closure (callback), lifetimes, etc. The goal is to make a bridge between the two, seamlessly as if working in one single language. Then, as an example, I showed how to write Rust applications with GUI by utilizing Flutter. That is discussed in the link in details. To play with it, please visit the GitHub repo, or refer to the end of the article for detailed folders and commands. When I…

    2024 · cjycode.com · its alternatives →

  4. 4

    Guts is a code generator that converts Golang types to Typescript. Useful for keeping types in sync between the front and backend. - coder/guts

    Nov 2025 · github.com · its alternatives →

  5. 5

    Hey all, I just wanted to share a project I've been working on for the past month. After years of heavy frameworks, I really like the idea of using htmx, but it’s a little too low level for me and needs a thin layer above it to facilitate things like components, better syntax with complex JS inside of an attribute, etc To try and solve this problem with a very minimal stack (golang + htmx) that I've been really enjoying, I'm building this project to cater to my needs and was thinking it would be useful for other developers.

    2024 · htmgo.dev · its alternatives →

  6. 6

    Go-like DSL for C#. Contribute to kpocza/GoSharp development by creating an account on GitHub.

    2017 · github.com · its alternatives →

  7. 7

    Coroutines, structured concurrency and CSP for Swift on macOS and Linux. - Zewo/Venice

    2015 · github.com · its alternatives →

  8. 8

    You can see some examples here: https://github.com/tsoniclang/proof-is-in-the-pudding And a hugo clone (which compiles to native code) here: https://github.com/tsoniclang/tsumo Linux and macOS for now.

    Jan 2026 · tsonic.org · its alternatives →

  9. 9

    Create and share simple web demos using TypeScript, CSS, and HTML. Prototype new ideas quickly.

    2017 · codewich.com · its alternatives →

  10. 10

    Generate Typescript types from Golang source code. Contribute to gzuidhof/tygo development by creating an account on GitHub.

    2022 · github.com · its alternatives →

  11. 11

    Made an online tool for creating diagrams with TypeScript. I quite like it for thinking about how to shape my data, even if I end up using a different language in the end.

    2023 · tsdiagram.com · its alternatives →

  12. 12GI
  13. 13

    Hi Hacker News! My name is Sagar, I’m working on a startup called Speakeasy - we’re making all APIs self-service. The platform is currently in beta, but we’re independently launching this tool which you can use to generate language-idiomatic, statically-typed TS SDKs from any public OpenAPI schemas. We hope to continue iterating on this to give devs a way to easily generate high fidelity client SDKs for all the major languages. Inspiration for this product is from past experiences struggling with OpenAPI. I was originally optimistic about using the OpenAPI tools to build out our offering,…

    2022 · easysdk.xyz · its alternatives →

  14. 14

    Hi HN - Peter from DBOS here with my co-founder Qian (qianl_cs) Today we want to share our TypeScript library for lightweight durable execution. We’ve been working on it since last year and recently released v2.0 with a ton of new features and major API overhaul. https://github.com/dbos-inc/dbos-transact-ts Durable execution means persisting the execution state of your program while it runs, so if it is ever interrupted or crashes, it automatically resumes from where it left off. Durable execution is useful for a lot of things: - Orchestrating long-running or…

    2025 · github.com · its alternatives →

  15. 15TB

    We've built a new type-stripping compiler for TypeScript source: `ts-blank-space` It's: * 5.6x faster than `tsc` due to zero-codegen * Written in TypeScript * Uses the official TypeScript parser * Accurate/preserved source locations * In used in production It uses the same novel approach that inspired Node 22.6.0's `--experimental-strip-types` functionality, released last month

    2024 · bloomberg.github.io · its alternatives →

  16. 16

    TypeScript for the Browser. Contribute to stagas/tsbro development by creating an account on GitHub.

    2025 · github.com · its alternatives →

  17. 17

    As a developer of typia, have to alive in the new typescript-go era, I made a new toolchain for tsgo. Making the ttsc, I understood that the new plugin toolchain system can dramatically reduce lint rule checking time by integrating into the typescript-go. So made `@ttsc/lint`, and its time is 600x to 1600x faster than eslint. From now on, when you compile TypeScript, lint violations would be caught in the same time. No more need to run both `tsgo` and `eslint` independently. > This repository is not v1 yet because the typescript-go has not been released yet, but if you wanna experience…

    Jul 2026 · github.com · its alternatives →

  18. 18

    :wrench: Scala datamodel transpiler. Contribute to scala-ts/scala-ts development by creating an account on GitHub.

    2016 · github.com · its alternatives →

  19. 19

    the JS/Node.JS library for encoding complex and unconventional data structures. Support for BigInts, TypedArrays, null, undefined, and Symbol. Multiple flavors available. - DO-SAY-GO/WeirdJSON

    2020 · github.com · its alternatives →

  20. 20

    The from-scratch guide to building large language models in NodeJS.

    9d ago · book.humanexperiences.io · its alternatives →

  21. 21

    Short implementation of goroutines in apple swift. Contribute to billylindeman/swiftgo development by creating an account on GitHub.

    2014 · github.com · its alternatives →

  22. 22AM

    I made an open source, MIT license Typescript library based on some of the latest research that generates prompt injection attacks. It is a super minimal/lightweight and designed to be super easy to use. Keen to hear your thoughts and please be responsible and only pen test systems where you have permission to pen test!

    2025 · prompt-injector.blueprintlab.io · its alternatives →

  23. 23

    Transform JSON strings or plain objects into JS class instances. - dipscope/TypeManager.TS

    2022 · github.com · its alternatives →

  24. 24

    Contribute to peter-woyzbun/rests development by creating an account on GitHub.

    2018 · github.com · its alternatives →

Also compare

Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →