Skip to content

Commit

Permalink
formatting
Browse files Browse the repository at this point in the history
  • Loading branch information
briwylde08 committed Nov 14, 2023
1 parent 13e2fb9 commit 1cc0123
Showing 1 changed file with 29 additions and 26 deletions.
55 changes: 29 additions & 26 deletions docs/fundamentals-and-concepts/networks.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,16 @@ sidebar_position: 30

Stellar has three networks: the public network (Mainnet, also called Pubnet or the Public Network), the test network (Testnet), and a dev network (Futurenet). Mainnet is the main network used by applications in production. It connects to real rails and requires XLM to cover minimum balances and transaction fees. The Testnet is a smaller, free-to-use network maintained by SDF that functions like the Mainnet but doesn’t connect to real money. It has a built-in testnet XLM faucet, and it's the best place for developers to test their applications. Futurenet is a dev network you can use to test more bleeding edge features.

## Stats: Testnet versus Mainnet
## Stats: Mainnet versus Testnet versus Futurenet

### Mainnet

- Validator nodes are run by the public
- SDF offers a free [Horizon instance](https://horizon.stellar.org/) to interact with the Pubnet, or you can run your own
- You need to fund your account with XLM from another account
- Mainnet is limited to 1,000 operations per ledger and 30 smart contract transactions per ledger
- See more detailed network settings in the section on [Fees and Metering](https://soroban.stellar.org/docs/fundamentals-and-concepts/fees-and-metering) in the Soroban docs
- No publicly available RPC, see RPC service providers [here](https://soroban.stellar.org/docs/reference/rpc-list)

### Testnet

Expand All @@ -15,19 +24,13 @@ Stellar has three networks: the public network (Mainnet, also called Pubnet or t
- Testnet is limited to 100 operations per ledger
- SDF offers free RPC endpoints, more information [here](https://soroban.stellar.org/docs/reference/rpc-list#sdf-futurenet-and-testnet-only)

### Mainnet

- Validator nodes are run by the public
- SDF offers a free [Horizon instance](https://horizon.stellar.org/) to interact with the Pubnet, or you can run your own
- You need to fund your account with XLM from another account
- Mainnet is limited to 1,000 operations per ledger and 30 smart contract transactions per ledger
- No publicly available RPC, see RPC service providers [here](https://soroban.stellar.org/docs/reference/rpc-list)
### Futurenet

## Friendbot

Friendbot is a bot that funds accounts with fake XLM on Testnet or Futurenet. You can request XLM from friendbot using the Stellar Laboratory or with various SDKs. Requests to friendbot are rate limited, so use it wisely. Friendbot provides 10,000 fake XLM when funding a new Testnet account.
Friendbot is a bot that funds accounts with fake XLM on Testnet or Futurenet. You can request XLM from friendbot using the Stellar Laboratory or with various SDKs. Requests to friendbot are rate limited, so use it wisely. Friendbot provides 10,000 fake XLM when funding a new account.

If you are creating multiple Testnet accounts, fund your first account with friendbot and then use that first account to fund your subsequent accounts using the Create Account operation.
If you are creating multiple accounts, you can fund your first account with friendbot and then use that first account to fund your subsequent accounts using the Create Account operation.

## Testnet and Futurenet data reset

Expand All @@ -46,11 +49,11 @@ If you run a Testnet Horizon instance, you need to re-join and re-sync to the ne

## Test data automation

It is recommended that you have testing infrastructure that can repopulate the Testnet with useful data after a reset. This will make testing more reliable and will help you scale your testing infrastructure to a private network if you choose to do so. For example, you may want to:
It is recommended that you have testing infrastructure that can repopulate the Testnet and Futurenet with useful data after a reset. This will make testing more reliable and will help you scale your testing infrastructure to a private network if you choose to do so. For example, you may want to:

- Generate issuers of assets for testing the development of a wallet
- Generate orders on the order book (both current and historical) for testing the development of a trading client
- Recreate liquidity pools
- Generate issuers of assets for testing the development of a wallet;
- Generate orders on the order book (both current and historical) for testing the development of a trading client;
- Recreate liquidity pools.

If you maintain an application, you should think about creating a data set that is representative enough to test your primary use cases, and allow for robust testing even when Testnet is not available.

Expand All @@ -60,31 +63,31 @@ A script can automate this entire process by creating an account with friendbot

### Testnet is good for

- Creating test accounts (with funding from friendbot)
- Developing applications and exploring tutorials on Stellar without the potential to lose any assets
- Testing existing applications against new releases or release candidates of Stellar Core and Horizon
- Performing data analysis on a smaller, non-trivial data set compared to the Pubnet
- Creating test accounts (with funding from friendbot);
- Developing applications and exploring tutorials on Stellar without the potential to lose any assets;
- Testing existing applications against new releases or release candidates of Stellar Core and Horizon;
- Performing data analysis on a smaller, non-trivial data set compared to the Mainnet.

### Testnet is bad for

- Load and stress testing
- High availability test infrastructure- SDF does not guarantee Testnet availability
- Long-term storage of data on the network since the network resets periodically
- Load and stress testing;
- High availability test infrastructure- SDF does not guarantee Testnet availability;
- Long-term storage of data on the network since the network resets periodically;
- A testing infrastructure that requires more control over the test environment, such as:
- The ability to control the data reset frequency
- The need to secure private or sensitive data (before launching on the Pubnet) You can always run your own test network for use cases that don’t work well with SDF’s Testnet.
- The ability to control the data reset frequency;
- The need to secure private or sensitive data (before launching on the Mainnet). You can always run your own test network for use cases that don’t work well with SDF’s Testnet.

## Moving your project from Testnet to production

The Pubnet and Testnet each have their own unique passphrase, which is used to validate signatures on a given transaction.
The Mainnet and Testnet each have their own unique passphrase, which is used to validate signatures on a given transaction.

The current passphrases for the Stellar Pubnet and Testnet are:

**Pubnet**: 'Public Global Stellar Network ; September 2015'
**Mainnet (Pubnet)**: 'Public Global Stellar Network ; September 2015'

**Testnet**: 'Test SDF Network ; September 2015'

For applications that don’t rely on the state of the network (such as specific accounts needing to exist), you move to production by changing the network passphrase and ensuring your Horizon instance is connected to Pubnet.
For applications that don’t rely on the state of the network (such as specific accounts needing to exist), you move to production by changing the network passphrase and ensuring your Horizon instance is connected to Mainnet.

If you’ve been running a Stellar Core or Horizon instance against the Testnet and want to switch to production, changing the passphrase will require both respective databases to be completely reinitialized.

Expand Down

0 comments on commit 1cc0123

Please sign in to comment.