|
2 | 2 | slug: / |
3 | 3 | --- |
4 | 4 |
|
5 | | -# Sage Wallet |
| 5 | +import Tabs from '@theme/Tabs'; |
| 6 | +import TabItem from '@theme/TabItem'; |
6 | 7 |
|
7 | | -Sage is a fully featured Chia wallet built on top of the Wallet SDK. In addition to a desktop and mobile app, it provides a WalletConnect API for dApp integration, and an RPC interface for scripting. The RPC API allows you to do everything you can do with the GUI, and it can be used via HTTP or the CLI interface. |
| 8 | +# Getting Started |
8 | 9 |
|
9 | | -If you're looking for a simple API to automate actions on the wallet's behalf, you should start by using the Sage RPC. However, if you are contributing to Sage or want to build your own standalone wallet app, you may need the flexibility provided by the Wallet SDK (which comes at the cost of complexity). |
| 10 | +The goal of this website is to provide documentation for Sage and the Wallet SDK it's built with. It will cover a wide range of topics, from configuring and using Sage and its RPCs to building your own applications that utilize the Wallet SDK library to connect to the Chia blockchain. |
| 11 | + |
| 12 | +:::note |
| 13 | +If you are looking for download instructions for the app, visit the [Sage Website](https://sagewallet.net). |
| 14 | +::: |
| 15 | + |
| 16 | +## Source Installation |
| 17 | + |
| 18 | +Sage is built with [Tauri v2](https://tauri.app/), a framework for building efficient cross-platform applications that work on both desktop and mobile devices. You will need to follow the [Prerequisites](https://tauri.app/start/prerequisites/) section of the Tauri docs before proceeding with a source installation. |
| 19 | + |
| 20 | +You will also need to have both [Rustup](https://rustup.rs/) and [PNPM](https://pnpm.io/installation) installed. |
| 21 | + |
| 22 | +Clone the repo and run the following command to install the frontend dependencies: |
| 23 | + |
| 24 | +```bash |
| 25 | +pnpm install |
| 26 | +``` |
| 27 | + |
| 28 | +This is how you can compile and start the app in debug mode, for development or testing purposes: |
| 29 | + |
| 30 | +<Tabs groupId="tauri-builds"> |
| 31 | + <TabItem value="desktop" label="Desktop"> |
| 32 | + ```bash |
| 33 | + pnpm tauri dev |
| 34 | + ``` |
| 35 | + </TabItem> |
| 36 | + <TabItem value="ios" label="iOS"> |
| 37 | + ```bash |
| 38 | + pnpm tauri ios dev |
| 39 | + ``` |
| 40 | + </TabItem> |
| 41 | + <TabItem value="android" label="Android"> |
| 42 | + ```bash |
| 43 | + pnpm tauri android dev |
| 44 | + ``` |
| 45 | + </TabItem> |
| 46 | +</Tabs> |
| 47 | + |
| 48 | +:::note |
| 49 | +This will create an unoptimized build of the app, which can result in some performance issues. If needed, you can use the `--release` flag to run a release optimized version instead. |
| 50 | +::: |
| 51 | + |
| 52 | +### Production Build |
| 53 | + |
| 54 | +If you need to compile the app into a production binary, you can do that as well: |
| 55 | + |
| 56 | +<Tabs groupId="tauri-builds"> |
| 57 | + <TabItem value="desktop" label="Desktop"> |
| 58 | + ```bash |
| 59 | + pnpm tauri build |
| 60 | + ``` |
| 61 | + </TabItem> |
| 62 | + <TabItem value="ios" label="iOS"> |
| 63 | + ```bash |
| 64 | + pnpm tauri ios build |
| 65 | + ``` |
| 66 | + </TabItem> |
| 67 | + <TabItem value="android" label="Android"> |
| 68 | + ```bash |
| 69 | + pnpm tauri android build |
| 70 | + ``` |
| 71 | + </TabItem> |
| 72 | +</Tabs> |
0 commit comments