Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 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
6 changes: 6 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions repos-to-monitor.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ stacks-network/clarity-wasm
stacks-sbtc/sbtc

# Hiro Systems Repositories
Comment thread
hugo-stacks marked this conversation as resolved.
Outdated
hirosystems/clarinet
hirosystems/stacks.js
hirosystems/connect
stx-labs/clarinet
stx-labs/stacks.js
stx-labs/connect
Loading