# Build on Serum

## 🏗️ How Can We Get Involved?

These guide pages will direct you to developer resources, popular ideas, and tutorials building in the Serum and Solana ecosystems.

{% content-ref url="build-on-serum/project-ideas-for-serum" %}
[project-ideas-for-serum](https://docs.projectserum.com/serum-ecosystem/build-on-serum/project-ideas-for-serum)
{% endcontent-ref %}

### 🔗 Useful links

* [Solana Blockchain](https://github.com/solana-labs/solana)
* [Solana Program Library](https://github.com/solana-labs/solana-program-library)
* [Solana Web3 SDK](https://github.com/solana-labs/solana-web3.js)
* [Solana Explorer](https://github.com/solana-labs/solana/tree/master/explorer)
* [Solana Hello World](https://github.com/solana-labs/example-helloworld)
* [Solana Technical Documentation](https://docs.solana.com/)
* [Solana Discord](https://solana.com/discord)
* Solana Wormhole - (bidirectional, trustless ERC-20 ⇄ SPL token bridge)
  * [Github repository](https://github.com/certusone/wormhole)
  * [Medium article](https://medium.com/certus-one/introducing-the-wormhole-bridge-24911b7335f7)
* [Solnet SDK](https://github.com/bmresearch/Solnet) (.NET integration for Solana)
* [NFT example](https://spl.solana.com/token#example-create-a-non-fungible-token)
* [Solana Go](https://github.com/dfuse-io/solana-go)

### ⚗️ Serum <a href="#serum" id="serum"></a>

* [Awesome Serum](https://github.com/project-serum/awesome-serum) - (Github)
* [Solnet.Serum](https://github.com/bmresearch/Solnet.Serum) (.NET integration for Serum)
* [PySerum](https://github.com/serum-community/pyserum) (Python client library for interacting with Serum)

## ⭐ Popular Resources

### Serum Core (Asset Agnostic Order Book)

* Smart contract AAOB: <https://bonfida.github.io/doc-aob-program/agnostic_orderbook/>
* Smart contract DEX: <https://bonfida.github.io/doc-dex-program/dex_v3/>
* JS Lib for the DEX: <https://bonfida.github.io/doc-dex-js/>

### Anchor

Framework for Solana's [Sealevel](https://medium.com/solana-labs/sealevel-parallel-processing-thousands-of-smart-contracts-d814b378192) runtime providing several convenient developer tools.

{% embed url="<https://github.com/project-serum/anchor>" %}

### Swap Program

An educational resource and starting point for people who want to write Solana programs to compose with Serum DEX.

* Example on-chain program interacting with the DEX.
* The Swap Program here is *not* an AMM. **The Program is built directly on the Serum orderbook.**

{% embed url="<https://github.com/project-serum/swap-ui>" %}

### Host a GUI

Host your own state-of-the-art GUI and earn a portion of the fees!

* An implementation of a UI for the Serum DEX.&#x20;
* If you are hosting a public UI using this codebase, you can collect referral fees when your users trade through your site.

{% embed url="<https://github.com/project-serum/serum-dex-ui>" %}

{% content-ref url="build-on-serum/how-to-host-a-gui-serum-academy" %}
[how-to-host-a-gui-serum-academy](https://docs.projectserum.com/serum-ecosystem/build-on-serum/how-to-host-a-gui-serum-academy)
{% endcontent-ref %}

### Permissioned Markets

A [permissioned market](https://twitter.com/armaniferrante/status/1423817352647352320?lang=en) is a regular Serum market with an additional open orders authority, which must sign every transaction to create an open orders account.

{% embed url="<https://github.com/project-serum/permissioned-markets-quickstart>" %}

## 📌 Pinned Repositories

{% embed url="<https://github.com/project-serum>" %}

### Client Code

{% embed url="<https://github.com/project-serum/serum-ts/tree/master/packages/serum>" %}

### On-chain Code

{% embed url="<https://github.com/project-serum/serum-dex/tree/master/dex>" %}

### Starter Repo

Serum quick start repo to setup a local on-chain integration:

* For those who want to build programs that compose with the DEX
* Contains boilerplates for setting up a populated Serum market for local development

{% embed url="<https://github.com/armaniferrante/serum-quickstart>" %}

### SOL Wallet Adapter

Library to allow Solana dApps to user third party wallets to sign transactions:

{% embed url="<https://github.com/project-serum/sol-wallet-adapter>" %}

## 🌟 What Makes a Great Project?

**Usefulness**: What do users want? The links above ("How can we contribute?") offer popular ideas users have asked for.

**Well-built**: Efficacy, intuitiveness, security, and reliability are some of the tell-tale traits of a good project. Check out the [list of popularly requested](https://github.com/project-serum/awesome-serum) for projects on Serum for reference.

**Users**: Your userbase will make or break your project, whether it's through word-of-mouth, marketing, partnerships, or other customer acquisition methods.

{% embed url="<https://projectserum.medium.com/building-on-serums-vision-38577235f70f>" %}
