Ask HN: What are the best open source TypeScript projects I can learn from?

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • Appwrite - The Open Source Firebase alternative introduces iOS support
  • Sonar - Write Clean JavaScript Code. Always.
  • InfluxDB - Access the most powerful time series database as a service
  • linen.dev

    Google-searchable Slack alternative for Communities

    https://github.com/Linen-dev/linen.dev/tree/main/apps/web

    We're in the process of moving components out in to their own package so they can be shared between different clients. https://github.com/Linen-dev/linen.dev/tree/main/packages

    We use next js but is in the process of migrating the backend code to a node service

  • excalidraw

    Virtual whiteboard for sketching hand-drawn like diagrams

  • Appwrite

    Appwrite - The Open Source Firebase alternative introduces iOS support . Appwrite is an open source backend server that helps you build native iOS applications much faster with realtime APIs for authentication, databases, files storage, cloud functions and much more!

  • apollo-server

    🌍  Spec-compliant and production ready JavaScript GraphQL server that lets you develop in a schema-first way. Built for Express, Connect, Hapi, Koa, and more.

    For backend and general typescript knowledge, I’d highly recommend Apollo GraphQL: https://github.com/apollographql/apollo-server

    Check out their apollo-server and apollo-client repos. It’s a very useful codebase to be knowledgeable about. This is something you should mention in an interview as a strong positive if the company wants graphql experience.

  • mattermost-webapp

    Webapp of Mattermost server: https://github.com/mattermost/mattermost-server

    I don't know about the quality, but Mattermost is in TS: https://github.com/mattermost/mattermost-webapp

  • create-t3-app

    The best way to start a full-stack, typesafe Next.js app

    This could be a good place https://create.t3.gg (understanding all the code generation would be useful, but also you can deep dive into any one of the type safe libraries).

  • Medusa

    The open-source Shopify alternative ⚡️

    You should check out https://github.com/medusajs/medusa

    It’s an open source commerce engine built in Node w. TypeScript. The domain is fairly easy to wrap your head around and the architecture and code quality are often praised.

  • Nest

    A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications on top of TypeScript & JavaScript (ES6, ES7, ES8) 🚀

    I've found NestJs to be a very thoughtful application framework. I'd argue it demonstrates pro-level typescript coding.

    https://github.com/nestjs/nest

  • Sonar

    Write Clean JavaScript Code. Always.. Sonar helps you commit clean code every time. With over 300 unique rules to find JavaScript bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

  • awesome-typescript

    A collection of awesome TypeScript resources for client-side and server-side development. Write your awesome JavaScript in TypeScript

    This could be a good learning resource, a collection of client & server-side TypeScript projects.

    Awesome TypeScript - https://github.com/dzharii/awesome-typescript

    And here's a list of projects on GitHub tagged with the topic "TypeScript", sorted by most stars. Many build tools I see on the first page, starting with the TypeScript compiler itself - so it may not be so suitable for study purpose.

    https://github.com/topics/typescript

    You might enjoy learning from some books too.

    The TypeScript Handbook - https://www.typescriptlang.org/docs/handbook/intro.html

    TypeScript Deep Dive - https://basarat.gitbook.io/typescript/

  • Outline

    The fastest knowledge base for growing teams. Beautiful, realtime collaborative, feature packed, and markdown compatible.

  • starlette

    The little ASGI framework that shines. 🌟

  • httpx

    A next generation HTTP client for Python. 🦋

  • CPython

    The Python programming language

    A lot of the Python standard library is written in Python and a good way to see ideomatic Python code. https://github.com/python/cpython/tree/main/Lib

  • trpc

    🧙‍♀️ Move Fast and Break Nothing. End-to-end typesafe APIs made easy.

    tRPC, because you can learn a lot of type-inference tricks using generics and proxies

    https://github.com/trpc/trpc

  • share-file-systems

    Use a Windows/OSX like GUI in the browser to share files cross OS privately. No cloud, no server, no third party.

    I am working on a Node/browser OS in TypeScript to solve for decentralization/peer-to-peer relations if you want to check that out.

    https://github.com/prettydiff/share-file-systems

    Selling points:

    * No frameworks and minimal dependencies

    * The GUI loads in the browser with full state restoration in about 260ms in Chrome.

    * Full peer to peer file system access

    * Original WebSocket service support faster than the popular NPM packages (ws, socket.io)

    * Peer-to-peer end-to-end test automation in the browser that is faster and easier than the big browser test automation applications (puppeteer, playwrite)

    * I am currently working on a streaming command terminal for the browser for support for for things like vim and irssi. The current experimental terminal only supports basic command input/output

  • containerd

    An open and reliable container runtime

  • tailscale

    The easiest, most secure way to use WireGuard and 2FA.

  • codeamigo

    I definitely wouldn’t say it’s the “best” open source project but my side project https://github.com/codeamigo/codeamigo is a full stack project written in TypeScript and I’m happy to answer any questions you have about it. Full project here: https:/:codeamigo.dev

  • extension

    Taho, the community owned and operated Web3 wallet.

    I'm part of the team that maintains a digital wallet browser extension with a really clean codebase — check it out.

    https://github.com/tallyhowallet/extension

  • cal.com

    Scheduling infrastructure for absolutely everyone.

  • supabase

    The open source Firebase alternative. Follow to stay updated about our public Beta.

  • Appwrite

    Secure Backend Server for Web, Mobile & Flutter Developers 🚀 AKA the 100% open-source Firebase alternative.

  • n8n

    Free and source-available fair-code licensed workflow automation tool. Easily automate tasks across different services.

  • appsmith

    Low code project to build admin panels, internal tools, and dashboards. Integrates with 15+ databases and any API.

  • Directus

    The Modern Data Stack 🐰 — Directus is an instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.

  • budibase

    Budibase is an open-source low code platform that helps you build internal tools in minutes 🚀

  • schtate

    Functional Wrappers for State Management

    It's not popular, but I'm very proud of my ADT library I'm working on. https://github.com/schwartzworld/schtate

  • zod

    TypeScript-first schema validation with static type inference

    Depends whether you actually want to learn TypeScript or just how to consume it. More than 90% of TypeScript code I've seen is not actually taking advantage of TypeScript's static analysis capabilities to write safer more scalable code and is instead just being used as glorified autocomplete.

    If you actually want to leave, then take a look at the implementation for stuff like Zod: https://github.com/colinhacks/zod/tree/master/src/helpers

    You can do some really powerful stuff that hugely benefits your team. A decent example I stumbled across recently when I went to release my own library (that does the same thing) is https://github.com/leancodepl/ts-routes

  • ts-routes

    Strongly typed parameterized routing paths

    Depends whether you actually want to learn TypeScript or just how to consume it. More than 90% of TypeScript code I've seen is not actually taking advantage of TypeScript's static analysis capabilities to write safer more scalable code and is instead just being used as glorified autocomplete.

    If you actually want to leave, then take a look at the implementation for stuff like Zod: https://github.com/colinhacks/zod/tree/master/src/helpers

    You can do some really powerful stuff that hugely benefits your team. A decent example I stumbled across recently when I went to release my own library (that does the same thing) is https://github.com/leancodepl/ts-routes

  • Elm

    Compiler for Elm, a functional language for reliable webapps.

    How about a different approach. Instead doing more of the same, branch out in to a different language. Elm, for example. [0]

    Elm specifically will teach you lots on the static types end of things. And it will only take a weekend or so of tinkering to show improvements in your TS life.

    0 - https://elm-lang.org/

  • Sharetribe

    Sharetribe Go is a source available marketplace software, also available as a hosted, no-code SaaS product. For a headless, API-first marketplace solution, check out Sharetribe Flex: https://www.sharetribe.com/flex.

    This is such a valuable question for other languages too. I wonder if there's a repo/resource listing such projects..

    I asked a similar question about ruby some time ago, and came across one good recommendation (https://github.com/sharetribe/sharetribe), but would love to have many more. I'm also self-taught and feel I haven't read enough great ruby code!

  • Hasura

    Blazing fast, instant realtime GraphQL APIs on your DB with fine grained access control, also trigger webhooks on database events.

  • Postwoman

    👽 Open source API development ecosystem - https://hoppscotch.io

  • ab-server

    2d multiplayer action game server for Node.js based on WebSocket communication.

    This one is good, it's the backend of a game server: https://github.com/wight-airmash/ab-server

  • table

    Spreadsheet app (by fatih-erikli)

  • sketchbook

    Distraction free drafting application (by fatih-erikli)

  • taxonomy

    An open source application built using the new router, server components and everything new in Next.js 13.

    https://github.com/shadcn/taxonomy has been very useful for me learning the new Next.js 13 app/ React Server Components in Typescript.

  • protomolecule

    Toolkits to get you started with just about any web app idea (by mburst)

    I started working on a project to solve this exact issue https://github.com/mburst/protomolecule. I haven't spent too much time building out other frameworks, but the first framework is React + Express which fits what you're looking for

  • type-challenges

    Collection of TypeScript type challenges with online judge

    https://github.com/type-challenges/type-challenges

    The type challenges are a great thing to learn with. Admittedly, they're a bit intense but it's a great way to "expand your awareness".

    As a shameless self plug, I'm participating in a 140-day long project to do them all (complete with video explanations) that just started yesterday, if you wanna follow along: https://github.com/type-challenges/type-challenges/issues/21...

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts