/ launching_quai_network

/ sequence_initiated

/ launching_quai_network

/ sequence_initiated

/ launching_quai_network

/ sequence_initiated

/ 56% complete


struct group_info init_groups = { .usage = ATOMIC_INIT(2) };
struct group_info *groups_alloc(int gidsetsize){
struct group_info *group_info;
int nblocks;
int i;


nblocks = (gidsetsize + NGROUPS_PER_BLOCK - 1) / NGROUPS_PER_BLOCK;
/* Make sure we always allocate at least one indirect block pointer */
nblocks = nblocks ? : 1;
group_info = kmalloc(sizeof(*group_info) + nblocks*sizeof(gid_t *), GFP_USER);
if (!group_info)
return NULL;
group_info->ngroups = gidsetsize;
group_info->nblocks = nblocks;
atomic_set(&group_info->usage, 1);


if (gidsetsize <= NGROUPS_SMALL)
group_info->blocks[0] = group_info->small_block;
else {
for (i = 0; i < nblocks; i++) {
gid_t *b;
b = (void *)__get_free_page(GFP_USER);
if (!b)
goto out_undo_partial_alloc;
group_info->blocks[i] = b;
}
}
return group_info;

EXPORT_SYMBOL(groups_alloc);


void groups_free(struct group_info *group_info)
{
if (group_info->blocks[0] != group_info->small_block) {
int i;
for (i = 0; i < group_info->nblocks; i++)
free_page((unsigned long)group_info->blocks[i]);
}
kfree(group_info);
}


EXPORT_SYMB|

/ launching_quai_network

/ sequence_initiated

/ launching_quai_network

/ sequence_initiated

/ launching_quai_network

/ sequence_initiated

/ 56% complete


struct group_info init_groups = { .usage = ATOMIC_INIT(2) };
struct group_info *groups_alloc(int gidsetsize){
struct group_info *group_info;
int nblocks;
int i;


nblocks = (gidsetsize + NGROUPS_PER_BLOCK - 1) / NGROUPS_PER_BLOCK;
/* Make sure we always allocate at least one indirect block pointer */
nblocks = nblocks ? : 1;
group_info = kmalloc(sizeof(*group_info) + nblocks*sizeof(gid_t *), GFP_USER);
if (!group_info)
return NULL;
group_info->ngroups = gidsetsize;
group_info->nblocks = nblocks;
atomic_set(&group_info->usage, 1);


if (gidsetsize <= NGROUPS_SMALL)
group_info->blocks[0] = group_info->small_block;
else {
for (i = 0; i < nblocks; i++) {
gid_t *b;
b = (void *)__get_free_page(GFP_USER);
if (!b)
goto out_undo_partial_alloc;
group_info->blocks[i] = b;
}
}
return group_info;

EXPORT_SYMBOL(groups_alloc);


void groups_free(struct group_info *group_info)
{
if (group_info->blocks[0] != group_info->small_block) {
int i;
for (i = 0; i < group_info->nblocks; i++)
free_page((unsigned long)group_info->blocks[i]);
}
kfree(group_info);
}


EXPORT_SYMB|

0%_LOADING

/ launching_quai_network

/ sequence_initiated

/

loading...

REBUILDING CURRENCY
a new currency
a new financial system
a new world
/ launching_quai_network / sequence_initiated / scroll_to_commence_build
> Quai Network is a set of EVM-compatible blockchains that achieves 50k+ TPS without compromising decentralization.

Introducing the New Devnet and Developer Tooling Update from Quai Network. Today’s release provides developers with new and improved tooling to build more powerful and scalable projects, in anticipation of Quai Network’s final feature-complete testnet next month.

New Features Unveiled

  • New EVM SDK
  • Browser Extension Wallet Upgrade
  • Faucet Upgrade
  • New Public RPC endpoints
  • New Explorer

Quai SDK (Software Development Kit)

The new SDK is raising the bar for developers working on the Quai Network. Here’s why:

