diff --git a/docs.json b/docs.json index 7d11d858f6..a6135204d8 100644 --- a/docs.json +++ b/docs.json @@ -1339,7 +1339,7 @@ }, "docs/tools/openzeppelin-relayer", "docs/tools/openzeppelin-contracts", - "docs/tools/scaffold-stellar", + "docs/tools/stellar-scaffold", { "group": "More Developer Tools", "root": "docs/tools/developer-tools/index", diff --git a/docs/build/smart-contracts/getting-started/hello-world-frontend.mdx b/docs/build/smart-contracts/getting-started/hello-world-frontend.mdx index 43765d6134..2a0067e998 100644 --- a/docs/build/smart-contracts/getting-started/hello-world-frontend.mdx +++ b/docs/build/smart-contracts/getting-started/hello-world-frontend.mdx @@ -8,7 +8,7 @@ In the previous examples, we invoked the contracts using the Stellar CLI, and in -This example shows one way of creating a binding between a contract and a frontend. For a more comprehensive guide to Dapp frontends, see the [Build a Dapp Frontend](../../apps/dapp-frontend) documentation. For tooling that helps you start with smart contracts integrated with a working frontend environment quickly, jump to learn more about [Scaffold Stellar](#using-scaffold-stellar-to-rapidly-develop-dapps). +This example shows one way of creating a binding between a contract and a frontend. For a more comprehensive guide to Dapp frontends, see the [Build a Dapp Frontend](/docs/build/apps/dapp-frontend) documentation. For tooling that helps you start with smart contracts integrated with a working frontend environment quickly, jump to learn more about [Stellar Scaffold](#using-stellar-scaffold-to-rapidly-develop-dapps). @@ -123,52 +123,18 @@ When you start up the dev server with `npm run dev`, you will see similar output -## Using Scaffold Stellar to rapidly develop dapps +## Using Stellar Scaffold to rapidly develop dapps -[Scaffold Stellar](../../../tools/scaffold-stellar) is a developer toolkit for building decentralized applications and smart contracts on the Stellar blockchain, integrated with a frontend application. +This tutorial wired a frontend to a contract by hand so you could see each piece: generate the bindings, install the package, keep the deployed contract and the generated client in sync. That loop is the same on every project, and [Stellar Scaffold](/docs/tools/stellar-scaffold) exists to automate it — it scaffolds the frontend, regenerates type-safe TypeScript clients whenever your contracts change, and manages deployments across networks, so you spend your time on the app instead of the plumbing between contract and UI. -Getting a running set of smart contracts and a frontend can be done in just a few short steps with Scaffold Stellar. This tutorial will show you how to make a new Scaffold Stellar project. - -If you'd like to use existing smart contracts in a Scaffold Stellar project, all you need to do is copy them to the `contracts/` folder in your project root! - -1. Install the Scaffold Stellar CLI - -Since you already have the Stellar CLI installed, you have everything you need to install Scaffold Stellar: +Scaffold is a plugin on the Stellar CLI you already have installed, so you run it as `stellar scaffold`: ```sh cargo binstall stellar-scaffold-cli ``` -We recommend using [binstall](https://crates.io/crates/cargo-binstall) for faster installs, or use `cargo install --locked stellar-scaffold-cli`. Scaffold Stellar is a plugin on the Stellar CLI, meaning you'll use `stellar scaffold` from the command line. - -2. Initialize a fresh Scaffold Stellar project - -```sh -stellar scaffold init -``` - -Scaffold Stellar is a plugin on the Stellar CLI, so you'll run commands as `stellar scaffold `. `init` initializes a fresh Stellar Scaffold project at the provided path. - -3. Install Node dependencies & set up environment variables - -Make sure you already have [Node.js](https://nodejs.org/en/download/package-manager), and run: - -```sh -cd # make sure you're in your new project's directory -npm install # install frontend dependencies -cp .env.example .env # copies the example frontend environment variable file to your own copy -``` - -4. Start your app in development mode! - -```sh -npm start # or npm run dev -``` - -This command does two tasks concurrently: it runs `stellar scaffold watch --build-clients` which compiles your smart contracts, updating them as you change them, deploying them to your local Stellar chain (make sure Docker is running!), and configures all these settings via your `environments.toml` file in your root project folder. - -The second task it runs is `vite`, a popular JavaScript build tool to compile and watch your React frontend for changes. +This installs a pre-built binary with [cargo-binstall](https://github.com/cargo-bins/cargo-binstall). To build from source instead, run `cargo install --locked stellar-scaffold-cli`. -After a little compiling time, you'll be able to see your running app at [localhost:5173](http://localhost:5173)! +From there, [`stellar scaffold init`](https://stellarscaffold.org/docs/quick-start) creates a project with contracts, a frontend, and a live dev loop already wired together. Existing contracts work too: add them to the project's contracts directory and list them in its `scaffold.yml`. -Learn more about [Scaffold Stellar](../../../tools/scaffold-stellar). +For the full walkthrough, including local network setup, environment configuration, and deploying to testnet and mainnet, see the [Stellar Scaffold quick start](https://stellarscaffold.org/docs/quick-start). diff --git a/docs/build/smart-contracts/getting-started/index.mdx b/docs/build/smart-contracts/getting-started/index.mdx index d737defe24..727c8859cf 100644 --- a/docs/build/smart-contracts/getting-started/index.mdx +++ b/docs/build/smart-contracts/getting-started/index.mdx @@ -6,7 +6,7 @@ description: "Get started with smart contracts by setting up your environment, w -Start with [Scaffold Stellar](https://scaffoldstellar.org/docs/quick-start) for the fastest path to a working dApp on Stellar. Scaffold Stellar is a toolkit that bundles a CLI, contract templates, a smart contract registry, and a modern frontend for building full-stack dApps. +Start with [Stellar Scaffold](https://stellarscaffold.org/docs/quick-start) for the fastest path to a working dApp on Stellar. It scaffolds the contracts, the frontend, and the wiring between them, so you get a running full-stack app before writing any of the setup yourself. _Use this getting started guide for a lower-level tour of Stellar smart contract development from the main Stellar CLI._ diff --git a/docs/tools/cli/plugins-list.mdx b/docs/tools/cli/plugins-list.mdx index c9ab68ce45..2092c2eab0 100644 --- a/docs/tools/cli/plugins-list.mdx +++ b/docs/tools/cli/plugins-list.mdx @@ -7,10 +7,16 @@ This is a list of all plugins made available by the community, so please review ### [stellar-scaffold/cli](https://github.com/stellar-scaffold/cli) {#stellar-scaffoldcli} -The Stellar app lifecycle streamlined. `stellar scaffold` CLI: init, learn, & build ambitious apps. `stellar registry` CLI: author, publish, deploy & upgrade Wasm binaries + smart contracts (or use someone else's) +The easiest way to build Stellar apps. One command scaffolds your contracts, a modern frontend, and type-safe clients that connect the two, keeping everything in sync as you build so you don't have to. [https://github.com/stellar-scaffold/cli](https://github.com/stellar-scaffold/cli) +### [stellar-registry/cli](https://github.com/stellar-registry/cli) {#stellar-registrycli} + +Stellar CLI plugin for publishing and deploying contracts via the on-chain registry + +[https://github.com/stellar-registry/cli](https://github.com/stellar-registry/cli) + ### [lightsail-network/stellar-contract-bindings](https://github.com/lightsail-network/stellar-contract-bindings) {#lightsail-networkstellar-contract-bindings} CLI tool designed to generate language bindings for Stellar Soroban smart contracts. diff --git a/docs/tools/index.mdx b/docs/tools/index.mdx index 1f46aba919..ad3bfe3041 100644 --- a/docs/tools/index.mdx +++ b/docs/tools/index.mdx @@ -32,9 +32,9 @@ OpenZeppelin Relayer is an open source framework for submitting Stellar transact OpenZeppelin Stellar Contracts is a collection of audited contracts and utilities for Stellar. The contracts are developed by OpenZeppelin in collaboration with the Stellar community and the Stellar Development Foundation (SDF), in an effort to bring a library of high-quality and audited contracts that can be used to build applications on the Stellar network. -### [Scaffold Stellar](/docs/tools/scaffold-stellar) +### [Stellar Scaffold](/docs/tools/stellar-scaffold) -Scaffold Stellar is a developer toolkit for building decentralized applications (dApps) and smart contracts on Stellar. It provides CLI tools, reusable contract templates, a smart contract registry, and a modern frontend. +Stellar Scaffold is a full-stack toolkit for building decentralized applications (dApps) and smart contracts on Stellar, wrapping the contract-to-frontend workflow end to end. ### [More Developer Tools](/docs/tools/developer-tools) diff --git a/docs/tools/openzeppelin-contracts.mdx b/docs/tools/openzeppelin-contracts.mdx index fcc7a40071..fd6721d3ce 100644 --- a/docs/tools/openzeppelin-contracts.mdx +++ b/docs/tools/openzeppelin-contracts.mdx @@ -13,7 +13,7 @@ For latest OpenZeppelin developer docs, please visit: [https://docs.openzeppelin ## Getting started with Contract Wizard -[OpenZeppelin's Contract Wizard](https://wizard.openzeppelin.com/stellar) includes support for Stellar’s Rust-based smart contracts, making it easier for developers to generate and deploy secure, audited contracts. After you have selected your desired template and options you can download it as a single file, a Rust development package, or a [Scaffold Stellar Package](./scaffold-stellar). Try it out below or visit the wizard [here](https://wizard.openzeppelin.com/stellar). +[OpenZeppelin's Contract Wizard](https://wizard.openzeppelin.com/stellar) includes support for Stellar’s Rust-based smart contracts, making it easier for developers to generate and deploy secure, audited contracts. After you have selected your desired template and options you can download it as a single file, a Rust development package, or a [Stellar Scaffold Package](/docs/tools/stellar-scaffold). Try it out below or visit the wizard [here](https://wizard.openzeppelin.com/stellar).