Scala Tools

Open-source Scala projects categorized as Tools

Top 23 Scala Tool Projects

  • Gitbucket

    A Git platform powered by Scala with easy installation, high extensibility & GitHub API compatibility

    Project mention: Anyway to build my own github server at home for private use? I have hundreds of apps and want to keep them private | /r/github | 2023-04-27

    Gitbucket (https://gitbucket.github.io/)

  • dotty

    The Scala 3 compiler, also known as Dotty.

    Project mention: RustRover – A Standalone Rust IDE by JetBrains | news.ycombinator.com | 2023-09-13

    Dotty? Was it still the name later?

    http://dotty.epfl.ch/

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • sbt

    sbt, the interactive build tool

    Project mention: Declarative Gradle is a cool thing I am afraid of: Maven strikes back | dev.to | 2023-11-11

    NOTE: I won’t mention SBT and Leiningen here because, with all due respect, they are niche build tools. I also won’t discuss Kobalt for the same reason (besides, it’s no longer actively maintained). Additionally, I won’t touch upon Bazel and Buck in this context, mainly because I’m not very familiar with them. If you have insights or comments about these tools, please feel free to share them in the comments 👇

  • Metals

    Scala language server with rich IDE features 🚀

    Project mention: Reconnecting with Scala. What's new? | /r/scala | 2023-05-24

    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

  • Mill

    Your shiny new Java/Scala build tool!

    Project mention: Mill project structure | /r/scala | 2023-12-07

    I had filed a GitHub ticket, but it was closed as "out of scope". I'm not sure why the maintainers insisted on perpetuating the ambiguity, and would like to know your opinion about the following. None of the references above answer these very basic and very important questions.

  • Wartremover

    Flexible Scala code linting tool

    Project mention: Is Scala to Java the same relationship as TypeScript has with ECMAScript? | /r/scala | 2023-05-08

    By contrast, Java and ECMAScript are essentially what we might call "classical" imperative OOP languages, although ECMAScript reveals much more of its Lisp-inspired "map/filter/reduce" FP roots. IMO ESLint is essentially table stakes for working with ECMAScript, but honestly, I wouldn't stop there and would insist on working in TypeScript, including some of the tooling for ESLint specifically for TypeScript, dialing type-safety up to 11, effectively like using Wart Remover with Scala.

  • bloop

    Bloop is a build server and CLI tool to compile, test and run Scala fast from any editor or build tool. (by scalacenter)

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • Scalafix

    Refactoring and linting tool for Scala

  • Scalastyle

    scalastyle

  • Scapegoat

    Scala compiler plugin for static code analysis

  • Scoverage

    Scoverage Scala Code Coverage Core Libs

  • Scalatex

    Programmable, Typesafe Document Generation

  • Scurses

    Scurses, terminal drawing API for Scala, and Onions, a Scurses framework for easy terminal UI

  • Fastring

    Extremely fast string formatting

  • scala-trace-debug

    Macro based print debugging. Locates log statements in your IDE.

    Project mention: No Job After Graduation | /r/csMajors | 2023-05-24

    If you're not sure what you want to do maybe build your own sample site from a "starter" like https://github.com/microsoft/TypeScript-Node-Starter (this one uses TypeScript which is JavaScript with types added) or https://github.com/sahat/hackathon-starter (this one uses plain old JavaScript without types). I personally deploy to https://www.heroku.com/ because it's less complicated than deploying to AWS or Google Cloud but more businesses deploy to AWS than Heroku so learning AWS and having the AWS services you use to build and deploy your app as skills on your resume would probably make your resume look better to companies than just saying you know Heroku. If you want to copy off me (don't make and use an exact copy) my sample app deployed to Heroku has its code at https://github.com/JohnReedLOL/TypeScript-Node-Starter and the site is at https://sea-air-towers.herokuapp.com/ (I pay Heroku $7 a month for hosting). It's good to have a link to a sample app and link to the code for your sample app on your resume, just make the README.md file on GitHub look good so people can look at it and know what your app does. I have a software library with a much better looking README.md file at https://github.com/JohnReedLOL/pos

  • Scalariform

    Scala source code formatter

  • fast-string-interpolator

    Scala macro that generates ultra-fast string interpolators.

  • scalajs-benchmark

    Benchmarks: write in Scala or JS, run in your browser. Live demo:

  • Scaps

    Scala API Search

  • Time Series library

    Time Series library for Scala

  • pos

    Macro based print debugging for Scala code. Locates debug statements in your IDE. Supports logging. (by JohnReedLOL)

    Project mention: Someone please help me understand Git | /r/learnprogramming | 2023-05-29

    Make the changes to the code you just cloned in your computer. If you already have changes, you can copy-paste them into this local project whose code is being tracked by git. Then, using the GitHub terminal for Windows or the Linux/Mac terminal with the git command line command installed, from the directory of the repository you cloned (so for this example it would be ~/Home/code/pos because the name of my project is "pos") run git status to see the list of files you modified in this project. Then run git add . (with a period in the command) to add all the modified files or git add file.py to add say a file named file.py that you modified. Then run the command git commit -m "I modified the file file.py" or whatever you want to be the message documenting what change you made to your project (the -m flag specifies the commit message). A git commit is like a save point in a videogame, if you mess up you can always go back to it, reverting all your code to that point. Finally, do git push origin master to push your changes from your local git repository to the one in GitHub (in this command master refers to the name of the branch in the git repository, the master branch, and origin refers to the origin of where you got the code from, in this example it is https://github.com/JohnReedLOL/pos . A branch in git is like a version of your code and the master branch is the main version. If someone is working on version 2.0 they might make a branch named "2.0" that is a clone of the master branch, add their commits to it, and when they're done merge those commits back into the master branch.

  • Spark Tools

    Executable Apache Spark Tools: Format Converter & SQL Processor

  • scalafmt

    This repo is now a fork of --->

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-12-07.

Scala Tools related posts

Index

What are some of the best open-source Tool projects in Scala? This list will help you:

Project Stars
1 Gitbucket 9,044
2 dotty 5,549
3 sbt 4,738
4 Metals 2,000
5 Mill 1,938
6 Wartremover 1,062
7 bloop 869
8 Scalafix 797
9 Scalastyle 681
10 Scapegoat 507
11 Scoverage 419
12 Scalatex 290
13 Scurses 262
14 Fastring 124
15 scala-trace-debug 115
16 Scalariform 112
17 fast-string-interpolator 87
18 scalajs-benchmark 72
19 Scaps 37
20 Time Series library 37
21 pos 23
22 Spark Tools 11
23 scalafmt 6
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com