# Awesome Standards

> A curated list of technical standards, they may be called requests for comments, proposals, drafts, notes, specifications, or something else.

## Contents

- Web Technologies
- APIs
- Programming Languages
- Tools
- Decentralized Systems
- Cybersecurity and Cryptography
- Operating Systems
- Electronics and Hardware
- Databases and Storage
- Telecommunications
- General
- Region Specific
- Related Awesome Lists

## Web Technologies

- IETF RFCs - Publication in a series from the principal technical development and standards-setting bodies for the Internet, most prominently the IETF.
- BCPs - Best Current Practice, sub-series of the RFC document series.
- ECMA International Standards - Standards for information and communication systems.
- W3C - W3C publishes a range of technical reports (Standards and supporting Notes) which help move the web forward.
- W3C WAI - Strategies, standards, and supporting resources to help you make the Web more accessible to people with disabilities.
- WHATWG - Web Hypertext Application Technology Working Group, founded by individuals of leading Web browser vendors.
- Unicode Standards - Text encoding standard maintained by the Unicode Consortium.
- OASIS Open - Standards by nonprofit consortium that works to develop both open standards and open source.
- OpenID Specifications - Identity standards, the most famous of which is the decentralized authentication protocol OpenID Connect.

## APIs

- GraphQL Spec - Specification for GraphQL, a query language and execution engine.
- Protobuf Spec - Protocol Buffers are language-neutral, platform-neutral extensible mechanisms for serializing structured data.
- gRPC - This document serves as a detailed description for an implementation of gRPC carried over HTTP2 framing.
- XML-RPC - Remote procedure call protocol which uses XML to encode its calls and HTTP as a transport mechanism.
- JSON-RPC - Stateless, light-weight remote procedure call protocol.
- Apache Avro - Serialization format for record data, and first choice for streaming data pipelines.
- Apache Thrift - Interface Definition Language and binary communication protocol used for defining and creating services for programming languages.
- OpenRPC Spec - The OpenRPC Specification defines a standard, programming language-agnostic interface description for JSON-RPC 2.0 APIs.
- OpenAPI Spec - The OpenAPI Specification (OAS) defines a standard, language-agnostic interface to HTTP APIs.
- API Blueprint Spec - A markdown based language for describing APIs with interactive documentation support.
- RAML Spec - RESTful API Modeling Language is a YAML based language for describing static APIs (but not REST APIs).
- JSON Schema - Standard providing a format for what JSON data is required for a given application and how to interact with it.
- AsyncAPI Spec - This specification allows you to create machine-readable definitions of your asynchronous APIs.
- OpenMessaging Spec - Vendor-neutral and language-independent, aimed to develop messaging and streaming applications across heterogeneous systems.
- CloudEvents Spec - A specification for describing event data in a common way.
- HATEOAS - Hypermedia as the engine of application state is a constraint of the REST software architectural style.
- HAL - Convention for defining hypermedia such as links to external resources within JSON or XML code.
- JSON:API - A specification for building APIs in JSON, defines links and actions.
- JSON-LD - JSON for Linked Data is a standard for hyperlinks in JSON, does not address actions.
- Ion - Simple and intuitive JSON-based hypermedia type for REST.
- Hydra - Builds on top of JSON-LD to add definition of actions.
- Siren - Structured Interface for Representing Entities, super-rad hypermedia, defines links and actions.
- Collection+JSON - JSON-based read/write hypermedia-type designed, defines links and actions.
- Odata - A protocol for querying and updating data using RESTful APIs, with rich query capabilities.
- JSEND - Specification for a simple, no-frills, JSON based format for application-level communication.
- Google API Design Guide - A general design guide for networked APIs provided by Google.
- Microsoft REST API Guidelines - Repository contains a collection of documents and related materials.
- Zalando RESTful Guidelines - A model set of guidelines for RESTful APIs and Events, created by Zalando.
- API Stylebook - Collections of resources for API Design from other companies guidelines.
- API Security Checklist - Checklist of the most important security countermeasures.

## Programming Languages

