Skip to main content

Third-Party Dependencies Reference

This document provides a comprehensive listing of all third-party dependencies used across the Sequent Voting Platform (SVP) packages, including their licenses and descriptions.

Overview

The SVP monorepo contains packages written in multiple languages and using different package managers:

  • Rust packages: Managed with Cargo, using dependencies from crates.io
  • TypeScript/JavaScript packages: Managed with npm/yarn, using dependencies from npmjs.com
  • Java packages: Managed with Maven, using dependencies from Maven Central

Each package's dependencies are listed below with their version, license, and description information.

License Compliance

This documentation lists the licenses of all third-party dependencies for compliance and legal review purposes. Please ensure that all license requirements are met when distributing or deploying the Sequent Voting Platform.

ECIESEncryption

ECIESEncryption is a Java-based package providing elliptic curve encryption capabilities.

DependencyVersionLicenseDescription
com.madgag.spongycastle:core1.58.0.0Bouncy Castle LicenceSpongy Castle is a package-rename (org.bouncycastle.* to org.spongycastle.*) of Bouncy Castle intended for the Android platform. Android unfortunately ships with a stripped-down version of Bouncy Castle, which prevents easy upgrades - Spongy Castle overcomes this and provides a full, up-to-date version of the Bouncy Castle cryptographic libs.
com.madgag.spongycastle:prov1.58.0.0Bouncy Castle LicenceSpongy Castle is a package-rename (org.bouncycastle.* to org.spongycastle.*) of Bouncy Castle intended for the Android platform. Android unfortunately ships with a stripped-down version of Bouncy Castle, which prevents easy upgrades - Spongy Castle overcomes this and provides a full, up-to-date version of the Bouncy Castle cryptographic libs.

Admin Portal

The admin portal is a React-based web application for administrative functions.

DependencyVersionLicenseDescription
@apollo/client3.8.0MITA fully-featured caching GraphQL client.
@bb-tech/ra-components2.0.6MITAdditional opensource components for react-admin 4.x
@emotion/react11.14.0MIT> Simple styling in React.
@emotion/styled11.14.1MITstyled API for emotion
@fortawesome/fontawesome-svg-core^7.0.1MITThe iconic font, CSS, and SVG framework
@fortawesome/free-brands-svg-icons^7.0.1(CC-BY-4.0 AND MIT)The iconic font, CSS, and SVG framework
@fortawesome/free-solid-svg-icons^7.0.1(CC-BY-4.0 AND MIT)The iconic font, CSS, and SVG framework
@fortawesome/react-fontawesome^3.0.2MITOfficial React component for Font Awesome
@mui/material7.3.2MITMaterial UI is an open-source React component library that implements Google's Material Design. It's comprehensive and can be used in production out of the box.
@mui/utils7.3.5MITUtility functions for React components.
@mui/x-data-grid8.17.0MITThe Community plan edition of the MUI X Data Grid components.
@react-page/react-admin5.4.5MITsee the ReactAdmin example in the docs
@reduxjs/toolkit1.9.5MITThe official, opinionated, batteries-included toolset for efficient Redux development
@tinymce/tinymce-react^4.3.2MITOfficial TinyMCE React Component
@types/diff^5.0.8MITStub TypeScript definitions entry for diff, which provides its own types definitions
antd^5.21.5MITAn enterprise-class UI design language and React components implementation
apexcharts3.41.1SEE LICENSE IN LICENSEA JavaScript Chart Library
buffer^6.0.3MITNode.js Buffer API, for the browser
diff^5.1.0BSD-3-ClauseA JavaScript text diff implementation.
dompurify^3.2.4(MPL-2.0 OR Apache-2.0)DOMPurify is a DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG. It's written in JavaScript and works in all modern browsers (Safari, Opera (15+), Internet Explorer (10+), Firefox and Chrome - as well as almost anything else usin
fs-extra^11.2.0MITfs-extra contains methods that aren't included in the vanilla Node.js fs package. Such as recursive mkdir, copy, and remove.
graphql^16.8.1MITA Query Language and Runtime which can target any service.
i18next^25.5.2MITi18next internationalization framework
i18next-browser-languagedetector^8.2.0MITlanguage detector used in browser environment for i18next
idb7.1.1ISCA small wrapper that makes IndexedDB usable
intl-tel-input^24.5.0MITA JavaScript plugin for entering and validating international telephone numbers
jotai^2.6.0MIT👻 Primitive and flexible state management for React
json-edit-react^1.17.1MITReact component for editing or viewing JSON/object data
keycloak-js^26.2.1Apache-2.0A client-side JavaScript OpenID Connect library that can be used to secure web applications.
lodash^4.17.21MITLodash modular utilities.
moment-timezone^0.5.46MITParse and display moments in any timezone.
mui-image1.0.9ISCDisplay images as per the Material guidelines. For React apps using Material-UI.
process^0.11.10MITprocess information for node.js and browsers
ra-data-hasura0.6.0MITA data provider for connecting react-admin to a Hasura endpoint
react19.1.1MITReact is a JavaScript library for building user interfaces.
react-admin5.12.3MITA frontend Framework for building admin applications on top of REST services, using ES6, React and Material UI
react-admin-import-csv4.0.1MITCSV import button for react-admin
react-admin-json-view2.0.0MITJSON field and input for react-admin.
react-apexcharts1.4.1SEE LICENSE IN LICENSEReact.js wrapper for ApexCharts
react-diff-view^3.2.0MITA git diff component to consume the git unified diff output.
react-dnd16.0.1MITDrag and Drop for React
react-dnd-html5-backend16.0.1MITHTML5 backend for React DnD
react-dom19.1.1MITReact package for working with the DOM.
react-i18next15.7.3MITInternationalization for react done right. Using the i18next i18n ecosystem.
react-js-cron^5.0.1MITA React cron editor with antd inspired by jqCron
react-redux8.1.2MITOfficial React bindings for Redux
react-router7.9.5MITDeclarative routing for React
sql.js^1.13.0MITSQLite library with support for opening and writing databases, prepared statements, and more. This SQLite library is in pure javascript (compiled with emscripten).
stream-browserify^3.0.0MITthe stream module from node core for browsers
tinymce^7.0.0GPL-2.0-or-laterWeb based JavaScript HTML WYSIWYG editor control.
util^0.12.5MITNode.js's util module for all engines
uuid9.0.0MITRFC9562 UUIDs
web-vitals^5.1.0Apache-2.0Easily measure performance metrics in JavaScript

