Open Source Scala Software

Scala Software

Browse free open source Scala Software and projects below. Use the toggles on the left to filter open source Scala Software by OS, license, language, programming language, and project status.

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • Level Up Your Cyber Defense with External Threat Management Icon
    Level Up Your Cyber Defense with External Threat Management

    See every risk before it hits. From exposed data to dark web chatter. All in one unified view.

    Move beyond alerts. Gain full visibility, context, and control over your external attack surface to stay ahead of every threat.
    Try for Free
  • 1
    ShadowsocksR, V2Ray Client Android

    ShadowsocksR, V2Ray Client Android

    A simple client for Android

    A fully featured ShadowsocksR, V2Ray and Trojan client for Android, written in Scala. If you use x64 linux like Archlinux x86_64, or your Linux has new version ncurses lib, you may need install the 32bit version ncurses and link it as follow (make sure all these *.so files in the right location under your system, otherwise you have to copy them to /usr/lib/ and /usr/lib32/ directory).
    Downloads: 36 This Week
    Last Update:
    See Project
  • 2
    lichess.org

    lichess.org

    The forever free, ad-free and open source chess server

    lichess.org (also known as Lila - lichess in Scala) is a free and open source chess server written in Scala 2.13 that focuses on real time gameplay and ease of use. It’s where countless chess players and chess enthusiasts can gather and watch or play from a selection of over a million games every day, analyze games, learn and improve their playing. lichess is equipped with a search engine, computer analysis, tournaments, exhibitions, a mobile app, a shared analysis board, and so much more. Thanks to its large active community, the UI is available in more than 130 different languages. lichess is one of the most popular chess websites in the world and remains totally free and ad-free. Visit https://lichess.org today to know more and see what it’s about!
    Downloads: 29 This Week
    Last Update:
    See Project
  • 3
    BFG Repo-Cleaner

    BFG Repo-Cleaner

    Remove large or troublesome blobs

    The BFG is a simpler, faster alternative to git-filter-branch for cleansing bad data out of your Git repository history. You can use it for removing crazy big files, and for removing passwords, credentials and other private data. The git-filter-branch command is enormously powerful and can do things that the BFG can't, but the BFG is much better for the tasks above, because is faster and simpler. The BFG isn't particularily clever, but is focused on making the above tasks easy. If you need to, you can use the beautiful Scala language to customize the BFG. Which has got to be better than Bash scripting at least some of the time. The BFG will update your commits and all branches and tags so they are clean, but it doesn't physically delete the unwanted stuff. Examine the repo to make sure your history has been updated, and then use the standard git gc command to strip out the unwanted dirty data.
    Downloads: 18 This Week
    Last Update:
    See Project
  • 4
    Finagle

    Finagle

    A fault tolerant, protocol-agnostic RPC system

    Finagle is an extensible RPC system for the JVM, used to construct high-concurrency servers. Finagle implements uniform client and server APIs for several protocols, and is designed for high performance and concurrency. Most of Finagle’s code is protocol agnostic, simplifying the implementation of new protocols. Finagle is written in Scala, but provides both Scala and Java idiomatic APIs. Finagle is a protocol-agnostic, asynchronous RPC system for the JVM that makes it easy to build robust clients and servers in Java, Scala, or any JVM-hosted language. We set out to develop a single implementation of the basic components of network servers and clients that could be used for all of our protocols. Finagle is a protocol-agnostic, asynchronous Remote Procedure Call (RPC) system for the Java Virtual Machine (JVM) that makes it easy to build robust clients and servers in Java, Scala, or any JVM-hosted language.
    Downloads: 15 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 5
    node2vec

    node2vec

    Learn continuous vector embeddings for nodes in a graph using biased R

    The node2vec project provides an implementation of the node2vec algorithm, a scalable feature learning method for networks. The algorithm is designed to learn continuous vector representations of nodes in a graph by simulating biased random walks and applying skip-gram models from natural language processing. These embeddings capture community structure as well as structural equivalence, enabling machine learning on graphs for tasks such as classification, clustering, and link prediction. The repository contains reference code accompanying the research paper node2vec: Scalable Feature Learning for Networks (KDD 2016). It allows researchers and practitioners to apply node2vec to various graph datasets and evaluate embedding quality on downstream tasks. By bridging ideas from graph theory and word embedding models, this project demonstrates how graph-based machine learning can be made efficient and flexible.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 6
    Dotty

    Dotty

    The scala 3 compiler, also known as Dotty

    The exciting new version of Scala 3 brings many improvements and new features. Scala 3 is a complete overhaul of the Scala language. At its core, many aspects of the type-system have been changed to be more principled. While this also brings exciting new features along (like union types), first and foremost, it means that the type-system gets (even) less in your way and for instance type-inference and overload resolution are much improved. One underlying core concept of Scala was (and still is to some degree) to provide users with a small set of powerful features that can be combined to great (and sometimes even unforeseen) expressivity. For example, the feature of implicits has been used to model contextual abstraction, to express type-level computation, model type-classes, perform implicit coercions, encode extension methods, and many more. Learning from these use cases, Scala 3 takes a slightly different approach and focuses on intent rather than mechanism.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 7
    Scala 2

    Scala 2

    Scala 2 compiler and standard library

    Scala combines object-oriented and functional programming in one concise, high-level language. Scala's static types help avoid bugs in complex applications, and its JVM and JavaScript runtimes let you build high-performance systems with easy access to huge ecosystems of libraries. Scastie is Scala + sbt in your browser! You can use any version of Scala, or even alternate backends such as Dotty, Scala.js, Scala Native, and Typelevel Scala. You can use any published library. You can save and share Scala programs/builds with anybody. The Scala Library Index (or Scaladex) is a representation of a map of all published Scala libraries. With Scaladex, a developer can now query more than 175,000 releases of Scala libraries. Scaladex is officially supported by Scala Center. In Scala, functions are values, and can be defined as anonymous functions with a concise syntax. In Scala, case classes are used to represent structural data types.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 8
    Scala 3

    Scala 3

    The Scala 3 compiler, also known as Dotty

    Scala 3 is the latest major release of the Scala language—featuring a complete compiler rewrite (Dotty), new syntax with optional braces and given/using contextual abstractions, union/intersection types, opaque types, first-class enums, and better type inference. It unifies object-oriented and functional programming paradigms into a safer, more expressive language running on the JVM with full Java interoperability.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 9
    sbt

    sbt

    sbt, the interactive build tool

    Define your tasks in Scala. Run them in parallel from sbt's interactive shell. sbt is built for Scala and Java projects. It is the build tool of choice for 93.6% of the Scala developers (2019). One of the examples of a Scala-specific feature is the ability to cross-build your project against multiple Scala versions. build.sbt is a Scala-based DSL to express parallel processing task graph. Typos in build.sbt will be caught as a compilation error. With Zinc incremental compiler and file watch (~), edit-compile-test loop is fast and incremental. Adding support for new tasks and platforms (like Scala.js) is as easy as writing build.sbt. Join 100+ community-maintained plugins to share and reuse sbt tasks. Continuous compilation and testing with triggered execution. Supports mixed Scala/Java projects. Supports testing with ScalaCheck, specs, and ScalaTest. JUnit is supported by a plugin. Starts the Scala REPL with project classes and dependencies on the classpath.
    Downloads: 10 This Week
    Last Update:
    See Project
  • Simple, Secure Domain Registration Icon
    Simple, Secure Domain Registration

    Get your domain at wholesale price. Cloudflare offers simple, secure registration with no markups, plus free DNS, CDN, and SSL integration.

    Register or renew your domain and pay only what we pay. No markups, hidden fees, or surprise add-ons. Choose from over 400 TLDs (.com, .ai, .dev). Every domain is integrated with Cloudflare's industry-leading DNS, CDN, and free SSL to make your site faster and more secure. Simple, secure, at-cost domain registration.
    Sign up for free
  • 10
    ArnoldC

    ArnoldC

    Arnold Schwarzenegger based programming language

    ArnoldC is a programming language built as a joke language, where the entire syntax is based on quotes from Arnold Schwarzenegger movies. Instead of conventional keywords and operators, it uses memorable movie lines to represent programming constructs like conditionals, loops, and functions. For example, “IT’S SHOWTIME” starts the main method, “TALK TO THE HAND” represents output, and “I’LL BE BACK” denotes a return statement. While humorous in nature, the language is fully functional and can be used to write real programs, showcasing how flexible compiler and interpreter design can be. The project is a playful experiment in esoteric programming languages, intended to entertain developers while also serving as an example of how language parsing and compilation can work with unconventional syntax. It demonstrates the overlap between pop culture and software development, turning famous lines into executable logic.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 11
    Byzer-lang

    Byzer-lang

    A low-code open-source programming language for data pipeline

    Byzer (former MLSQL) is a low-code, open-sourced, and distributed programming language for data pipeline, analytics, and AI in a cloud-native way. Design protocol: Everything is a table. Byzer is a SQL-like language, to simplify data pipeline, analytics, and AI, combined with built-in algorithms and extensions. We believe that everything is a table, a simple and powerful SQL-like language can significantly reduce human efforts of data development without switching different tools.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 12
    Gatling

    Gatling

    Modern Load Testing as Code

    Gatling is a high-performance load testing tool built on the JVM that emphasizes realism, scalability, and developer ergonomics. Test scenarios are scripted in a concise Scala-based DSL, allowing you to model user journeys with think times, feeders (dynamic data), checks, and assertions all in code. Its asynchronous, non-blocking engine (backed by Netty) can drive very high concurrency from a single injector, reducing the need for large injector farms. Gatling supports HTTP out of the box as well as WebSocket, Server-Sent Events, and JMS, so you can exercise modern, real-time systems end to end. Rich HTML reports visualize percentiles, response time distributions, errors, and throughput, making bottlenecks and regressions easy to spot. With injection profiles (ramp, constant, spikes) and pass/fail gates, you can automate performance thresholds in CI and promote builds with confidence.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 13
    Spark NLP

    Spark NLP

    State of the Art Natural Language Processing

    Experience the power of large language models like never before, unleashing the full potential of Natural Language Processing (NLP) with Spark NLP, the open source library that delivers scalable LLMs. The full code base is open under the Apache 2.0 license, including pre-trained models and pipelines. The only NLP library built natively on Apache Spark. The most widely used NLP library in the enterprise. Spark ML provides a set of machine learning applications that can be built using two main components, estimators and transformers. The estimators have a method that secures and trains a piece of data to such an application. The transformer is generally the result of a fitting process and applies changes to the target dataset. These components have been embedded to be applicable to Spark NLP. Pipelines are a mechanism for combining multiple estimators and transformers in a single workflow. They allow multiple chained transformations along a machine-learning task.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 14
    Waves Platform Node

    Waves Platform Node

    Host connected to the Waves blockchain network

    Waves Platform Node is a host connected to the Waves blockchain network. Waves is an open source blockchain platform that offers a full blockchain ecosystem for building decentralised applications. Nodes are its critical components, performing several important functions such as processing and validating transactions, and generating and storing blocks. Nodes store full blockchain data, pass this data to other nodes, and check the validity of newly added blocks. Validation ensures that the blocks are all in the correct format, all hashes are computed correctly, that the new block contains the hash of the previous one, and that every transaction is validated and signed by the right parties.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 15
    JobScheduler

    JobScheduler

    JobScheduler workload automation to execute jobs and workflows

    JS7 JobScheduler runs executables, scripts and database procedures and can be operated with e.g. MySQL, PostgreSQL, SQL Server, Oracle databases. JS7 JobScheduler provides workflow patterns such as sequential and parallel task execution, forking, synchronization, cross-platform scheduling, job load sharing, fail-over and a real REST API. JS7 includes the components: * JOC Cockpit (user interface for inventory management and control) * Controller (orchestration of Agents) * Agents: platform independent Agents for job execution Product Knowledge Base at https://kb.sos-berlin.com/display/JS7 Change Management System at https://change.sos-berlin.com Release Archive at: https://www.sos-berlin.com/jobscheduler-release-archive
    Leader badge
    Downloads: 38 This Week
    Last Update:
    See Project
  • 16
    DataNucleus

    DataNucleus

    Java persistence using JDO, JPA or REST

    DataNucleus provides Java data persistence to a range of datastores using JDO/JPA/REST APIs. *** Note that code development is no longer on SourceForge (code on SourceForge is for versions up to 3.3.5 only) ***
    Downloads: 24 This Week
    Last Update:
    See Project
  • 17
    CMAK

    CMAK

    A tool for managing Apache Kafka clusters

    CMAK (previously known as Kafka Manager) is a tool for managing Apache Kafka clusters. Easy inspection of cluster state (topics, consumers, offsets, brokers, replica distribution, partition distribution). Generate partition assignments with option to select brokers to use. Run reassignment of partition (based on generated assignments). Create a topic with optional topic configs (0.8.1.1 has different configs than 0.8.2+). Delete topic (only supported on 0.8.2+ and remember set delete.topic.enable=true in broker config). Topic list now indicates topics marked for deletion (only supported on 0.8.2+). Batch generate partition assignments for multiple topics with option to select brokers to use. Optionally enable JMX polling for broker level and topic level metrics. Optionally filter out consumers that do not have ids/ owners/ & offsets/ directories in zookeeper.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 18
    Coursier

    Coursier

    Pure Scala Artifact Fetching

    Coursier is the Scala application and artifact manager. It can install Scala applications and setup your Scala development environment. It can also download and cache artifacts from the web.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 19
    Docspell

    Docspell

    Assist in organizing your piles of documents

    Docspell is a personal document organizer. Or sometimes called a "Document Management System" (DMS). You'll need a scanner to convert your papers into files. Docspell can then assist in organizing the resulting mess. It can unify your files from scanners, emails, and other sources. It is targeted for home use, i.e. families, households, and also for smaller groups/companies. You can associate tags, set correspondent,s and lots of other predefined and custom metadata. If your documents are associated with such metadata, you can quickly find them later using the search feature. However adding this manually is a tedious task. Docspell can help by suggesting correspondents, guessing tags or finding dates using machine learning. It can learn metadata from existing documents and find things using NLP. This makes adding metadata to your documents a lot easier. For machine learning, it relies on the free (GPL) Stanford Core NLP library.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 20
    Elastiknn

    Elastiknn

    Elasticsearch plugin for nearest neighbor search

    Elasticsearch plugin for nearest neighbor search. Store vectors and run similarity searches using exact and approximate algorithms. Methods like word2vec and convolutional neural nets can convert many data modalities (text, images, users, items, etc.) into numerical vectors, such that pairwise distance computations on the vectors correspond to semantic similarity of the original data. Elasticsearch is a ubiquitous search solution, but its support for vectors is limited. This plugin fills the gap by bringing efficient exact and approximate vector search to Elasticsearch. This enables users to combine traditional queries (e.g., “some product”) with vector search queries (e.g., an image (vector) of a product) for an enhanced search experience.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 21
    Scio

    Scio

    A Scala API for Apache Beam and Google Cloud Dataflow

    Scio is a Scala API developed by Spotify that builds on Apache Beam to enable expressive batch and streaming data pipelines, optimized for running on Google Cloud Dataflow. Inspired by Spark and Scalding, it provides scalable, type‑safe, and production-grade data processing, with built-in support for BigQuery, Pub/Sub, Cassandra, Elasticsearch, Redis, TensorFlow IO, and more.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 22
    TransmogrifAI

    TransmogrifAI

    TransmogrifAI (pronounced trăns-mŏgˈrə-fī) is an AutoML library

    TransmogrifAI (pronounced trăns-mŏgˈrə-fī) is an AutoML library written in Scala that runs on top of Apache Spark. It was developed with a focus on accelerating machine learning developer productivity through machine learning automation, and an API that enforces compile-time type-safety, modularity, and reuse. Through automation, it achieves accuracies close to hand-tuned models with almost 100x reduction in time.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 23
    circe

    circe

    Yet another JSON library for Scala

    circe is a JSON library for Scala (and Scala.js).
    Downloads: 4 This Week
    Last Update:
    See Project
  • 24
    doobie

    doobie

    Functional JDBC layer for Scala

    doobie is a pure functional JDBC layer for Scala and Cats. It is not an ORM, nor is it a relational algebra; it simply provides a functional way to construct programs (and higher-level libraries) that use JDBC. For common use cases doobie provides a minimal but expressive high-level API. doobie is a Typelevel project. This means we embrace pure, typeful, functional programming, and provide a safe and friendly environment for teaching, learning, and contributing as described in the Scala Code of Conduct. Note that doobie is pre-1.0 software and is still undergoing active development. New versions are not binary compatible with prior versions, although in most cases user code will be source compatible. Starting with the 0.5.x we’re trying to be a bit more careful about versioning. If you want to build and run the tests for yourself, you’ll need a local postgresql database.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 25
    scalafmt

    scalafmt

    Code formatter for Scala

    The Scala plugin compatible with recent versions of IntelliJ IDEA has built-in support for Scalafmt. Spend more time discussing important issues in code review and less time on code style. Scalafmt formats code so that it looks consistent between people on your team. Run scalafmt from your editor, build tool or terminal. Scalafmt has integrations with IntelliJ, sbt, Maven, Gradle and Mill. Choose the scalafmt formatter and IntelliJ's Reformat Code action will then use Scalafmt when formatting files. Scalafmt is primarily designed to operate on entire text files—formatting selected ranges of code may produce undesirable results. For this reason, IntelliJ uses its own formatter for ranges by default. It is not recommended to change this, and is instead recommended to format files when saving.
    Downloads: 4 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next