- ECMAScript Proposals - Ecma TC39 (Technical Committee 39) is responsible for evolving the ECMAScript programming language and authoring the specification.
- PEPs - Python Enhancement Proposals for language improvements.
- PHP FIG - Standards proposed and approved by PHP Framework Interop Group.
- Rust RFCs - Proposals to evolve the Rust language.
- Swift Evolution - Proposals for changes to the Swift language.
- KEEP - Kotlin Evolution and Enhancement Process.
- SIPs - Scala Improvement Proposals.
- GHC Proposals - Compiler and language changes for Haskell/GHC.
- EEPs - Erlang Enhancement Proposals.
- JSR - Java Specification Requests to standardize Java.
- Java SE Specs - Java Language and JVM specifications for Java by Oracle.
- Go Proposals - Design discussions for Go language evolution.
- GoLang Spec - The Go Programming Language Specification.
- Dart Design - Design of the Dart language.
- C# Design - C# Language Design Proposals.
- F# Design - F# Language Design RFCs.
- Zig Proposals - Issues with Proposal label in Zig repository.
- C Standards - ISO/IEC standards for the C programming language.
- C++ Standards - ISO/IEC standards for C++.
- CEPs - Coq Enhancement Proposals.
- OCaml RFCs - Design discussions about the OCaml language.
- SRFI - Scheme Requests for Implementation.
- Scheme Standards - Revised Report on Scheme and other standards.
- CDR - Common Lisp Document Repository.
- PPCs - Proposed Perl Changes is proposals to change the Perl language.
- DIPs - D language Improvement Proposals.
- GEPs - Groovy Enhancement Proposals and Issues tracked in Jira.

## Tools

- npm RFCs - Change proposals for npm.
- Yarn RFCs - Proposals for improvements in Yarn package manager.
- React RFCs - Change requests for React.
- Vue RFCs - Suggestions for major changes to Vue.js.
- Svelte RFCs - Svelte framework enhancement discussions.
- Ember RFCs - Standards for Ember.js framework evolution.
- ESLint RFCs - Change requests for ESLint.
- React Native RFCs - React Native enhancement discussions.
- Nix RFCs - The Nix community RFCs.
- DEPs - Django Enhancement Proposals.
- CEPs - Conda Enhancement Proposals.
- SLEPs - Scikit-learn Enhancement Proposals.
- JEPs - Jupyter Ecosystem Enhancement Proposals.
- JEPs - Jenkins Enhancement Proposals.
- REPs - Enhancement proposals for ROS robotics framework.
- KEPs - Kubernetes Enhancement Proposals.
- HIPs - Helm Improvement Proposals.
- OTEPs - OpenTelemetry Enhancement Proposals.
- GIPs - Godot (Multi-platform 2D and 3D game engine) Improvement Proposals.
- Bazel Proposals - Bazel proposals and design documents.
- Conventional Commits - A specification for adding human and machine readable meaning to commit messages.
- Compose Specification - The Compose Specification is developer focused for defining cloud and platform agnostic container-based applications.
- Fluent Specs - This repository contains the specification, the reference implementation of the parser and the documentation for Fluent.
- [x]it! - A plain-text file format for todos and check lists.
- SPDX Spec - The System Package Data Exchange Specification.
- HeadVer Spec - SemVer compatible version specification that has {head}.{yearweek}.{build} system.
- SemVer Spec - Semantic Versioning Specification.
- CalVer Spec - Calendar Versioning Specification.
- OpenAutoComplete Spec - CLI autocomplete specification.

## Decentralized Systems

- BIPs - Bitcoin Improvement Proposals.
- EIPs - Ethereum Improvement Proposals.
- ZIPs - Zcash Improvement Proposals.
- NEPs - NEAR Protocol Specifications and Standards.
- BOLTs - Basis of Lightning Technology (Lightning Network Specifications).
- BEPs - BitTorrent Enhancement Proposals.
- BTIPs - BitTorrent File System Improvement Proposals.
- SLIPs - SatoshiLabs Improvement Proposals.
- YIPs - Yearn Finance Improvement Proposals.
- AIPs - Aave Improvement Proposals.
- Optimism Specs - Optimism Stack Specifications.
- PIPs - Polygon Improvement Proposals.
- SIPs - Synthetix Improvement Proposals.
- Fuel Specs - Specifications for the Fuel protocol and the FuelVM.
- Filecoin Specs - Filecoin protocol specification.
- CAIPs - Chain Agnostic Improvement Proposals.
- AIPs - Aptos Improvement Proposals.
- HIPs - Helium Improvement Proposals.
- MIPs - Maker Improvement Proposals.
- SNIPs - Starknet Improvement Proposals.
- Nervos Network RFCs - Proposals, standards and documentations related to Nervos Network.
- IPIP - InterPlanetary Improvement Proposals, technical specifications for the IPFS protocol stack.
- Tor Specs - Tor Specifications including proposals.
- I2P Specs - I2P Specification Documents including proposals.
- LibP2P Specs - Technical specifications for the libp2p networking stack.