B3

B3 is a Rust-based component providing cryptographic utilities and core functionality.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
base640.22MIT OR Apache-2.0encodes and decodes base64 as bytes or utf8
bb8-postgres0.9MITFull-featured async (tokio-based) postgres connection pool (like r2d2)
borsh1.5MIT OR Apache-2.0Binary Object Representation Serializer for Hashing
cfg-if1.0MIT OR Apache-2.0A macro to ergonomically define an item depending on a large number of #[cfg] parameters. Structured like an if-else chain, the first matching branch is the item that gets emitted.
clap4.0MIT OR Apache-2.0A simple to use, efficient, and full-featured Command Line Argument Parser
config0.15MIT OR Apache-2.0Layered configuration system for Rust applications.
futures0.3MIT OR Apache-2.0An implementation of futures and streams featuring zero allocations, composability, and iterator-like interfaces.
hex0.4MIT OR Apache-2.0Encoding and decoding data into/from hexadecimal representation.
log0.4MIT OR Apache-2.0A lightweight logging facade for Rust
prost0.13Apache-2.0A Protocol Buffers implementation for the Rust Language.
rayon1.5MIT OR Apache-2.0Simple work-stealing parallelism for Rust
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
strum0.27MITHelpful macros for working with enums and strings
tokio1.38MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
tokio-postgres0.7MIT OR Apache-2.0A native, asynchronous PostgreSQL client
toml0.8MIT OR Apache-2.0A native Rust encoder and decoder of TOML-formatted files and streams. Provides implementations of the standard Serialize/Deserialize traits for TOML data to facilitate deserializing and serializing Rust structures.
tonic0.13MITA gRPC over HTTP/2 implementation focused on high performance, interoperability, and flexibility.
tracing0.1MITApplication-level tracing for Rust.
tracing-attributes0.1MITProcedural macro attributes for automatically instrumenting functions.
tracing-log0.2MITProvides compatibility between tracing and the log crate.
tracing-subscriber0.3MITUtilities for implementing and composing tracing subscribers.
tracing-tree0.4MIT OR Apache-2.0A Tracing Layer which prints a tree of spans and events.

Ballot Verifier

The ballot verifier is a React-based application for verifying ballot integrity and authenticity.

DependencyVersionLicenseDescription
@apollo/client3.8.0MITA fully-featured caching GraphQL client.
@emotion/react11.14.0MIT> Simple styling in React.
@emotion/styled11.14.1MITstyled API for emotion
@fortawesome/fontawesome-svg-core^7.0.1MITThe iconic font, CSS, and SVG framework
@fortawesome/free-brands-svg-icons^7.0.1(CC-BY-4.0 AND MIT)The iconic font, CSS, and SVG framework
@fortawesome/free-solid-svg-icons^7.0.1(CC-BY-4.0 AND MIT)The iconic font, CSS, and SVG framework
@fortawesome/react-fontawesome^3.0.2MITOfficial React component for Font Awesome
@mui/material7.3.2MITMaterial UI is an open-source React component library that implements Google's Material Design. It's comprehensive and can be used in production out of the box.
@reduxjs/toolkit1.9.5MITThe official, opinionated, batteries-included toolset for efficient Redux development
i18next^25.5.2MITi18next internationalization framework
i18next-browser-languagedetector^8.2.0MITlanguage detector used in browser environment for i18next
lodash^4.17.21MITLodash modular utilities.
mui-image1.0.9ISCDisplay images as per the Material guidelines. For React apps using Material-UI.
react19.1.1MITReact is a JavaScript library for building user interfaces.
react-dom19.1.1MITReact package for working with the DOM.
react-i18next15.7.3MITInternationalization for react done right. Using the i18next i18n ecosystem.
react-redux8.1.2MITOfficial React bindings for Redux
react-router7.9.5MITDeclarative routing for React
web-vitals^5.1.0Apache-2.0Easily measure performance metrics in JavaScript

Braid