  • Simplified Migration: Easily migrate existing EVM applications to our Quai Network compatible SDK.
  • Built-In Wallet Implementation: Includes a full wallet implementation out-of-the-box, supporting CLI, HD wallets, and key management, simplifying your development process considerably.
  • Transaction Submission: Enables the submission of transactions in both Quai and Qi.
  • Wallet Address Generation: Facilitates the generation of wallet addresses for Quai Network’s shards, empowering wallet developers.
  • Ease of Use: Designed to make developing dApps much easier, with streamlined interactions and support for advanced features like payment codes.

Pelagus Wallet

Our updated Pelagus wallet brings several improvements:

  • New SDK Integration: Now fully integrated with the new SDK, offering seamless interactions with the Quai Network.
  • Cleaner UI: An improved user interface enhances the user experience, whether you are a developer or a regular consumer.
  • Local Node Compatibility: The wallet now works effectively with local nodes, facilitating easier local development and testing.
  • Feature Parity: Maintains all the same features as the previous version but is built for future support and upgrades.
  • Mainnet Ready: Experience flawless blockchain interactions as you migrate your development to prepare for the upcoming Golden Age Testnet and Mainnet ready.
  • HD Wallet Services: Manage multiple addresses from a single seed phrase. Because who has time to remember more than one password?
  • Enhanced Security: Safeguard your assets with multiple keys under one mnemonic phrase.
  • Improved UX: Enjoy a sleek and intuitive interface that’s easier to navigate than before.

Faucet

The faucet has undergone significant changes to better serve our community:

  • Premium Twitter Account Requirement: To use the faucet, users need a premium Twitter account. We are aware of the barriers this may create for some regions and are exploring additional authentication methods, such as Discord.
  • Coin Distribution: Users can now request 0.2 Quai tokens every 24 hours to test their dApps.

Public RPC

Our public RPC node offers a robust development environment:

  • Single Node Network: It runs on a single node, providing a consistent devnet experience.
  • Frequent Updates: Be aware that the node might require occasional restarts as we push updates. We aim to keep you informed about any potential disruptions.
  • Temporary Measure: This public RPC will be available until the Golden Age launch, after which it will be replaced to support the new network.
  • Easy Testing: Bypass the hassle with our ready-to-use public RPC node. Because who needs more hassle in their life.
  • Collaborative Environment: Foster innovation with a consistent, shared testing space. It’s like a co-working space for your code, minus the awkward small talk.

Explorer

The new Explorer is an upgraded version of Block Scout, designed to enhance your navigation and transaction tracking:

  • Updated Branding: We’re updating the branding to ensure a fresh and modern look.
  • Multi-Shard Support: Initially, it will support shards like Cyprus 1 and 2, with plans to expand.
  • Unified Interface: A more integrated interface allows you to search across different shards efficiently, providing a comprehensive view of your transactions and interactions.

Why Choose Quai Network?

Quai Network isn’t just another blockchain platform; it’s a reimagining of what’s possible in the world of decentralized technology. We’re driven by a vision to create the foundation for a truly global, decentralized economy where computation and energy are the primary drivers of value. These updates are designed to power your innovative dApp development and deployment on Golden Age, sparking activity and growth within our vibrant community.

We invite you to be at the forefront of this revolution, building the systems and applications that will define the next era of the internet and global economy. Start building now to participate in our upcoming gamified testnet and earn Quai tokens.

Important Links

Security

All Quai Network blockchains are braided together, keeping the entire network censorship resistant and secure creating Scalable Proof-of-Work.

Decentralization

Quai allows anyone to participate in network governance by running a node or miner. With thousands of participants distributed across the globe, there is no single party with the ability to modify or turn off the network, ensuring zero network downtime.

Scalability

Quai Network automatically expands with demand to upwards of 50,000 TPS while keeping fees under $0.01.

Consensus

Transactions in Quai Network can be locally confirmed prior to global confirmation, offering high throughput with the shortest possible time to economic finality.

Shared Security

All blockchains within Quai Network share Proof-of-Work security through merged mining. Every Quai transaction is eventually confirmed by 100% of network hash power.

Merge-Mined Parachains

Parachains inherit security and interoperability by merged mining with Quai Network, and create new incentives for miners and users.

The Prime Chain

The Prime blockchain acts as the "knot" tying all Quai Network chains together. The Prime blockchain braids sub networks together, facilitating the transfer of data across chains.

Sub Networks

Quai's many high-speed sub networks independently and asynchronously process transactions. All sub networks are braided together by the Prime chain, ensuring shared security and interoperability across the network.