Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/build/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -669,7 +669,7 @@ Now that you have the basics down, here are some ways to continue your Stacks de

### Development Tools

* [**Clarinet**](https://github.com/hirosystems/clarinet): Local development environment for Clarity
* [**Clarinet**](https://github.com/stx-labs/clarinet): Local development environment for Clarity
* [**Hiro Platform**](https://platform.hiro.so/): Hosted development environment
* [**Stacks Explorer**](https://explorer.stacks.co/): View transactions and contracts on mainnet

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ So they are sent as part of the transaction when the user initiates it, meaning

Whenever you are transferring an asset (fungible or non-fungible) from one address to another, you should take advantage of post conditions.

We're going to use [Stacks.js](https://github.com/hirosystems/stacks.js/tree/master/packages/transactions#post-conditions) to familiarize ourselves with them.
We're going to use [Stacks.js](https://github.com/stx-labs/stacks.js/tree/master/packages/transactions#post-conditions) to familiarize ourselves with them.

### STX Post Condition

Expand Down
4 changes: 2 additions & 2 deletions docs/learn/network-fundamentals/accounts.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ An account is generated from a 24-word mnemonic phrase. This is often referred t
If the seed phrase is lost, access to the associated account cannot be restored. No person or organization can recover a lost seed phrase.
{% endhint %}

The easiest way to generate a new Stacks account is to use the [Stacks CLI](https://github.com/hirosystems/stacks.js/tree/master/packages/cli):
The easiest way to generate a new Stacks account is to use the [Stacks CLI](https://github.com/stx-labs/stacks.js/tree/master/packages/cli):

{% code title="Generate a new account (CLI)" %}
```bash
Expand Down Expand Up @@ -78,7 +78,7 @@ Note that a new account automatically exists for each new private key. There is
Addresses are created by generating the [RIPEMD-160 hash](https://en.wikipedia.org/wiki/RIPEMD#RIPEMD-160_hashes) of the [SHA256](https://en.bitcoinwiki.org/wiki/SHA-256) of the public key. BTC addresses are encoded with [Base58Check](https://bitcoin.it/wiki/Base58Check_encoding). For Stacks addresses, [c32check](https://github.com/stacks-network/c32check) is used. Deriving an address from a public key can be done without internet access, for instance using the c32check `c32addressDecode` method.
{% endhint %}

Alternatively to the CLI creation, the [Stacks Transactions JS](https://github.com/hirosystems/stacks.js/tree/master/packages/transactions) library can be used:
Alternatively to the CLI creation, the [Stacks Transactions JS](https://github.com/stx-labs/stacks.js/tree/master/packages/transactions) library can be used:

{% code title="Generate a private key & derive address (transactions library)" %}
```js
Expand Down
4 changes: 2 additions & 2 deletions docs/learn/network-fundamentals/network-basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,14 @@ The API will respond with the fee rate (as integer):
1
```

[The Stacks Transactions JS library](https://github.com/hirosystems/stacks.js/tree/master/packages/transactions) supports fee estimation for:
[The Stacks Transactions JS library](https://github.com/stx-labs/stacks.js/tree/master/packages/transactions) supports fee estimation for:

* token transfers (`estimateTransfer`)
* contract deploys (`estimateContractDeploy`)
* non read-only contract calls (`estimateContractFunctionCall`)

{% hint style="info" %}
For an implementation using a different language than JavaScript, please review [this reference implementation](https://github.com/hirosystems/stacks.js/blob/master/packages/transactions/src/builders.ts#L97).
For an implementation using a different language than JavaScript, please review [this reference implementation](https://github.com/stx-labs/stacks.js/blob/master/packages/transactions/src/builders.ts#L97).
{% endhint %}

### Nonces
Expand Down
2 changes: 1 addition & 1 deletion docs/operate/stacking-stx/operate-a-stacking-pool.md
Original file line number Diff line number Diff line change
Expand Up @@ -397,7 +397,7 @@ Additionally, you can choose to call the stacking functions directly from the [d

The fields and process will be the same, but the UI will differ.

Finally, you can stack using JS and the [@stacks/stacking](https://github.com/hirosystems/stacks.js/tree/main/packages/stacking) package if you prefer. Again, the functions and parameters will be the same, you will just be writing your JS code directly instead of using a UI.
Finally, you can stack using JS and the [@stacks/stacking](https://github.com/stx-labs/stacks.js/tree/main/packages/stacking) package if you prefer. Again, the functions and parameters will be the same, you will just be writing your JS code directly instead of using a UI.

If you are interested in using this method, you'll want to follow the [stacking guide](https://docs.hiro.so/stacks.js/guides/how-to-integrate-stacking) created by Hiro, and be sure to integrate the new parameters described in [Hiro's Nakamoto update doc](https://docs.hiro.so/nakamoto/stacks-js).
{% endhint %}
Expand Down
2 changes: 1 addition & 1 deletion docs/operate/stacking-stx/solo-stack.md
Original file line number Diff line number Diff line change
Expand Up @@ -335,7 +335,7 @@ Additionally, you can choose to call the stacking functions directly from the [d

The fields and process will be the same, but the UI will differ.

Finally, you can stack using JS and the [@stacks/stacking](https://github.com/hirosystems/stacks.js/tree/main/packages/stacking) package if you prefer. Again, the functions and parameters will be the same, you will just be writing your JS code directly instead of using a UI.
Finally, you can stack using JS and the [@stacks/stacking](https://github.com/stx-labs/stacks.js/tree/main/packages/stacking) package if you prefer. Again, the functions and parameters will be the same, you will just be writing your JS code directly instead of using a UI.

If you are interested in using this method, you'll want to follow the [stacking guide](https://docs.hiro.so/stacks.js/guides/how-to-integrate-stacking) created by Hiro, and be sure to integrate the new parameters described in [Hiro's Nakamoto update doc](https://docs.hiro.so/nakamoto/stacks-js).
{% endhint %}
Expand Down
10 changes: 5 additions & 5 deletions docs/reference/clarinet-js-sdk/browser-sdk-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ The browser build of the Clarinet SDK lets you interact with simnet directly fro

{% code title="Install" %}
```bash
npm install @hirosystems/clarinet-sdk-browser
npm install @stacks/clarinet-sdk-browser
```
{% endcode %}

Expand All @@ -18,7 +18,7 @@ The browser SDK implements the same API as the Node.js Clarinet SDK. All methods

{% code title="Empty session (TypeScript)" %}
```ts
import { initSimnet } from '@hirosystems/clarinet-sdk-browser';
import { initSimnet } from '@stacks/clarinet-sdk-browser';

const simnet = await initSimnet();
await simnet.initEmptySession();
Expand All @@ -35,7 +35,7 @@ For testing with an existing Clarinet project using a virtual file system:

{% code title="Using a Clarinet project (TypeScript)" %}
```ts
import { initSimnet } from '@hirosystems/clarinet-sdk-browser';
import { initSimnet } from '@stacks/clarinet-sdk-browser';

const simnet = await initSimnet();
await simnet.initSession("/project", "Clarinet.toml");
Expand All @@ -57,7 +57,7 @@ Using a Clarinet project in the browser requires setting up a virtual file syste

{% code title="Playground example (TypeScript)" %}
```ts
import { initSimnet } from '@hirosystems/clarinet-sdk-browser';
import { initSimnet } from '@stacks/clarinet-sdk-browser';
import { Cl } from '@stacks/transactions';

// Initialize simnet
Expand Down Expand Up @@ -88,7 +88,7 @@ console.log(count.result); // (ok u1)

{% code title="Browser test example (TypeScript + Vitest)" %}
```ts
import { initSimnet } from '@hirosystems/clarinet-sdk-browser';
import { initSimnet } from '@stacks/clarinet-sdk-browser';
import { expect } from 'vitest';

const simnet = await initSimnet();
Expand Down
4 changes: 2 additions & 2 deletions docs/reference/clarinet-js-sdk/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ npm init -y
Install the Clarinet JS SDK and its dependencies:

```bash
npm install @hirosystems/clarinet-sdk vitest @stacks/transactions
npm install @stacks/clarinet-sdk vitest @stacks/transactions
```

## Project structure
Expand Down Expand Up @@ -101,7 +101,7 @@ Set up Vitest so the SDK can bootstrap the testing environment:

```js
import { defineConfig } from "vitest/config";
import { vitestSetupFilePath } from "@hirosystems/clarinet-sdk/vitest";
import { vitestSetupFilePath } from "@stacks/clarinet-sdk/vitest";

export default defineConfig({
test: {
Expand Down
6 changes: 3 additions & 3 deletions docs/reference/clarinet-js-sdk/sdk-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ The Clarinet JS SDK provides a comprehensive suite of helpers for testing and in
## Installation

```bash
npm install @hirosystems/clarinet-sdk
npm install @stacks/clarinet-sdk
```

## Initialize simulated network
Expand All @@ -29,7 +29,7 @@ initSimnet(manifestPath?: string): Promise<Simnet>
```

```ts
import { initSimnet } from '@hirosystems/clarinet-sdk';
import { initSimnet } from '@stacks/clarinet-sdk';

const simnet = await initSimnet();
```
Expand Down Expand Up @@ -321,7 +321,7 @@ mineBlock(txs: Tx[]): ParsedTransactionResult[]
```

```ts
import { tx } from '@hirosystems/clarinet-sdk';
import { tx } from '@stacks/clarinet-sdk';
import { Cl } from '@stacks/transactions';

const block = simnet.mineBlock([
Expand Down
4 changes: 2 additions & 2 deletions docs/reference/clarinet/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,15 +35,15 @@ winget install clarinet
{% tab title="Source" %}
```bash
sudo apt install build-essential pkg-config libssl-dev
git clone https://github.com/hirosystems/clarinet
git clone https://github.com/stx-labs/clarinet
cd clarinet
cargo clarinet-install
```
{% endtab %}

{% tab title="Binary" %}
```bash
wget -nv https://github.com/hirosystems/clarinet/releases/latest/download/clarinet-linux-x64-glibc.tar.gz -O clarinet-linux-x64.tar.gz
wget -nv https://github.com/stx-labs/clarinet/releases/latest/download/clarinet-linux-x64-glibc.tar.gz -O clarinet-linux-x64.tar.gz
tar -xf clarinet-linux-x64.tar.gz
chmod +x ./clarinet
mv ./clarinet /usr/local/bin
Expand Down
42 changes: 12 additions & 30 deletions docs/reference/clarinet/project-structure.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,12 +45,12 @@ description = "A counter smart contract"

[contracts.traits]
path = "contracts/traits.clar"
clarity_version = 3
clarity_version = 4
epoch = "latest"

[contracts.counter]
path = "contracts/counter.clar"
clarity_version = 3
clarity_version = 4
epoch = "latest"
```

Expand Down Expand Up @@ -97,19 +97,19 @@ The **package.json** defines your testing environment and dependencies:
"author": "",
"license": "ISC",
"dependencies": {
"@hirosystems/clarinet-sdk": "^3.0.2",
"@stacks/transactions": "^7.0.6",
"@types/node": "^24.0.14",
"@stacks/clarinet-sdk": "^3.9.1",
"@stacks/transactions": "^7.2.0",
"@types/node": "^24.4.0",
"chokidar-cli": "^3.0.0",
"vitest": "^3.1.3",
"vitest-environment-clarinet": "^2.3.0"
"vitest": "^4.0.7",
"vitest-environment-clarinet": "^3.0.0"
}
}
```

| Package | Purpose |
| ----------------------------- | ------------------------------------------------------- |
| `@hirosystems/clarinet-sdk` | WebAssembly-compiled Clarinet for Node.js |
| `@stacks/clarinet-sdk` | WebAssembly-compiled Clarinet for Node.js |
| `@stacks/transactions` | Clarity value manipulation in TypeScript |
| `vitest` | Modern testing framework with native TypeScript support |
| `vitest-environment-clarinet` | Simnet bootstrapping for tests |
Expand All @@ -119,9 +119,11 @@ The **package.json** defines your testing environment and dependencies:
The **vitest.config.js** configures the testing framework:

```js

/// <reference types="vitest" />

import { defineConfig } from "vite";
import { vitestSetupFilePath, getClarinetVitestsArgv } from "@hirosystems/clarinet-sdk/vitest";
import { vitestSetupFilePath, getClarinetVitestsArgv } from "@stacks/clarinet-sdk/vitest";

export default defineConfig({
test: {
Expand Down Expand Up @@ -178,7 +180,7 @@ The **tsconfig.json** provides TypeScript support:
"noFallthroughCasesInSwitch": true
},
"include": [
"node_modules/@hirosystems/clarinet-sdk/vitest-helpers/src",
"node_modules/@stacks/clarinet-sdk/vitest-helpers/src",
"tests"
]
}
Expand Down Expand Up @@ -236,23 +238,3 @@ If you're encountering import errors in your tests, update your TypeScript confi
This configuration ensures TypeScript understands Vite's module resolution strategy and allows importing `.ts` files directly.

</details>

<details>

<summary>Mismatched versions</summary>

All contracts in your project should use the same Clarity version and epoch to avoid compatibility issues:

```toml
[contracts.token]
clarity_version = 3
epoch = "latest"

[contracts.pool]
clarity_version = 3
epoch = "latest"
```

Mismatched versions can cause deployment failures and unexpected behavior. Always upgrade all contracts together when moving to a new Clarity version.

</details>
8 changes: 4 additions & 4 deletions docs/reference/clarinet/validation-and-analysis.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,13 +76,13 @@ on: [push, pull_request]
jobs:
sanity-checks:
runs-on: ubuntu-latest
container: hirosystems/clarinet:latest
container: ghcr.io/stx-labs/clarinet:latest
steps:
- uses: actions/checkout@v4
- name: Check Clarity contracts
- name: Check Clarity contracts check
run: clarinet check --use-on-disk-deployment-plan
- name: Check formatting
run: clarinet format --check
- name: Check Clarity contracts format
run: clarinet fmt --check
```
{% endstep %}
{% endstepper %}
Expand Down
8 changes: 4 additions & 4 deletions repos-to-monitor.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ stacks-network/clarity-wasm
# sBTC Repositories
stacks-sbtc/sbtc

# Hiro Systems Repositories
hirosystems/clarinet
hirosystems/stacks.js
hirosystems/connect
# Stacks Labs Repositories
stx-labs/clarinet
stx-labs/stacks.js
stx-labs/connect
Loading