Braid is a Rust-based component providing consensus and distributed systems functionality.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
ascii_table4.0MITPrint ASCII tables to the terminal
async-trait0.1MIT OR Apache-2.0Type erasure for async trait methods
base640.22MIT OR Apache-2.0encodes and decodes base64 as bytes or utf8
cfg-if1.0MIT OR Apache-2.0A macro to ergonomically define an item depending on a large number of #[cfg] parameters. Structured like an if-else chain, the first matching branch is the item that gets emitted.
clap4.0MIT OR Apache-2.0A simple to use, efficient, and full-featured Command Line Argument Parser
colored3.0MPL-2.0The most simple way to add colors in your terminal
crepe0.1MIT OR Apache-2.0Datalog in Rust as a procedural macro
getrandom=0.2MIT OR Apache-2.0A small cross-platform library for retrieving random data from system source
hex0.4MIT OR Apache-2.0Encoding and decoding data into/from hexadecimal representation.
log0.4MIT OR Apache-2.0A lightweight logging facade for Rust
rand0.9MIT OR Apache-2.0Random number generators and other randomness functionality.
rayon1.5MIT OR Apache-2.0Simple work-stealing parallelism for Rust
reedline-repl-rs1.0MITLibrary to generate a fancy REPL for your application based on reedline and clap
rusqlite0.32MITErgonomic wrapper for SQLite
rustc-hash2.0Apache-2.0 OR MITA speedy, non-cryptographic hashing algorithm used by rustc
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
serde_json1.0MIT OR Apache-2.0A JSON serialization file format
strum0.27MITHelpful macros for working with enums and strings
thiserror2.0MIT OR Apache-2.0derive(Error)
tikv-jemalloc-ctl0.6MIT/Apache-2.0A safe wrapper over jemalloc's control and introspection APIs
tikv-jemallocator0.6MIT/Apache-2.0A Rust allocator backed by jemalloc
tokio1.40MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
toml0.8MIT OR Apache-2.0A native Rust encoder and decoder of TOML-formatted files and streams. Provides implementations of the standard Serialize/Deserialize traits for TOML data to facilitate deserializing and serializing Rust structures.
tonic0.13MITA gRPC over HTTP/2 implementation focused on high performance, interoperability, and flexibility.
tracing0.1MITApplication-level tracing for Rust.
tracing-attributes0.1MITProcedural macro attributes for automatically instrumenting functions.
tracing-log0.2MITProvides compatibility between tracing and the log crate.
tracing-subscriber0.3MITUtilities for implementing and composing tracing subscribers.
tracing-tree0.4MIT OR Apache-2.0A Tracing Layer which prints a tree of spans and events.
tracing-wasm0.2MIT OR Apache-2.0tracing subscriber for browser WASM
wasm-bindgen=0.2MIT OR Apache-2.0Easy support for interacting between JS and Rust.
wasm-bindgen-rayon1.0Apache-2.0Adapter for using Rayon-based concurrency on the Web

E2e

E2E provides end-to-end testing capabilities and automation tools.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
clap4.0MIT OR Apache-2.0A simple to use, efficient, and full-featured Command Line Argument Parser
csv1.1Unlicense/MITFast CSV parsing with support for serde.
rand0.9MIT OR Apache-2.0Random number generators and other randomness functionality.
reqwest0.12MIT OR Apache-2.0higher level HTTP client library
rocket0.5MIT OR Apache-2.0Web framework with a focus on usability, security, extensibility, and speed.
rusqlite0.32MITErgonomic wrapper for SQLite
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
serde_json1.0MIT OR Apache-2.0A JSON serialization file format
tokio1.0MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
uuid1.5Apache-2.0 OR MITA library to generate and parse UUIDs.

Electoral Log

Electoral Log provides comprehensive logging and auditing capabilities for electoral processes.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
borsh1.5MIT OR Apache-2.0Binary Object Representation Serializer for Hashing
clap4.0MIT OR Apache-2.0A simple to use, efficient, and full-featured Command Line Argument Parser
hex0.4MIT OR Apache-2.0Encoding and decoding data into/from hexadecimal representation.
log0.4MIT OR Apache-2.0A lightweight logging facade for Rust
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
serde_json1.0MIT OR Apache-2.0A JSON serialization file format
strum0.27MITHelpful macros for working with enums and strings
strum_macros0.27MITHelpful macros for working with enums and strings
tokio1.38MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
tokio-stream0.1MITUtilities to work with Stream and tokio.
tonic0.13MITA gRPC over HTTP/2 implementation focused on high performance, interoperability, and flexibility.
tracing0.1MITApplication-level tracing for Rust.
tracing-attributes0.1MITProcedural macro attributes for automatically instrumenting functions.
tracing-log0.2MITProvides compatibility between tracing and the log crate.
tracing-subscriber0.3MITUtilities for implementing and composing tracing subscribers.
tracing-tree0.4MIT OR Apache-2.0A Tracing Layer which prints a tree of spans and events.

Harvest

Harvest provides data collection and processing capabilities.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
aws-config1.0Apache-2.0AWS SDK config and credential provider implementations.
aws-sdk-s31.11Apache-2.0AWS SDK for Amazon Simple Storage Service
base640.22MIT OR Apache-2.0encodes and decodes base64 as bytes or utf8
bstr1.11MIT OR Apache-2.0A string type that is not required to be valid UTF-8.
celery0.5Apache-2.0Rust implementation of Celery
chrono0.4MIT OR Apache-2.0Date and time library for Rust
deadpool-postgres0.14MIT OR Apache-2.0Dead simple async pool for tokio-postgres
dotenv0.15MITA dotenv implementation for Rust
either1.9MIT OR Apache-2.0The enum Either with variants Left and Right is a general purpose sum type with two cases.
graphql_client0.14Apache-2.0 OR MITTyped GraphQL requests and responses
handlebars6.1MITHandlebars templating implemented in Rust.
regex1.10MIT OR Apache-2.0An implementation of regular expressions for Rust. This implementation uses finite automata and guarantees linear time matching on all inputs.
reqwest0.12MIT OR Apache-2.0higher level HTTP client library
rocket0.5MIT OR Apache-2.0Web framework with a focus on usability, security, extensibility, and speed.
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
serde_json1.0MIT OR Apache-2.0A JSON serialization file format
serde_with3.4MIT OR Apache-2.0Custom de/serialization functions for Rust's serde
strum0.27MITHelpful macros for working with enums and strings
strum_macros0.27MITHelpful macros for working with enums and strings
tempfile3.15MIT OR Apache-2.0A library for managing temporary files and directories.
tokio1.32MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
tokio-postgres0.7MIT OR Apache-2.0A native, asynchronous PostgreSQL client
tracing0.1MITApplication-level tracing for Rust.
uuid1.5Apache-2.0 OR MITA library to generate and parse UUIDs.

