genType
Scala.js
Our great sponsors
genType | Scala.js | |
---|---|---|
5 | 33 | |
759 | 4,538 | |
- | 0.3% | |
0.0 | 9.0 | |
5 months ago | 5 days ago | |
OCaml | Scala | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
genType
-
ts-belt - Fast, modern, and practical utility library for FP in TypeScript / Flow / JavaScript. (Faster than ramda, rambda, remeda and lodash/fp.)
I don't really use ts-belt to be certain, but by looking at the source, it seems that it's using genType, which can generate TS types from ReScript values, and that makes interop work really well.
-
ReScript 10.0
They discuss this in their docs.
https://rescript-lang.org/docs/manual/latest/introduction#di...
Seems like a type system for Javascript, built with a differing set of opinions than Typescript.
Looks like they also offer some form of TS interop:
- From TypeScript to ReScript
-
TS Belt - fast, modern, and practical utility library for FP in TypeScript
TS Belt has been built with ReScript (and its Belt stdlib). ReScript generates highly performant JavaScript code, and with genType it also automatically generates TypeScript types. Moreover, I've added a few codemods to the building process to provide even more code optimizations and cleaner TypeScript signatures.
-
How I Switched from TypeScript to ReScript
To interoperate with TypeScript with proper type information you’ll use third-party genType. Add it as a devDependency and annotate the module export you want to generate with @genType (in previous versions you’d surround annotations with square brackets).
Scala.js
- Typescript FP Job?
-
Reconnecting with Scala. What's new?
Links: - https://dotty.epfl.ch/ - https://scala-native.org/en/stable/ - https://www.scala-js.org/ - https://typelevel.org/ - https://zio.dev/ - https://github.com/scala-native/scala-native/pull/3120 - https://github.com/lampepfl/dotty/pull/16517 - https://dotty.epfl.ch/docs/reference/experimental/index.html - https://scala-cli.virtuslab.org/ - https://scalameta.org/metals/ - https://docs.scala-lang.org/scala3/guides/migration/compatibility-intro.html - https://www.scala-lang.org/blog/2023/04/18/faster-scalajs-development-with-frontend-tooling.html - https://www.scala-lang.org/blog/2022/08/17/long-term-compatibility-plans.html
-
Rust on Espressif chips – 2023 Roadmap
> Scala choices were directly dictated by JVM
Initially, yes. But Scala has evolved beyond the JVM, with Scala.js [1] being rock-solid, and Scala Native [2] under development. Neither are truly hampered by the initial JVM roots of Scala.
> Scala gives you a better horse
Weird analogy ;)
- 10 years of Scala.js
-
Looking for an alternative to Javascript
Have you had a look at Scala.js yet? Also see "Scala.js for JavaScript developers." and "Tour of Scala."
-
Contrary to popular belief, Scala is actually a quite small and simple language
What does that have to do with language size? It also compiles to js https://www.scala-js.org/ and native https://scala-native.org/en/stable/
-
Switch JS job for Scala internship?
Here's a hybrid option: Scala.js. Yes, it is about building web applications but in Scala. You can retain the HTML/CSS/JS knowledge you have but build web applications from a typesafe and powerful language: Scala
-
Dropping Scala 2.11 support in Scala.js and Scala Native
The compiler crash in question affects another feature that we would like to merge for the benefit of all users, namely https://github.com/scala-js/scala-js/pull/4735. Keeping 2.11 means that testing and shipping that feature is much more difficult, even for 2.12+ users only. It's not just "to fix a compiler crash".
-
Windows decide whether your computer has limited or full Internet access
TS is more in the "mixed feelings" department, imho.
I would take Scala.js anytime instead. (If I would need to do front-end ever again).
-
GitHub - gbj/leptos: A full-stack, isomorphic Rust web framework leveraging fine-grained reactivity to build declarative user interfaces.
[0] https://www.scala-js.org/ [1] https://lampwww.epfl.ch/~doeraene/thesis/doeraene-thesis-2018-cross-platform-language-design.pdf
What are some alternatives?
zod - TypeScript-first schema validation with static type inference
scalajs-react - Facebook's React on Scala.JS
melange - A mixture of tooling combined to produce JavaScript from OCaml & Reason
awesome-wasm-langs - 😎 A curated list of languages that compile directly to or have their VMs in WebAssembly
Idris2 - A purely functional programming language with first class types
js-scala - js.scala: JavaScript as an embedded DSL in Scala
lwt - OCaml promises and concurrent I/O
sri
bolt - Bolt is a language with in-built data-race freedom!
React4s - Production ready React wrapper for Scala.js - composable lifecycle - no memoization, no macros, no implicits.
rescript-sublime - Official Sublime Text plugin for ReScript.
Laminar - Simple, expressive, and safe UI library for Scala.js