Who out there is using Scala.js? For what?

1,450 views
Skip to first unread message

Haoyi Li

unread,
Oct 31, 2015, 9:07:02 AM10/31/15
to scal...@googlegroups.com
Hey All! 

There's a new website in the works (http://ochrons.github.io/sjs2) and we want to update the list of projects using Scala.js. There's an existing list at the current http://www.scala-js.org site, but it is out of date. 

If you are using Scala.js for anything that's "public": 

- Websites
- Published chrome-plugins/apps/extensions
- Node.js backends

and are willing to let others know (i.e. not top-secret), please reply to this thread with:

- A link to the thing that you've made using Scala.js
- A short one-liner description of what it does or which parts are made with Scala.js
- *Optional* What your experience was like using Scala.js?

And we'll make sure you end up on the final website =)

Also, if you've written some library for Scala.js, whether it is Scala code or a Javascript Facade, please reply as well with a link to it! Whether it's published or not, we'll make sure it gets a place on the website!

Thanks!
-Haoyi

Justin du coeur

unread,
Oct 31, 2015, 10:50:08 AM10/31/15
to Haoyi Li, scal...@googlegroups.com
Querki is a hybrid platform that looks like a wiki and thinks like an app engine.  It runs in the cloud a la Google Docs, and makes it easy to organize, manage and collaborate on small-scale semi-structured data.  It uses Scala.js for a big and complex SPA-style user interface, designed in a responsive style to run equally well in desktop or mobile browsers.

This SPA started as a direct translation of its original UI, which was built using Play/Twirl templates and JavaScript.  Switching to Scala.js improved productivity something like tenfold, both due to the strongly-typed environment and the clean end-to-end integration with the back end, thanks to deep Autowire-based APIs.  It's now far easier to add new UI pages, and new APIs to drive them.

------

Feel free to rearrange the link usage there to suit however you're laying out the page.

As for libraries, I think all of my relevant ones are already in the draft...


--
You received this message because you are subscribed to the Google Groups "Scala.js" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scala-js+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/scala-js/CALruUQ%2BxQsCmEAnH6H1QFs63Et3ZP2K4NQVN%2BoOLrC4LL7oP0w%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Haoyi Li

unread,
Oct 31, 2015, 12:45:50 PM10/31/15
to Justin du coeur, scal...@googlegroups.com
To clarify, it's OK if the thing you're working on isn't "publicly viewable" e.g. some internal company website, as long as the enclosing entity (e.g. your company) has a website and you don't mind putting yourself out there on a list of "Built with Scala.js" projects =) That would still be useful as a demonstration that real people out there are using this thing.

Gabriel Bezerra

unread,
Oct 31, 2015, 2:43:48 PM10/31/15
to Scala.js
MF Metabolic Analyzer (www.metabolicanalyzer.com) is a system to help physicians interpret and draw conclusions from cardiopulmonary exercise tests.

It uses Scala.js in its main user interface, where complex business rules are processed much faster than if it had to do round trips to the server to get the results. Scala's type safety is essential to manage the complexity of these business rules. Scala.js gives us Scala's technical advantages and let us make a pleasingly responsive interface for our users.

---

In the libray part, it uses scala.rx extensively in the presentation part, as well as the dom extensions in scala.js.dom.

Special thanks to Haoyi Li for helping me with this testimonial.

Kindest regards,
Gabriel

Simon Ochsenreither

unread,
Oct 31, 2015, 2:47:53 PM10/31/15
to Scala.js
http://oxnrtr.de/mj is a MiniJava compiler which originally targeted amd64, but received an AST interpreter to run in the browser.
Everythhing from lexing, parsing, naming, typechecking is blazingly fast and happens on every key stroke.

chandra sekhar kode

unread,
Oct 31, 2015, 6:38:57 PM10/31/15
to Scala.js
 
Project : 

Name : not decided yet, its related to farming

Current Status : Design phase