Immu Board

Immu Board provides immutable board management and verification capabilities.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
clap4.0MIT OR Apache-2.0A simple to use, efficient, and full-featured Command Line Argument Parser
hex0.4MIT OR Apache-2.0Encoding and decoding data into/from hexadecimal representation.
log0.4MIT OR Apache-2.0A lightweight logging facade for Rust
tokio1.31MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
tonic0.13MITA gRPC over HTTP/2 implementation focused on high performance, interoperability, and flexibility.
tracing0.1MITApplication-level tracing for Rust.
tracing-attributes0.1MITProcedural macro attributes for automatically instrumenting functions.
tracing-log0.2MITProvides compatibility between tracing and the log crate.
tracing-subscriber0.3MITUtilities for implementing and composing tracing subscribers.
tracing-tree0.4MIT OR Apache-2.0A Tracing Layer which prints a tree of spans and events.

ImmuDB-RS

ImmuDB-RS provides Rust bindings for ImmuDB database operations.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
log0.4MIT OR Apache-2.0A lightweight logging facade for Rust
prost0.13Apache-2.0A Protocol Buffers implementation for the Rust Language.
prost-types0.13Apache-2.0Prost definitions of Protocol Buffers well known types.
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
tonic0.13MITA gRPC over HTTP/2 implementation focused on high performance, interoperability, and flexibility.
tracing0.1MITApplication-level tracing for Rust.
tracing-attributes0.1MITProcedural macro attributes for automatically instrumenting functions.
tracing-log0.2MITProvides compatibility between tracing and the log crate.
tracing-subscriber0.3MITUtilities for implementing and composing tracing subscribers.
tracing-tree0.4MIT OR Apache-2.0A Tracing Layer which prints a tree of spans and events.

Keycloak Extensions

Keycloak Extensions provides custom authentication and authorization extensions.

DependencyVersionLicenseDescription
com.sun.mail:javax.mail1.6.2N/A
jakarta.validation:jakarta.validation-api3.1.1Apache License 2.0Jakarta Validation API
org.apache.httpcomponents:httpcore4.4.16N/AApache HttpComponents Core (blocking I/O)
org.projectlombok:lombok1.18.40The MIT LicenseSpice up your java: Automatic Resource Management, automatic generation of getters, setters, equals, hashCode and toString, and more!

Orare

Orare provides procedural macro utilities and code generation capabilities.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
cfg-if1.0MIT OR Apache-2.0A macro to ergonomically define an item depending on a large number of #[cfg] parameters. Structured like an if-else chain, the first matching branch is the item that gets emitted.
clap4.5MIT OR Apache-2.0A simple to use, efficient, and full-featured Command Line Argument Parser
proc-macro21.0MIT OR Apache-2.0A substitute implementation of the compiler's proc_macro API to decouple token-based libraries from the procedural macro use case.
quote1.0MIT OR Apache-2.0Quasi-quoting macro quote!(...)
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
serde_json1.0MIT OR Apache-2.0A JSON serialization file format
syn2.0MIT OR Apache-2.0Parser for Rust source code

Sequent Core

Sequent Core provides the fundamental libraries and utilities for the Sequent Voting Platform.

