fossa-action VS reflex-platform

Compare fossa-action vs reflex-platform and see what are their differences.

fossa-action

The action sets up and caches the latest release of fossa-cli, infer the correct configuration from the current system state, analyze the project for a list of its dependencies, and upload the results to FOSSA. (by fossa-contrib)

reflex-platform

A curated package set and set of tools that let you build Haskell packages so they can run on a variety of platforms. reflex-platform is built on top of the nix package manager. (by reflex-frp)
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
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.
www.influxdata.com
featured
fossa-action reflex-platform
2 10
17 714
- 0.1%
9.4 7.6
7 days ago 12 days ago
TypeScript Nix
ISC License BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

fossa-action

Posts with mentions or reviews of fossa-action. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-15.
  • The Haskell job market has been growing steaily since 2008
    4 projects | news.ycombinator.com | 15 Jul 2023
    For us, there were a couple advantages. For context, I work at FOSSA (https://fossa.com/). Our core product solves software supply chain needs in enterprises (around licensing and security), and our core technology is around compiler, build, and source code analysis.

    Off the top of my head, 3 advantages stood out:

    1. First, if you're not going that far off the beaten low-level path, Haskell has incredible productivity benefits. Effect tracking has enormous benefits for testability and understandability. If you've ever been down a debugging rabbit hole shaped like "there's no way this logging call is sending that API request", then you might be pleasantly surprised to discover that you can statically guarantee that this doesn't occur in Haskell programs! Pattern matching, algebraic data types (sum types!), and typeclass derivation make it much easier to make it impossible to construct invalid representations of data. Other languages are finally picking this up, but their versions of pattern matching often have caveats for backwards-idiom-compatibility. And monads are a very powerful abstraction. It's like being able to write your own semantics for async-await (I've talked more about this before at https://lobste.rs/s/7cllte/monads_part_six_really_what_is_mo...).

    2. Haskell was a good domain fit for us. One thing we build is the FOSSA CLI (https://github.com/fossas/fossa-cli/), which runs in customer CI pipelines to analyze their builds. It's a very compiler-shaped problem: shell out to some tools, do a lot of parsing, think very hard, and then spit out a JSON blob to send back to the API. Our first version of this was written in Go. At the time of development, writing correct, testable parsers in Go was like pulling teeth. We have a relatively small headcount-to-product-surface-area ratio, and our team was running up against the overhead of rewriting traverse in Go over and over again (that's a Haskell-flavored joke, but if you've ever been annoyed at writing yet another for-loop in Go, you get it). We decided to hack out a prototype in Haskell, and it turned out to be a good fit.

    3. Lastly, the kind of people who wind up working at FOSSA and are interested in the code analysis bits tend to be the same kind of nerds who love Haskell. We had lots of people on our team who were chomping at the bit to try it, so we decided to try it out. I really can't understate how big of a productivity difference it makes when people are working with tools that they actually enjoy rather than are merely forcing themselves to use. It is night and day.

    If you want to learn more, we also did an interview with Serokell on this topic (https://serokell.io/blog/haskell-in-production-fossa), and discussed it on an episode of our engineering podcast (https://fossa.com/blog/fossa-podcast-adopting-haskell/).

  • Do you use dependency analysis and vulnerability detection tools?
    3 projects | /r/learnprogramming | 16 Jan 2023
    FOSSA scan - it is different from OWASP DependencyCheck and from Trivy scan. It is checking code for supply chain attacks on dependencies and for for license violations. For example, let's say, your project is using DependaBot tool for automatically upgrading dependencies. And you are using, I don't know, Gradle v7.6 (currently the latest version). A malicious person takes the source code of Gradle v7.6, adds some malicious stuff in it and publishes it in Maven Repository with version 7.7 . Don't know about DependaBot but some tools for sure will try to upgrade your 7.6 to 7.7 then. And often these upgrades are automated. If all the tests pass, end-to-end functionality tests pass, deployment passes, then the upgrade goes through. AND a vulnerability can be introduced to your system. FOSSA scan is for checking if the dependency supply chain is legitimate or fake. A downside is that a full scan will take many hours. So one of our teams is just testing it out, right now. It is not feasible to put a 4 hour blocker in our build pipelines. But with fast releases a vulnerability can be introduced already into the system.

reflex-platform

Posts with mentions or reviews of reflex-platform. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-15.
  • The Haskell job market has been growing steaily since 2008
    4 projects | news.ycombinator.com | 15 Jul 2023
    We used reflex-frp, so our app was a webview that worked on localhost and Android. The docs say it also works on iOS but we don't have an iPhone.

    The process was learning Functional Reactive Programming, then learning reflex-frp, then getting a contract with obsidian (creators of reflex) for one hour a week where we could ask questions.

    ( https://github.com/reflex-frp/reflex-platform )

    We had a grant requirement to create a phone client for Tahoe-LAFS, a Python application with a bunch of dependencies, including ZFEC, a forward error correction library.

    ( https://tahoe-lafs.readthedocs.io/ )

    ( https://github.com/tahoe-lafs/zfec/ )

    We needed bug for bug compatibility with the Python codebase, so I ran Tahoe on localhost and tested the Haskell client against the Python server. We used servant to build the API, since it builds both client and server side from the same description.

    ( https://hackage.haskell.org/package/servant )

  • Resurrection/modernization of an old Haskell+Haste project (boardgame Yinsh)
    8 projects | /r/haskell | 8 Feb 2023
  • reflex-platform and ghc version
    1 project | /r/reflexfrp | 9 Feb 2022
  • Exploring ideas in Haskell
    3 projects | /r/haskell | 14 Jan 2022
    The type classes do take a toll on performance, but in reflex-platform we change GHC's default flags to make the situation a lot better. It's still not ideal, but our performance winds up being OK for real applications. The most important part is that the performance scales reasonably well as the application grows. It might probably be good at some point to use backpack instead of a typeclass so that specialization can be enforced - though I'd prefer if GHC gave a way to just force specialization more effectively.
  • Any News On Haskell For Android ?
    4 projects | /r/haskell | 4 Jan 2022
    Obelisk / reflex-platform contain nix-based solutions to building Haskell code for mobile, so you might be interested in checking out how they do it (or just using them).
  • Creating a Haskell Application Using Reflex. Part 1
    3 projects | dev.to | 15 Mar 2021
    In this series of posts, we will describe how a Haskell web application can be developed using reflex-platform. reflex-platform offers reflex and reflex-dom packages. reflex package is the Haskell implementation of Functional reactive programming (FRP). reflex-dom library contains a large number of functions, classes, and types used when dealing with DOM. The packages are separated as it is possible to use the FRP approach not only for web-development. We will develop theTodo List application that allows carrying out various manipulations on the task list.
  • [JOBS] Obsidian Systems is Hiring
    5 projects | /r/haskell | 11 Mar 2021
    reflex-platform
  • Setting up Reflex with VS Code in WSL
    4 projects | /r/haskell | 8 Feb 2021
    To clarify the situation, the canonical way to develop reflex-dom projects is to start from the reflex-platform. See here: https://github.com/reflex-frp/reflex-platform/blob/develop/docs/project-development.rst
  • Nix - WSL - no C compiler provided for this platform
    2 projects | /r/haskell | 1 Feb 2021
    This might also be coming from the tests of the library (even if they can run in the browser, their tests might not). You can disabled tests using an overrides attribute in project.nix (if using reflex-stone). You can see what it should look like here : https://github.com/reflex-frp/reflex-platform/blob/develop/project/default.nix#L79. You should add this attribute at the same level where "useWarp = true;" is. This should then have lines like "diagrams = pkgs.haskell.lib.dontCheck super.diagrams;" for example if you want to disable the tests for the diagrams package.
  • Can I embed Reflex-FRP in a larger site?
    1 project | /r/haskell | 24 Jan 2021
    then you compile to js using ghcjs like this, then closure compile and gzip it to get the size way down. Then it just becomes a normal script you include wherever you need it.

What are some alternatives?

When comparing fossa-action and reflex-platform you can also consider the following projects:

haskell-jobs-statistics

obelisk - Functional reactive web and mobile applications, with batteries included.

DependencyCheck - OWASP dependency-check is a software composition analysis utility that detects publicly disclosed vulnerabilities in application dependencies.

Yampa - Functional Reactive Programming domain-specific language for efficient hybrid systems

zfec - zfec -- an efficient, portable erasure coding tool

vscode-ghc-simple - Simple GHC (Haskell) integration for VSCode

hackcell - Apecs + SDL2 roguelike

nixkell - A simple Nix-Haskell skeleton

nix - Nix, the purely functional package manager

nix-symlink - Nix utility for creating a derivation containing a single symlink.

reflex - Interactive programs without callbacks or side-effects. Functional Reactive Programming (FRP) uses composable events and time-varying values to describe interactive systems as pure functions. Just like other pure functional code, functional reactive code is easier to get right on the first try, maintain, and reuse.

nix-templates - Minimal reproducible nix flake templates