-
Notifications
You must be signed in to change notification settings - Fork 130
Word List
This word list is part of our content guidance that governs the terminology, voice and tone, and style guidelines.
To help ensure consistency in the technical documentation, follow these recommendations for word choices and preferred use of common terms.
A B C D E F G H I J K L M N O P R S T V W Z
Do not use Latin abbreviations. Use and instead, unless you are documenting a UI element that uses an &
.
Try to avoid using above when referring to an example or table in a documentation page. If required, use previous instead. For example:
- In the previous example,
assertBetween()
is used in the voting example.
Do not use above when referring to versions of the product. Use later instead.
Use AccountUpdate
for the class in SnarkyJS that represents account update instructions for the Mina network. Use when referring to an instance of a class, for example, when talking about code in a tutorial.
Use account update and account update as the technical term for a part of a Mina transaction when explaining our protocol.
Use Boolean to refer to Boolean logic or Boolean algebra. Use boolean to refer to a data type.
Use Berkeley Testnet.
A centralized exchange (CEX) is a business that specializes in helping make transactions happen between two parties.
The transaction fees that block producers earn for their work on the chain.
Use Dapp for decentralized apps.
Before you use DeFi as the acronym, spell it out on the first use on the page: decentralized finance (DeFi).
A network dedicated to developers building on top of the Mina protocol.
Use earlier when talking about version numbers.
Use:
- In Mina zkApp CLI version 0.7.5 and earlier
Fee payer account (no hyphen).
Before you use JS as the acronym, spell it out on the first use on the page: JavaScript (JS).
The proof system for Mina, Kimchi is the main machinery that generates the recursive proofs that keep the Mina blockchain small (about 22 KB). Kimchi is a zero-knowledge proof system that’s a variant of PLONK.
Use later when talking about version numbers.
Use:
- In SnarkyJS version 0.9.0 and later.
Instead of:
- In SnarkyJS version 0.9.0 and higher...
- In SnarkyJS version 0.9.0 and above...
Use Mina for the network.
Use MINA for the token.
The Mina CLI is installed when you install Mina. the primary way for users to interact with the Mina network. The Mina CLI is an ordinary application that runs the entire Mina blockchain, including (but not limited to) verifying zkApp execution proofs. The Mina CLI does not execute zkApps.
Use Mina zkApp CLI when writing about the CLI you use to create a zkApp for Mina Protocol. https://github.com/o1-labs/zkapp-cli
Always lowercase. Supersedes SnarkyJS.
The Mina Protocol proof-of-stake (PoS) consensus mechanism.
Use page to refer to individual pages of the documentation, such as What are Zero-Knowledge Proofs?.
Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge (PLONK) is general-purpose zero-knowledge proof scheme.
Mina’s inductive zk-SNARK composition system. See Pickles in Mina book.
Before you use PoS as the acronym, spell it out on the first use on the page: proof of stake (PoS).
Hyphenate proof-of-stake only when the term modifies the following word. For example, proof-of-stake consensus mechanism.
Before you use PoW as the acronym, spell it out on the first use on the page: proof of work (PoW).
Hyphenate proof-of-work only when the term modifies the following word. For example, proof-of-work consensus mechanism.
Use prover to refer to the entity that executes the prover function.
Use prover function to describe the function that executes the custom logic of a smart contract.
Use private key. Do not use secret key.
Use public key. Do not use secret key.
Use reward payout to refer to the 95% of the rewards the block producer returns after they receive a delegation.
At O(1) Labs, request for comments (RFCs) manage planned changes and provide a contextual historical artifact. https://github.com/o1-labs/rfcs
Use section to refer to a top-level section of the documentation, such as the About Mina section.
Use smart contract to refer to the code that is written with SnarkyJS. To refer to the UI + the smart contract, use zkApp.
Do not use. Superseded by o1js product rename September 2023. SnarkyJS is now o1js.
Use SNARK all upper case when you refer to the acronym that stands for zero-knowledge succinct non-interactive argument of knowledge.
Use SNARK proof to refer to the individual proof that is generated by a SNARK prover.
Use SNARK work to refer to a Mina protocol data structure that is a wrapper around one or two SNARK proofs and a price to be paid to the SNARK worker that generated the proof or proofs.
Use to refer to the node that produces the proof.
Before you use TS as the acronym, spell it out on the first use on the page.
Use verifier to refer to the entity that executes the verifier function. To refer to the Mina protocol, use Mina.
Use verifier function to describe the function that executes the custom logic of a smart contract.
Zero knowledge (zk) is a common noun and is capitalized only at the beginning of a sentence. In other instances, all letters are lowercase. Unless it conflicts with Mina branding, hyphenate zero-knowledge only when used as a modifier.
Use the lowercase zk acronym for zero knowledge.
Use zkApp (singular) and zkApps (plural) to refer to the UI + the smart contract. Letter casing may vary based on the context. If you are not sure, please ask. zkApps executed externally from the Mina blockchain in Node.js or in a user's browser, depending on their architecture.
Use zk-SNARK (singular) and zk-SNARKs (plural).
ZkPrograms are similar to zkApp smart contracts but are not tied to an on-chain account.