DependencyVersionLicenseDescription
ammonia4.1MIT OR Apache-2.0HTML Sanitization
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
async-trait0.1MIT OR Apache-2.0Type erasure for async trait methods
aws-config1.6Apache-2.0AWS SDK config and credential provider implementations.
aws-sdk-s31.79Apache-2.0AWS SDK for Amazon Simple Storage Service
aws-sdk-sesv21.70Apache-2.0AWS SDK for Amazon Simple Email Service
aws-sdk-sns1.63Apache-2.0AWS SDK for Amazon Simple Notification Service
aws-smithy-types1.3Apache-2.0Types for smithy-rs codegen.
base640.22MIT OR Apache-2.0encodes and decodes base64 as bytes or utf8
borsh1.5MIT OR Apache-2.0Binary Object Representation Serializer for Hashing
cfg-if1.0MIT OR Apache-2.0A macro to ergonomically define an item depending on a large number of #[cfg] parameters. Structured like an if-else chain, the first matching branch is the item that gets emitted.
chrono0.4MIT OR Apache-2.0Date and time library for Rust
console_error_panic_hook0.1Apache-2.0/MITA panic hook for wasm32-unknown-unknown that logs panics to console.error
csv1.3.0Unlicense/MITFast CSV parsing with support for serde.
curve25519-dalek=4.1BSD-3-ClauseA pure-Rust implementation of group operations on ristretto255 and Curve25519
ed25519-dalek=2.1BSD-3-ClauseFast and efficient ed25519 EdDSA key generations, signing, and verification in pure Rust.
handlebars6.1MITHandlebars templating implemented in Rust.
handlebars-chrono0.2BSD-2-ClauseHandlebars helper for using chrono DateTime
headless_chrome1.0MITControl Chrome programmatically
hex0.4MIT OR Apache-2.0Encoding and decoding data into/from hexadecimal representation.
jsonwebtoken9.1MITCreate and decode JWTs in a strongly typed way.
keycloak24.0Unlicense OR MITKeycloak Admin REST API.
kuchiki0.8MIT(朽木) HTML/XML tree manipulation library
num-bigint0.4MIT/Apache-2.0Big integer implementation for Rust
num-format0.4MIT/Apache-2.0A Rust crate for producing string-representations of numbers, formatted according to international standards
num-traits0.2MIT OR Apache-2.0Numeric traits for generic mathematics
openid0.17Unlicense OR MITOpenID Connect & Discovery client library using async / await.
ordered-float5.0MITWrappers for total ordering on floats
phf0.11MITRuntime support for perfect hash function data structures
printpdf0.8MITRust library for reading and writing PDF files
quick-error2.0MIT/Apache-2.0A macro which makes error types pleasant to write.
rand=0.8MIT OR Apache-2.0Random number generators and other randomness functionality.
regex1.10MIT OR Apache-2.0An implementation of regular expressions for Rust. This implementation uses finite automata and guarantees linear time matching on all inputs.
reqwest0.12MIT OR Apache-2.0higher level HTTP client library
reqwest-middleware0.4MIT OR Apache-2.0Wrapper around reqwest to allow for client middleware chains.
reqwest-retry0.7MIT OR Apache-2.0Retry middleware for reqwest.
rocket0.5MIT OR Apache-2.0Web framework with a focus on usability, security, extensibility, and speed.
rusqlite0.32MITErgonomic wrapper for SQLite
schemars0.8MITGenerate JSON Schemas from Rust code
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
serde-wasm-bindgen0.6MITNative Serde adapter for wasm-bindgen
serde_json1.0MIT OR Apache-2.0A JSON serialization file format
serde_path_to_error0.1MIT OR Apache-2.0Path to the element that failed to deserialize
serde_urlencoded0.7MIT/Apache-2.0x-www-form-urlencoded meets Serde
sha2561.6MIT OR Apache-2.0sha256 crypto digest
strum0.27MITHelpful macros for working with enums and strings
strum_macros0.27MITHelpful macros for working with enums and strings
tempfile3.15MIT OR Apache-2.0A library for managing temporary files and directories.
time0.3MIT OR Apache-2.0Date and time library. Fully interoperable with the standard library. Mostly compatible with #![no_std].
tokio1.44MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
tokio-postgres0.7MIT OR Apache-2.0A native, asynchronous PostgreSQL client
tracing0.1MITApplication-level tracing for Rust.
tracing-log0.2MITProvides compatibility between tracing and the log crate.
tracing-subscriber0.3MITUtilities for implementing and composing tracing subscribers.
tracing-tree0.4MIT OR Apache-2.0A Tracing Layer which prints a tree of spans and events.
uuid1.5Apache-2.0 OR MITA library to generate and parse UUIDs.
warp0.3MITserve the web at warp speeds
wasm-bindgen=0.2.100MIT OR Apache-2.0Easy support for interacting between JS and Rust.
web-sys0.3MIT OR Apache-2.0Bindings for all Web APIs, a procedurally generated crate from WebIDL

Step Cli

Step CLI provides command-line interface tools for managing the Sequent Voting Platform.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
base640.22MIT OR Apache-2.0encodes and decodes base64 as bytes or utf8
chrono0.4MIT OR Apache-2.0Date and time library for Rust
clap4.5MIT OR Apache-2.0A simple to use, efficient, and full-featured Command Line Argument Parser
csv1.1Unlicense/MITFast CSV parsing with support for serde.
deadpool-postgres0.14MIT OR Apache-2.0Dead simple async pool for tokio-postgres
fake4MIT OR Apache-2.0An easy to use library and command line for generating fake data like name, number, address, lorem, dates, etc.
graphql_client0.14Apache-2.0 OR MITTyped GraphQL requests and responses
hex0.4MIT OR Apache-2.0Encoding and decoding data into/from hexadecimal representation.
rand0.9MIT OR Apache-2.0Random number generators and other randomness functionality.
rayon1.5MIT OR Apache-2.0Simple work-stealing parallelism for Rust
reqwest0.12MIT OR Apache-2.0higher level HTTP client library
ring0.17Apache-2.0 AND ISCAn experiment.
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
serde_json1.0MIT OR Apache-2.0A JSON serialization file format
sha20.10MIT OR Apache-2.0Pure Rust implementation of the SHA-2 hash function family including SHA-224, SHA-256, SHA-384, and SHA-512.
strum0.27MITHelpful macros for working with enums and strings
strum_macros0.27MITHelpful macros for working with enums and strings
tokio1.38MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
tokio-postgres0.7MIT OR Apache-2.0A native, asynchronous PostgreSQL client
uuid1.5Apache-2.0 OR MITA library to generate and parse UUIDs.

Strand

Strand provides cryptographic protocols and zero-knowledge proof capabilities.

