# Intro to the Highlight Protocol

Highlight provides simple, point-and-click creation of various kinds of NFT projects, with a multitude of different sale mechanics and minting features. Under the hood, each of these flows produces a modular, flexible set of smart contracts that are completely configurable, platform-independent, and entirely artist-owned. In these docs, we’ll overview the major components of the Highlight protocol, explaining how they can be customized to produce nearly any kind of NFT project, all while retaining the benefits of Highlight’s simple creation tools and minting pages.

### Motivations

Our goal is to ensure that Highlight’s protocol is simple and extensible enough to speed up the creation of any kind of NFT project—from generative art to PFPs to large open editions to entirely custom on chain projects—all while ensuring that the core pieces are completely owned by you. This means that everything you build on Highlight will outlive us, and can be modified by you in the future.&#x20;

### Overview

The Highlight protocol is composed of 4 primary sections:

1. [**NFT contracts.**](/knowledge-base/for-developers/nft-contracts.md) Each time a creator launches a new project on Highlight, a contract is deployed that is owned exclusively by the creator. In many cases these can be reused to issue new projects. There are a variety of types to cover different use cases and project types.
2. [**Minting protocol.**](/knowledge-base/for-developers/minting-protocol.md) Various sale mechanics can be applied to NFT contracts, enabling certain kinds of sales to occur. These can be time-based, gated by allowlists, burn/redeem and virtually anything else you can think of. Sale mechanic logic can be contained in modular contracts that developers, creators and platforms can write, and inject into Highlight's minting protocol.
3. [**Management modules.**](/knowledge-base/for-developers/management-modules.md) Modules allow developers to create custom logic around how their projects can be minted, how tokens can be transferred, how metadata can be updated, and how royalties will work for various tokens in a collection.
4. [**Observability.**](/knowledge-base/for-developers/observability.md) Highlight contracts emit all kinds of Highlight-specific events which are aggregated in a single place, the Observability contract. This singular contract can be used to track all kinds of Highlight activity on chain. It's particularly useful for understanding the entire set of Highlight NFT contracts that have been deployed.&#x20;

<figure><img src="/files/qhf2i4lt4KGhRYfoFZwm" alt=""><figcaption></figcaption></figure>

Please find for reference the [Highlight Github repository](https://github.com/highlightxyz/hl-evm-contracts).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://support.highlight.xyz/knowledge-base/for-developers/intro-to-the-highlight-protocol.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
