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

B4​

B4 is the Rust bulletin board: the server binary and the client library the other components use to publish to and read from the board.

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