## Cybersecurity and Cryptography

- NIST - National Institute of Standards and Technology of the United States.
- FIPS - Federal Information Processing Standards of the United States.
- PKCS - Public Key Cryptography Standards is group of standards devised and published by RSA Security LLC.
- FIDO Specifications - Authentication standards that “help reduce the world’s over-reliance on passwords”.
- OWASP MASVS - Mobile Application Security Verification Standard is the industry standard for mobile app security.

## Operating Systems

- POSIX Standards - The Portable Operating System Interface is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems.
- Windows API (WinAPI) - Foundational API that allows a computer program to access the features of the Microsoft Windows OS.
- LSB - Linux Standard Base.
- SUS - Single UNIX Specification.
- X/Open Portability Guide (XPG) - A precursor to POSIX and the Single UNIX Specification.
- UEFI Specifications - Unified Extensible Firmware Interface is a specification for the firmware architecture of a computing platform.
- FHS - The Filesystem Hierarchy Standard is reference describing the conventions used for the layout of Unix-like systems.
- LUKS - The Linux Unified Key Setup is a disk encryption specification.
- OVF (Open Virtualization Format) - OS images for virtualized environments.
- KVM (Kernel-based Virtual Machine) - OS-level virtualization in Linux.
- OCI (Open Container Initiative) - Standards for OS containers like Docker.
- D-Bus - D-Bus Specification.

## Electronics and Hardware

- IEEE - Institute of Electrical and Electronics Engineers.
- PCI Standards - The Payment Card Industry Data Security Standard (PCI DSS).
- HDMI Specifications - High-Definition Multimedia Interface is a proprietary audio/video interface for transmitting uncompressed video data and compressed or uncompressed digital audio data.
- Bluetooth Core Specifications - Short-range wireless technology standard.

## Databases and Storage

- CEPs - Cassandra Enhancement Proposals.
- SPIPs - Spark project improvement proposals.

## Telecommunications

- ITU-T - International Telecommunication Union.
- ETSI - European Telecommunications Standards Institute.

## General

> these are a series of standards whose standards can simultaneously relate to different topics

- ISO - International standard development organization composed of representatives from the national standards organizations of member countries.
- IEC - International standards organization that prepares and publishes international standards for all electrical, electronic and related technologies – collectively known as “electrotechnology”.
- ANSI - Private nonprofit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States.

## Region Specific

> the use of these standards is specific to certain regions

- BS - British Standards: Standards published by the BSI Group, the UK’s National Standards Body (NSB). They provide guidelines for quality, safety, and sustainability across various sectors.
- CEN - European Committee for Standardization: Develops European Standards (ENs) to harmonize technical specifications and promote trade across Europe.
- DIN - Deutsches Institut für Normung: German Institute for Standardization, which develops national and international standards for a wide range of industries.
- AFNOR - Association française de normalisation: France’s National Standardization Office.
- NSAI - National Standards Authority of Ireland: Ireland’s official standards body.
- CSA Group - Canadian Standards Association: Develops standards to address safety, sustainability, and performance for Canada and global markets.
- SII - Standards Institution of Israel: National body for standards and certification.
- NOM - Normas Oficiales Mexicanas: Official Mexican standards governing the safety, health and quality of goods and services.
- ABNT - Associação Brasileira de Normas Técnicas: Brazilian National Standards Organization.
- SS - Singapore Standards: Organization handling trade and technology standards.
- JIS - Japanese Industrial Standards: Specifications published by the Japanese Industrial Standards Committee (JISC) to ensure product quality and safety in Japan.
- KATS - Korean Agency for Technology and Standards: Organization for developing standards across various sectors.
- CNS - Chinese National Standards: Taiwan’s official standards, administered by the Bureau of Standards, Metrology, and Inspection.
- GB - Guobiao Standards: China’s national standards, including technical and industry-specific regulations.
- GOST - Russian National Standards: State standards developed by Rosstandart to regulate industries and ensure quality and compatibility in Russia.
- TCVN - Vietnamese National Standards: Standards published by the Directorate for Standards, Metrology, and Quality of Vietnam to regulate local and international trade.
- BIS - Bureau of Indian Standards: National standards for industry, products, and services.
- PSQCA - Pakistan Standards and Quality Control Authority: Organization responsible for developing and certifying standards.
- TIS - Thai Industrial Standards: National standards for Thailand.

## Related Awesome Lists

- Awesome Guidelines - Coding style conventions and standards.
- Awesome API Devtools - A collection of useful resources for building RESTful HTTP+JSON APIs.

standards.md Github