DependencyVersionLicenseDescription
base640.22.1MIT OR Apache-2.0encodes and decodes base64 as bytes or utf8
borsh1.5MIT OR Apache-2.0Binary Object Representation Serializer for Hashing
cfg-if1.0MIT OR Apache-2.0A macro to ergonomically define an item depending on a large number of #[cfg] parameters. Structured like an if-else chain, the first matching branch is the item that gets emitted.
chacha20poly13050.10Apache-2.0 OR MITPure Rust implementation of the ChaCha20Poly1305 Authenticated Encryption with Additional Data Cipher (RFC 8439) with optional architecture-specific hardware acceleration. Also contains implementations of the XChaCha20Poly1305 extended nonce variant of ChaCha20Poly1305, and the reduced-round ChaCha8Poly1305 and ChaCha12Poly1305 lightweight variants.
curve25519-dalek=4.1BSD-3-ClauseA pure-Rust implementation of group operations on ristretto255 and Curve25519
ecdsa0.16Apache-2.0 OR MITPure Rust implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA) as specified in FIPS 186-4 (Digital Signature Standard), providing RFC6979 deterministic signatures as well as support for added entropy
ed25519-dalek=2.1BSD-3-ClauseFast and efficient ed25519 EdDSA key generations, signing, and verification in pure Rust.
generic-array=0.14MITGeneric types implementing functionality of arrays
getrandom=0.2MIT OR Apache-2.0A small cross-platform library for retrieving random data from system source
hex0.4MIT OR Apache-2.0Encoding and decoding data into/from hexadecimal representation.
malachite0.6LGPL-3.0-onlyArbitrary-precision arithmetic, with efficient algorithms partially derived from GMP, FLINT, and MPFR.
num-bigint0.4MIT/Apache-2.0Big integer implementation for Rust
num-integer0.1MIT OR Apache-2.0Integer traits and functions
num-modular=0.5Apache-2.0Implementation of efficient integer division and modular arithmetic operations with generic number types. Supports various backends including num-bigint, etc..
num-traits0.2MIT OR Apache-2.0Numeric traits for generic mathematics
openssl0.10Apache-2.0OpenSSL bindings
p3840.13Apache-2.0 OR MITPure Rust implementation of the NIST P-384 (a.k.a. secp384r1) elliptic curve as defined in SP 800-186 with support for ECDH, ECDSA signing/verification, and general purpose curve arithmetic support.
rand=0.8MIT OR Apache-2.0Random number generators and other randomness functionality.
rand_core0.9MIT OR Apache-2.0Core random number generator traits and tools for implementation.
rayon1.5MIT OR Apache-2.0Simple work-stealing parallelism for Rust
rcgen=0.14.3MIT OR Apache-2.0Rust X.509 certificate generator
rug~1.23LGPL-3.0+Arbitrary-precision integers, rational, floating-point and complex numbers based on GMP, MPFR and MPC.
rustls-pki-types=1.13.0MIT OR Apache-2.0Shared types for the rustls PKI ecosystem
serde1.0.215MIT OR Apache-2.0A generic serialization/deserialization framework
serde-wasm-bindgen0.6MITNative Serde adapter for wasm-bindgen
sha20.10MIT OR Apache-2.0Pure Rust implementation of the SHA-2 hash function family including SHA-224, SHA-256, SHA-384, and SHA-512.
sha30.10MIT OR Apache-2.0Pure Rust implementation of SHA-3, a family of Keccak-based hash functions including the SHAKE family of eXtendable-Output Functions (XOFs), as well as the accelerated variant TurboSHAKE
thiserror2.0MIT OR Apache-2.0derive(Error)
wasm-bindgen=0.2.100MIT OR Apache-2.0Easy support for interacting between JS and Rust.
wasm-bindgen-rayon1.3Apache-2.0Adapter for using Rayon-based concurrency on the Web
web-sys0.3MIT OR Apache-2.0Bindings for all Web APIs, a procedurally generated crate from WebIDL
x509-parser0.17.0MIT OR Apache-2.0Parser for the X.509 v3 format (RFC 5280 certificates)

UI Core

UI Core provides shared user interface components and utilities.

DependencyVersionLicenseDescription
html-react-parser5.2.8MITHTML to React parser.
i18next^25.5.2MITi18next internationalization framework
i18next-browser-languagedetector^8.2.0MITlanguage detector used in browser environment for i18next
moderndash4.0.0MITA Typescript-First utility library inspired by Lodash. Optimized for modern browsers.
qrcode.react3.1.0ISCReact component to generate QR codes
sanitize-html2.12.1MITClean up user-submitted HTML, preserving allowlisted elements and allowlisted attributes on a per-element basis

UI Essentials

UI Essentials provides essential user interface components and styling utilities.

DependencyVersionLicenseDescription
@fortawesome/fontawesome-svg-core^7.0.1MITThe iconic font, CSS, and SVG framework
@fortawesome/free-brands-svg-icons^7.0.1(CC-BY-4.0 AND MIT)The iconic font, CSS, and SVG framework
@fortawesome/free-solid-svg-icons^7.0.1(CC-BY-4.0 AND MIT)The iconic font, CSS, and SVG framework
@fortawesome/react-fontawesome^3.0.2MITOfficial React component for Font Awesome
i18next^25.5.2MITi18next internationalization framework
i18next-browser-languagedetector^8.2.0MITlanguage detector used in browser environment for i18next
qrcode.react3.1.0ISCReact component to generate QR codes

Velvet

Velvet provides verification and validation tools for electoral processes.

