Skip to content

Packages and Projects

Quick Start

To install a package, you must sure that you have created the Package.juvix file. You can run juvix init to get a template Package.juvix file. A more detailed description on the usage of Package.juvix can be found in How to setup a Juvix project. For now, one example is provided below. Put the following in your Package.juvix file within the directory of your project.

Package.juvix
module Package;

import PackageDescription.V2 open;

package : Package := defaultPackage@{
dependencies :=
[
  github "anoma" "juvix-stdlib" "v0.9.0"
]
};
  • anoma/juvix-stdlib


    Shipped with Juvix, the standard library provides a set of useful functions and types for writing Juvix programs.

    Add the following to your Package.juvix file in the dependencies field:

    github "anoma" "juvix-stdlib" "v0.9.0"
    
  • anoma/juvix-test


    A unit testing framework for Juvix programs.

    Add the following to your Package.juvix file in the dependencies field:

    github "anoma" "juvix-test" "v0.18.0"
    
  • anoma/juvix-quickcheck


    This package provides property-based testing for the Juvix programming language inspired by the popular Haskell library, QuickCheck.

    • Automated testing: Generate random test cases to validate properties of Juvix code.

    Add the following to your Package.juvix file in the dependencies field:

    github "anoma" "juvix-quickcheck" "v0.18.0"
    

Projects using Juvix

  • Anoma App Library


    A library for intent-centric application development.

    Add the following to your Package.juvix file in the dependencies field:

    github "anoma" "anoma-app-patterns" "v0.5.0"
    

Please let us know if you are using Juvix in your project. Opening an issue or a pull request to add it to this list.

Check out other examples of Juvix programs in the examples/milestone.