InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards. Learn more →
Top 23 Rust TypeScript Projects
-
JSX can become valid, standardized ECMAScript syntax.
But first we need a valid syntactic sugar transformation, which I propose here.
Then we need to implement it in things like babel[0] bun[1] and deno[2].
Then, frameworks would adopt it as an optional alternative implementation.
Eventually, it could gain widespread support and become standardized.
[0] https://github.com/sdegutis/vanillajsx.com/blob/main/site/un...
[1] https://github.com/oven-sh/bun/issues/13630
[2] https://github.com/denoland/deno/issues/25312
-
InfluxDB
Purpose built for real-time analytics at any scale. InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.
-
Project mention: Webpack Performance Tuning: Minimizing Build Times for Large Projects | dev.to | 2024-08-05
Babel with 49,577,061 npm downloads per week, is the most used tool for JavaScript transformation, we looked at Esbuild as a replacement but many functionalities, most notably loadable support, are missing. Another alternative SWC, written in Rust, supports all the necessary functionalities we need, and on top of that it has APIs similar to Babel, making migration much smoother than other alternatives:
-
biome
A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.
As part of these new linters, Biome emerged in the wake of the pandemic in 2020, but under the name Rome. Biome was created in mid-2023 as a fork of Rome, which is an active project supported by a growing community. Biome focuses on a broader scope, including code formatting in addition to linting. Concerning linting, language support is not yet on par with ESLint.
-
Project mention: Mako – fast, production-grade web bundler based on Rust | news.ycombinator.com | 2024-07-02
-
Project mention: Migrating from Create-React-App to Vite: Boosting Performance in Legacy Applications | dev.to | 2024-08-17
Initially, I considered using Rspack, which is touted as
-
astgrep is a very useful tool. https://ast-grep.github.io/
It's not as easy to use as grep but I think one can script it to be nearly so. It has huge power but without learning it all one can do searches that grep finds difficult. e.g. finding all the locations where a method is called and showing the parameters even if they are on multiple lines.
ultragrep - I don't love this quite as much but it does have a way to build indexes so you can do fast greps across a big codebase. It also has a text mode UI if you want it and I find that almost worthwhile.
I use ripgrep most of the time but while I like it, there is a limit to how many grep tools I can remember and I should probably cut down to using ultragrep and astgrep.
plain gnu grep itself is something one has to know when one is on an unfamiliar machine.
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
Project mention: Farm: Fast vite compatible build tool written in Rust | news.ycombinator.com | 2024-06-21
> They are aiming to provide an "all-in-one" solution with the parser, transpiler, bundler etc all in one place. Which means they have perhaps too much work to do.
They seem to re-use quite a lot. I don’t think any of them, besides ESBuild, roll their own transpiler. For example, Farm uses SWC:
https://github.com/farm-fe/farm/blob/main/crates/toolkit/Car...
-
Project mention: Stashpad launches Google Docs alternative you can use without any login | news.ycombinator.com | 2024-03-15
Take a look at https://github.com/ekzhang/rustpad
-
Project mention: dprint: Pluggable and configurable code formatting platform written in Rust | news.ycombinator.com | 2024-06-15
-
In our projects we use Moon https://moonrepo.dev/moon extensively, it supports multiple languages and quite a few features.
For me personally I like that it updates Typescript references automatically and makes docker image setup far easier.
-
A relatively new entrant, RSLint focuses on providing a zero-config linting tool. It is in early development and not ready for production. The last release is from 2022, so it’s unclear if development is still active.
-
ezno
A JavaScript compiler and TypeScript checker written in Rust with a focus on static analysis and runtime performance
Project mention: An approach to optimizing TypeScript type checking performance | news.ycombinator.com | 2024-08-14There is a new type checker called Ezno that is written in Rust and is a lot faster [1].
I have been tracking PRs like [2] that change the definitions to better be optimised by V8. But the effects are only ~30% and not the 50x that might be achievable by native.
[1]: https://github.com/kaleidawave/ezno/actions/runs/10299707325
-
Project mention: Templating in JavaScript, from Zero Dependencies on Up (2021) | news.ycombinator.com | 2024-07-14
Nice article; I do this often with small server-side rendered Deno projects. I haven't felt the need to upgrade to a "proper" templating library yet.
I noticed the article doesn't mention escaping HTML, which you probably should do if you're expecting user input. Fortunately, such a utility is included in Deno's standard library: https://jsr.io/@std/html/doc/~/escape
-
-
-
Interesting, but no support for workspaces yet: https://github.com/orogene/orogene/issues/161
-
-
note that convex is open source! https://github.com/get-convex/convex-backend
if you don't want to manage your own infrastructure, you can use our hosted product, but otherwise it's totally fine to self-host the open source binary.
(convex cofounder here)
-
There's a trpc-inspired crate called rspc https://github.com/oscartbeaumont/rspc but I think that currently it can only do rust server and typescript client. (but with plans for making a rust client IIRC)
-
chiselstrike
ChiselStrike abstracts common backends components like databases and message queues, and let you drive them from a convenient TypeScript business logic layer
-
lodestone
A free, open source server hosting tool for Minecraft and other multiplayer games (by Lodestone-Team)
-
Project mention: Ask HN: Anyone use a code to mindmap/flowchart tool? | news.ycombinator.com | 2024-02-24
Are you looking for something like a call graph?
There's pyan3 [1] which although doesn't support python 3.7+, I've still had luck with v1.0.4 which works better for me than its most recent version with python 3.11, but there can be some weird issues though depending on your code style.
A quick search also turned up crabviz [2] which has support for more languages than just python.
[1] https://github.com/Technologicat/pyan
[2] https://github.com/chanhx/crabviz
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Rust TypeScript discussion
Rust TypeScript related posts
-
Proposal for Standardized JSX
-
Deno: What we got wrong about HTTP imports
-
Templating in JavaScript, from Zero Dependencies on Up (2021)
-
Farm: Fast vite compatible build tool written in Rust
-
Combining Node.js with Async Rust for remarkable performance
-
dprint: Pluggable and configurable code formatting platform written in Rust
-
The "full-stack framework" fallacy
-
A note from our sponsor - InfluxDB
www.influxdata.com | 7 Sep 2024
Index
What are some of the best open-source TypeScript projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | deno | 93,878 |
2 | swc | 30,902 |
3 | biome | 13,811 |
4 | oxc | 10,517 |
5 | rspack | 9,064 |
6 | ast-grep | 7,059 |
7 | stc | 5,759 |
8 | farm | 4,804 |
9 | rustpad | 3,146 |
10 | dprint | 3,132 |
11 | moon | 2,808 |
12 | rslint | 2,675 |
13 | ezno | 2,401 |
14 | jsr | 2,291 |
15 | blueboat | 1,923 |
16 | deno_lint | 1,517 |
17 | orogene | 1,432 |
18 | joystream | 1,424 |
19 | convex-backend | 1,386 |
20 | rspc | 1,144 |
21 | chiselstrike | 1,068 |
22 | lodestone | 770 |
23 | crabviz | 669 |