Web packages for the Sia project and ecosystem.
User interfaces for the Sia software. The latest Sia software takes a modular approach, with separate daemons and user interfaces for renting, hosting, the explorer, and advanced wallet functionality.
- renterd - The
renterd
user interface, focused on renting functionality. - hostd - The
hostd
user interface, focused on hosting functionality. - walletd - The
walletd
user interface, includes a wallet with support for hot, cold, and hardware wallets. - explorer - The
explorer
user interface, a Sia blockchain explorer interface that powers siascan.com and zen.siascan.com.
The Sia web libraries provide developers with convenient TypeScript SDKs for using Sia core types, blockchain utilities, data fetching, daemon-specific React hooks, and components for common functionality such as Siacoin/fiat input fields, transaction lists, files, and more.
- @siafoundation/sdk - SDK for interacting directly with the Sia network from browsers and web clients.
- @siafoundation/renterd-js - SDK for interacting with
renterd
. - @siafoundation/renterd-react - React hooks for interacting with
renterd
. - @siafoundation/renterd-types - Types for
renterd
. - @siafoundation/hostd-js - SDK for interacting with
hostd
. - @siafoundation/hostd-react - React hooks for interacting with
hostd
. - @siafoundation/hostd-types - Types for
hostd
. - @siafoundation/walletd-js - SDK for interacting with
walletd
. - @siafoundation/walletd-react - React hooks for interacting with
walletd
. - @siafoundation/walletd-types - Types for
walletd
. - @siafoundation/explored-js - SDK for interacting with
explored
. - @siafoundation/explored-react - React hooks for interacting with
explored
. - @siafoundation/explored-types - Types for
explored
. - @siafoundation/design-system - React-based design system used across Sia apps and websites.
- @siafoundation/sia-central-types - Types for the Sia Central API.
- @siafoundation/sia-central-js - SDK for interacting with the Sia Central API.
- @siafoundation/sia-central-react - React hooks for interacting with the Sia Central API.
- @siafoundation/units - Methods and types for converting and displaying units.
- @siafoundation/types - Core Sia types and library methods.
- @siafoundation/react-core - Core library for building React hooks for interacting with a Sia daemon.
- go.sia.tech/web/sdk - SDK for signing transactions, encoding RPCs, computing merkle roots, and more. Compiled with WASM for use in the TypeScript SDK.
- go.sia.tech/web/ui - Library for embedding NextJS applications in Go.
- go.sia.tech/web/walletd - HTTP handler with embedded
walletd
application. - go.sia.tech/web/renterd - HTTP handler with embedded
renterd
application. - go.sia.tech/web/hostd - HTTP handler with embedded
hostd
application.
- website - The main sia.tech website with information on the Sia project and the Sia Foundation.
- assets - Powers api.sia.tech and all downloadable assets on sia.tech such as the Sia software releases.
- crons - Background tasks for api.sia.tech and sia.tech.
- @siafoundation/request - Core library for building request APIs.
- @siafoundation/react-icons - React-based icons used across Sia apps and websites.
- @siafoundation/data-sources - Data sources used for stats on the website.
- @siafoundation/fonts - Next font configuration for use across apps.
- walletd-e2e - App for testing walletd.
- renterd-e2e - App for testing renterd.
- hostd-e2e - App for testing hostd.
- explorer-e2e - App for testing explorer.
- e2e - Shared e2e testing code.
- @siafoundation/clusterd - Methods for controlling
clusterd
in e2e testing. - @siafoundation/walletd-mock -
walletd
data and API mock library for testing. - @siafoundation/sia-central-mock - Sia Central data and API mock library for testing.
- The Sia Web codebase is managed with the Nx build system. Either install
nx
globally vianpm install -g nx
or usenpx
to invoke commands. - This repo follows conventional commits. Please use prefixes such as
feat:
,fix:
,docs:
, etc. when committing. - Install dependencies with
npm install
. - Run
nx test <app-name>
to run tests for a specific app. - Run
npx changeset
to create a changeset for your changes. This will prompt you for a description of your changes and will create a changeset file in the.changeset
directory.
Join the Sia Discord to discuss Sia projects, codebases, and more!