Tech Stack : Scala.js,Sri,React,Relay,GraphQL

Modules : Web admin app , End User iOS and Android app 

its private atm,  hope it doesn't die in private mode itself :p :( 


Library : 

Sri(Scala React Interface) - build truly native cross platform(iOS,Android,Web,Desktop) apps - https://github.com/chandu0101/sri

 

Dino Fancellu

unread,
Oct 31, 2015, 7:58:21 PM10/31/15
to Scala.js

Marius Kotsbak

unread,
Nov 1, 2015, 4:33:56 AM11/1/15
to Scala.js
Wrappers:

https://github.com/mkotsbak/scalajs-qcode-decoder

Libs:
I think https://github.com/MetaStack-pl/MetaRx is missing in the current website. The content was before largely part of Widok, but it is fully usable as a standalone library with other frameworks.

Ramnivas Laddad

unread,
Nov 1, 2015, 1:29:13 PM11/1/15
to Scala.js
We are working on a learning platform using Scala.js. It is not yet public, but hoping to make it real soon. For now, https://www.youtube.com/watch?v=zZUE8_usGAg could be used as a link to our work (includes what we do and how has it worked for us).

Once the public site is up, this forum will be the first to know!

-Ramnivas

Adi Stadelmann

unread,
Nov 1, 2015, 5:04:52 PM11/1/15
to Scala.js

Site: stofftante.ch (front: scalatags, scala-rx,autowire, backend: akka, google docs)

Libs: https://github.com/spaced/scala-js-d3, facade for d3js (still alpha state, WIP using Union Types and js.Tuple)




Binh Nguyen

unread,
Nov 1, 2015, 10:53:50 PM11/1/15
to Haoyi Li, scal...@googlegroups.com

- Website: https://anduintransact.com . We are a (stealth-mode) fin-tech startup. Our team is 10+ strong and growing quickly. Everyone, (product designers and all engineers), writes scala.js code. 
- All of our frontend code are written in scala.js (20K+ LOCS and counting)
- Coming from JS/Coffee/TypeScript, I think scala.js is an absolute game changer for us. And with more and more scala libraries get ported over to scala.js, I believe this is just the start.

--

Andrea Peruffo

unread,
Nov 2, 2015, 2:26:41 AM11/2/15
to Scala.js
As expected:

with a couple of examples -> http://unicredit.github.io/akka.js-examples/

Utility to patch(aka hack) the scala.js ir -> https://github.com/unicredit/scalajs-ir-patcher

Cheers!

Erik LaBianca