DependencyVersionLicenseDescription
anyhow1MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
clap4.4MIT OR Apache-2.0A simple to use, efficient, and full-featured Command Line Argument Parser
criterion0.5Apache-2.0 OR MITStatistics-driven micro-benchmarking library
csv1.3Unlicense/MITFast CSV parsing with support for serde.
hex0.4MIT OR Apache-2.0Encoding and decoding data into/from hexadecimal representation.
num-bigint0.4MIT/Apache-2.0Big integer implementation for Rust
ordered-float4.4.0MITWrappers for total ordering on floats
rand0.9MIT OR Apache-2.0Random number generators and other randomness functionality.
rayon1.8MIT OR Apache-2.0Simple work-stealing parallelism for Rust
rusqlite0.32MITErgonomic wrapper for SQLite
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
serde_json1.0MIT OR Apache-2.0A JSON serialization file format
strum0.27MITHelpful macros for working with enums and strings
strum_macros0.27MITHelpful macros for working with enums and strings
tempfile3.15.0MIT OR Apache-2.0A library for managing temporary files and directories.
tokio1.32MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
tracing0.1MITApplication-level tracing for Rust.
uuid1.4Apache-2.0 OR MITA library to generate and parse UUIDs.
walkdir2Unlicense/MITRecursively walk a directory.

Voting Portal

The voting portal is a React-based web application that provides the voter interface for elections.

DependencyVersionLicenseDescription
@apollo/client4.0.5MITA fully-featured caching GraphQL client.
@emotion/react11.14.0MIT> Simple styling in React.
@emotion/styled11.14.1MITstyled API for emotion
@fortawesome/fontawesome-svg-core^7.0.1MITThe iconic font, CSS, and SVG framework
@fortawesome/free-brands-svg-icons^7.0.1(CC-BY-4.0 AND MIT)The iconic font, CSS, and SVG framework
@fortawesome/free-solid-svg-icons^7.0.1(CC-BY-4.0 AND MIT)The iconic font, CSS, and SVG framework
@fortawesome/react-fontawesome^3.0.2MITOfficial React component for Font Awesome
@mui/material7.3.2MITMaterial UI is an open-source React component library that implements Google's Material Design. It's comprehensive and can be used in production out of the box.
@reduxjs/toolkit2.10.1MITThe official, opinionated, batteries-included toolset for efficient Redux development
dotenv17.2.2BSD-2-ClauseLoads environment variables from .env file
graphql16.11.0MITA Query Language and Runtime which can target any service.
i18next^25.5.2MITi18next internationalization framework
i18next-browser-languagedetector^8.2.0MITlanguage detector used in browser environment for i18next
keycloak-js^26.2.0Apache-2.0A client-side JavaScript OpenID Connect library that can be used to secure web applications.
lodash^4.17.21MITLodash modular utilities.
mui-image1.0.9ISCDisplay images as per the Material guidelines. For React apps using Material-UI.
react19.1.1MITReact is a JavaScript library for building user interfaces.
react-dom19.1.1MITReact package for working with the DOM.
react-i18next15.7.3MITInternationalization for react done right. Using the i18next i18n ecosystem.
react-redux9.2.0MITOfficial React bindings for Redux
react-router7.9.5MITDeclarative routing for React
uuid13.0.0MITRFC9562 UUIDs
web-vitals^5.1.0Apache-2.0Easily measure performance metrics in JavaScript

Windmill

Windmill provides workflow automation and task orchestration capabilities.

DependencyVersionLicenseDescription
anyhow1.0MIT OR Apache-2.0Flexible concrete Error type built on std::error::Error
async-trait0.1MIT OR Apache-2.0Type erasure for async trait methods
async_once0.2MIT OR Apache-2.0async once tool for lazy_static
aws-config1.6Apache-2.0AWS SDK config and credential provider implementations.
aws-sdk-s31.79Apache-2.0AWS SDK for Amazon Simple Storage Service
aws-sdk-secretsmanager1.66Apache-2.0AWS SDK for AWS Secrets Manager
aws-sdk-sesv21.70Apache-2.0AWS SDK for Amazon Simple Email Service
aws-sdk-sns1.63Apache-2.0AWS SDK for Amazon Simple Notification Service
aws-smithy-types1.3Apache-2.0Types for smithy-rs codegen.
base640.22MIT OR Apache-2.0encodes and decodes base64 as bytes or utf8
celeryN/AApache-2.0Rust implementation of Celery
cfg-if1.0MIT OR Apache-2.0A macro to ergonomically define an item depending on a large number of #[cfg] parameters. Structured like an if-else chain, the first matching branch is the item that gets emitted.
chrono0.4MIT OR Apache-2.0Date and time library for Rust
clap4.4MIT OR Apache-2.0A simple to use, efficient, and full-featured Command Line Argument Parser
config0.15MIT OR Apache-2.0Layered configuration system for Rust applications.
croner2.0MITFully-featured, lightweight, and efficient Rust library designed for parsing and evaluating cron patterns
csv1.3Unlicense/MITFast CSV parsing with support for serde.
deadpool0.12MIT OR Apache-2.0Dead simple async pool
deadpool-postgres0.14MIT OR Apache-2.0Dead simple async pool for tokio-postgres
dotenv0.15MITA dotenv implementation for Rust
ecies0.2.7MITElliptic Curve Integrated Encryption Scheme for secp256k1
encoding_rs0.8(Apache-2.0 OR MIT) AND BSD-3-ClauseA Gecko-oriented implementation of the Encoding Standard
encoding_rs_io0.1MIT OR Apache-2.0Streaming transcoding for encoding_rs
flate21.0MIT OR Apache-2.0DEFLATE compression and decompression exposed as Read/BufRead/Write streams. Supports miniz_oxide and multiple zlib implementations. Supports zlib, gzip, and raw deflate streams.
fs_extra1.3MITExpanding std::fs and std::io. Recursively copy folders with information about process and much more.
futures0.3MIT OR Apache-2.0An implementation of futures and streams featuring zero allocations, composability, and iterator-like interfaces.
google-calendar36.0.0MITA complete library to interact with calendar (protocol v3)
graphql_client0.14Apache-2.0 OR MITTyped GraphQL requests and responses
handlebars6.1MITHandlebars templating implemented in Rust.
hex0.4MIT OR Apache-2.0Encoding and decoding data into/from hexadecimal representation.
keycloak24.0Unlicense OR MITKeycloak Admin REST API.
lapin2.5MITAMQP client library
lazy_static1.4MIT OR Apache-2.0A macro for declaring lazily evaluated statics in Rust.
lettre0.11MITEmail client
num_cpus1.16MIT OR Apache-2.0Get the number of CPUs on a machine.
once_cell1.20MIT OR Apache-2.0Single assignment cells and lazy values.
openssl0.10Apache-2.0OpenSSL bindings
ordered-float5.0MITWrappers for total ordering on floats
postgres-openssl0.5MIT OR Apache-2.0TLS support for tokio-postgres via openssl
quick-error2.0MIT/Apache-2.0A macro which makes error types pleasant to write.
rand0.9MIT OR Apache-2.0Random number generators and other randomness functionality.
rayon1.5MIT OR Apache-2.0Simple work-stealing parallelism for Rust
regex1.10MIT OR Apache-2.0An implementation of regular expressions for Rust. This implementation uses finite automata and guarantees linear time matching on all inputs.
reqwest0.12MIT OR Apache-2.0higher level HTTP client library
ring0.17Apache-2.0 AND ISCAn experiment.
rocket0.5MIT OR Apache-2.0Web framework with a focus on usability, security, extensibility, and speed.
rusqlite0.32MITErgonomic wrapper for SQLite
rust-s30.35MITRust library for working with AWS S3 and compatible object storage APIs
rust_decimal1.36MITDecimal number implementation written in pure Rust suitable for financial and fixed-precision calculations.
rust_decimal_macros1.36MITShorthand macros to assist creating Decimal types.
rust_xlsxwriter0.90.0MIT OR Apache-2.0A Rust library for writing Excel 2007 xlsx files
rustls0.23.32Apache-2.0 OR ISC OR MITRustls is a modern TLS library written in Rust.
serde1.0MIT OR Apache-2.0A generic serialization/deserialization framework
serde_json1.0MIT OR Apache-2.0A JSON serialization file format
serde_path_to_error0.1MIT OR Apache-2.0Path to the element that failed to deserialize
sha20.10MIT OR Apache-2.0Pure Rust implementation of the SHA-2 hash function family including SHA-224, SHA-256, SHA-384, and SHA-512.
strum0.27MITHelpful macros for working with enums and strings
strum_macros0.27MITHelpful macros for working with enums and strings
tar0.4MIT OR Apache-2.0A Rust implementation of a TAR file reader and writer. This library does not currently handle compression, but it is abstract over all I/O readers and writers. Additionally, great lengths are taken to ensure that the entire contents are never required to be entirely resident in memory all at once.
tempfile3.15MIT OR Apache-2.0A library for managing temporary files and directories.
thiserror2.0MIT OR Apache-2.0derive(Error)
time0.3MIT OR Apache-2.0Date and time library. Fully interoperable with the standard library. Mostly compatible with #![no_std].
tokio1.32MITAn event-driven, non-blocking I/O platform for writing asynchronous I/O backed applications.
tokio-postgres0.7MIT OR Apache-2.0A native, asynchronous PostgreSQL client
tokio-stream0.1MITUtilities to work with Stream and tokio.
tokio-util0.7MITAdditional utilities for working with Tokio.
toml0.8MIT OR Apache-2.0A native Rust encoder and decoder of TOML-formatted files and streams. Provides implementations of the standard Serialize/Deserialize traits for TOML data to facilitate deserializing and serializing Rust structures.
tracing0.1MITApplication-level tracing for Rust.
tracing-subscriber0.3MITUtilities for implementing and composing tracing subscribers.
unicode-normalization0.1MIT OR Apache-2.0This crate provides functions for normalization of Unicode strings, including Canonical and Compatible Decomposition and Recomposition, as described in Unicode Standard Annex #15.
uuid1.5Apache-2.0 OR MITA library to generate and parse UUIDs.
walkdir2.3Unlicense/MITRecursively walk a directory.
xz20.1MIT/Apache-2.0Rust bindings to liblzma providing Read/Write streams as well as low-level in-memory encoding/decoding.
zip2.1MITLibrary to support the reading and writing of zip files.

Wrap Map Err

Wrap Map Err provides procedural macros for error handling utilities.

DependencyVersionLicenseDescription
proc-macro21.0MIT OR Apache-2.0A substitute implementation of the compiler's proc_macro API to decouple token-based libraries from the procedural macro use case.
quote1.0MIT OR Apache-2.0Quasi-quoting macro quote!(...)
syn2.0MIT OR Apache-2.0Parser for Rust source code