unread,
Nov 2, 2015, 6:37:01 PM11/2/15
to Haoyi Li, scal...@googlegroups.com
Seventh Sense (https://theseventhsense.com) is an app that helps sales and marketing folks communicate more efficiently. It’s entirely Scala based, and the front-end is slowly but surely being taken over by Scala.js. It scalajs-react to create components, and tying them into the legacy front-end using scalajs-angular. We’re also using the cats and widok’s momentjs facade and are integrating circe to enable type-checked access to our REST API’s. 

Being able to leverage our existing build and test infrastructure for scala.js has been a great productivity and reliability boost compared to bringing in an entirely different stack such as typescript. We have a number of computation libraries that have been ported to a shared module and can be used on both the front-end and the backend, which in and of themselves have made investment worthwhile.

Thanks everyone for making all this possible!

—erik



Julie Pitt

unread,
Nov 2, 2015, 8:45:05 PM11/2/15
to Scala.js
Thing I've made using Scala.js: https://github.com/oomagnitude/dashy
one-liner: webapp for creating/viewing ad-hoc dashboards that contain various kinds of visualizations. Written entirely in scala.js with akka-http backend.

I also aspire to continue working on a D3 Scala.js library. Right now it is woefully incomplete. https://github.com/yakticus/goggles

Matthew de Detrich

unread,
Nov 3, 2015, 11:54:24 PM11/3/15
to Scala.js
Here are the 2 main projects I am currently doing

Soda-Time  (https://groups.google.com/forum/#!topic/scala-js/fDb5n8m1vcg): Port of joda-time to Scala, with the aim of providing the same library for for Javascript via Scala.js
json4s-ast (https://github.com/json4s/json4s-ast): A JSON AST (made in collaboration with many of the developers/creators of popular web framworks such as Play/Spray/http4s/Scalatra/Lift). Has a cross compiled implementation for Javascript via Scala.js

Clint Gilbert

unread,
Nov 4, 2015, 2:31:36 PM11/4/15
to scal...@googlegroups.com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

We've written a couple of internal tools with Scala.js here at Harvard
Medical School. Nothing's public-facing, but I might be able to make
the source available.

The biggest app was a proof-of-concept query tool for suggesting
courses, papers, and lab resources to researchers based on their
publication history. We used Scala.js to build the web UI for this,
including building simple FRP and widget libs.

The Scala.js experience was great!! Thanks to the compiler and better
IDE support, I was immensely more productive writing Scala for the
browser than I am with plain JS and, say, Angular.
> -- You received this message because you are subscribed to the
> Google Groups "Scala.js" group. To unsubscribe from this group and
> stop receiving emails from it, send an email to
> scala-js+u...@googlegroups.com
> <mailto:scala-js+u...@googlegroups.com>. To view this
> discussion on the web visit
> https://groups.google.com/d/msgid/scala-js/CALruUQ%2BxQsCmEAnH6H1QFs63
Et3ZP2K4NQVN%2BoOLrC4LL7oP0w%40mail.gmail.com
>
>
>
<https://groups.google.com/d/msgid/scala-js/CALruUQ%2BxQsCmEAnH6H1QFs63E
t3ZP2K4NQVN%2BoOLrC4LL7oP0w%40mail.gmail.com?utm_medium=email&utm_source
=footer>.
> For more options, visit https://groups.google.com/d/optout.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)

iQIcBAEBAgAGBQJWOlz1AAoJEBnktRkJHUgsn+UP/AyJ7OkfDqMHeOPY779jMIgx
h2XO7ZOgbxzxM7GtffNWPazxPh5UqziYq1pOuOmwmbDcU3c9U8Ss1+FvIczZELev
AdYIUVgfJaApvv5O1UM6RTs1ljDhuV73GQbN+089mR5QWcHiu0D2fr2i+eScSXLB
PGcdV3C5w/aLZ1Hv2w6Rl1vw/+taJRa4EDcSIkDmMawyvdW889z+E3CSrXJobMOk
OLGUKGrEmixOwkI0SymjKOCXDzqzjopKx1alA7WAAD7n0gO86PgW8kyEw4zbMQMq
oqDx1CpvYZYlA/v/yVu9O6B4UYcxJ/MEXoK4P4SlvvhCNQahVctDZJvVXDlbogIm
sDJpzRnnTPDJ6/rURxaSqGjN1puM06yB+Q5rz9TusTbFDn+/WGDWu0pCnXmLvytJ
O8qyRaVhDFuZPNFxWpyYe0fZgwJanlbKu3QUtWY1Q+qRarqHvY1yGNQa354N/cUD
4AXZE6Gt67Qwz52Iqs1Ksp/Ra0bJiN8QHH7BM8s7v3qfzRT4I4S4jf5aVY/7yVPj
RZbsp2NLxIquEwCEFq+DD4gKZnDmhjVos+TTFBF5PXvMeN7s4ud8vugkr/c33RMT
BJ7pBTVFuPVEO/fvuFoe1G7O1C6qBd1/n1qEDzfrVZQNPRUSxtnZbeVGsPF1AbN1
hHx3bkBv5ZdzmdTFJ9fh
=9xsb
-----END PGP SIGNATURE-----

Allan Brighton

unread,
Nov 5, 2015, 7:36:30 AM11/5/15
to Scala.js
This project is still in development (on GitHub): Interface Control Document Management.
It has a MongoDB backend and Play/Scala.js frontend.

--
Allan


 

Otto Chrons

unread,
Nov 8, 2015, 10:41:56 AM11/8/15
to Scala.js
I've updated the beta site with links and testimonials, check it out at http://ochrons.github.io/sjs2/community/

If you can come up with more testimonials, that would be great! These might end up in a carousel on the front page as well :)

- Otto
Message has been deleted

Nguyen Duc Dung

unread,
Nov 12, 2015, 12:30:35 AM11/12/15
to Scala.js
Hi,

I'm using Scala.js in frontend + backend https://tadu.vn

My website is about management: Domain DNS + Web Hosting + VPS + Email Server

It's awesome, all my team code is type safe and maintainable. Many thanks to scala.js team.

BTW, i'm using 

Zuzana Chlupáčková

unread,
Nov 16, 2015, 6:04:12 AM11/16/15
to Scala.js
Hi there, 

we are developing the Spinoco Application using Scala.js!

- A link to the thing that you've made using Scala.js

- A short one-liner description of what it does or which parts are made with Scala.js
Spinoco is a streamlined communication and task management tool, integrating various communication channels, including phone calls, text messages, chat and e-mail. 

Thanks and let me know if there are any further questions! 

All the best,
Zuzana Chlupackova

Brandon Barker

unread,
Nov 28, 2015, 3:43:33 PM11/28/15
to Scala.js
(Incomplete) facade for Mapbox.js and Leaflet.js: https://github.com/bbarker/scalajs-mapbox

Social media visualization (in development; sometimes running, sometimes not): http://margolin.cac.cornell.edu:8887/USstatemap.html The frontend(s) are written using scalajs-mapbox, and the backends are written for the JVM in Scala. Currently a closed repo, but we have plans to open it down the road. 
- Experience with Scala.js has been quite good; not too many surprises considering the ambitions of the project, and the community has been very helpful and is of moderate size. In addition, this has been some of my first Scala code, so it is certainly possible to learn Scala in the Scala.js context first (though maybe having a truly comprehensive list of differences from using Scala on the JVM would help, both in the language and idioms used while programming).

Xavier Cho

unread,
Mar 18, 2016, 5:48:53 PM3/18/16
to Scala.js


I've been developing a commercial service for infographic designer for over a year and it's going good so far:



The client side is almost completely written in Scala.js (2.7k LOC so far), except for a tiny bit of Javascript which came with the bootstrap theme I purchased.

So far, I'm very pleased with my experiences using Scala.js. The only gripe I have with the environment is the lack of integrated debugging support in IDE, but it seems it only needs a few missing pieces to improve this situation (please vote!):
These days, I'm too occupied with working on my own project to spend enough time with open source projects, but I hope it could be changed soon as I like working with Scala.js and would like to contribute to the community.

2015년 10월 31일 토요일 오후 10시 7분 2초 UTC+9, Li Haoyi 님의 말:

Graham Pople

unread,
Mar 19, 2016, 2:25:38 PM3/19/16
to Scala.js
We use it for our blog-slash-guidebook www.undiscovered.guide.

It's entirely client-side, with everything written in Scala on top of a platform-agnostic UI kit that runs identically on both the web and Android (and allows full unit testing of the UI).

I looked long and hard for the tech that would let me do that, discarding Kotlin and Clojure for various reason.  scala.js has been a near-bulletproof star and is some remarkable engineering.  The wrinkles I've had are, I think, more down to Scala itself than Scala.js.  For instance, I've had to stop using functional-programming constructs like .foreach and .map in anything vaguely performance-critical because they're quite slow on entry-level mobile JS platforms, but I see the same issues on entry-level Android platforms running the Scala directly.  I think it's down to the temporary variables created?  And the process of using sbt and IntelliJ together remains a bit of a workflow-less pain, but again, that's not a scala.js issue really.
Reply all
Reply to author
Forward
0 new messages