Serum
  • Welcome
  • Introduction
    • Overview
    • Serum Ecosystem
    • Solana
    • SRM Token
  • Serum Ecosystem
    • 🛠️Build on Serum
      • Project Ideas
      • EcoSerum Grants
      • Tutorials and Concepts
      • Listing and Adding Markets
      • Host a GUI
      • Node List
    • 📈Trade on Serum
      • Ecosystem
      • Trading GUIs
    • ❓Get Help / FAQ
      • Changes to Staking
  • Guides
    • Wallet Support
      • Wallets
      • Exchanges
      • Using Sollet (sollet.io)
        • Creating SOL Wallet
        • Depositing Funds
        • Managing your Wallet
        • Using Sollet with Ledger Nano S
        • Converting ERC20 to SPL tokens
    • Trade on Serum DEX
      • Connect your Wallet
        • Connect with Sollet
        • Connect Ledger Nano S with Sollet
      • Trade
        • Trade on Bonfida
      • Avoiding Scams
    • Wormhole Token Bridge
    • Using Symmetry Swap
    • Providing Liquidity to Pools
    • Staking
    • Multisig
    • Governance
      • How to Vote
      • How to Create a Proposal
  • Appendix
    • Philosophy
    • Serum Core
    • Fees
    • Media
  • More
    • Github
    • Website
    • Discord
    • Telegram
    • Twitter
    • Youtube
    • Weibo
Powered by GitBook
On this page
  1. Serum Ecosystem
  2. 🛠️Build on Serum

Tutorials and Concepts

This guide lists a number of tutorials, projects as concepts or WIP's, and related resources.

PreviousEcoSerum GrantsNextListing and Adding Markets

Last updated 3 years ago

Was this helpful?

CtrlK
  • 📖 Building Tips
  • Developer Resources
  • RPC Servers
  • Serum Market Data
  • Mainnet, Devnet, Testnet
  • Authenticating Transactions
  • Composability
  • Fees Going to SRM Governance
  • 🎓 Tutorials and Project Concepts
  • 📈 Host a GUI
  • 🛠️ DEX Integration
  • 🔁 Minting Tokens
  • 🧾 Token Contracts
  • 🧾 Miscellaneous

Was this helpful?

📖 Building Tips

Developer Resources

For developer resources on Serum and Solana: https://github.com/project-serum/awesome-serum

RPC Servers

For a default list of RPC servers to use: https://github.com/project-serum/awesome-serum#rpc-servers

  • Others may be less reliable

Serum Market Data

If you want to consume Serum market data, you have the following options:

  • Javascript program for on-chain calls: https://github.com/project-serum/serum-js

  • REST server: https://github.com/project-serum/serum-rest-server

  • Serum API: https://docs.bonfida.com/#introduction

Mainnet, Devnet, Testnet

Developers are recommended to have (by default) both a mainnet and devnet/testnet version with a toggle to test the protocol on both, as there may be differences in performance that are useful to be able to test:

It is useful to have a devnet or testnet version, and also a mainnet version for full testing

Authenticating Transactions

If you need to authenticate transactions, the recommended course of action is to use the SPL wallet adapter, which is what e.g. sollet.io users to connect to DEXes.

Note: you can build in auto-accepting as an option! https://dex.projectserum.com/#/ uses this with sollet.io.

Users will be prompted to click: “Automatically approve transactions from https://dex.projectserum.com”

If they do, then for that session:

  • As long as the URL is the same

  • As long as the transaction contents match the expected contents (e.g. a DEX order)

It will not require clicking "accept".

This code is in https://github.com/project-serum/sol-wallet-adapter.

If you want your program to be auto-accepted, submit a PR (pull request) that adds it!

  • Bonfida and others also sometimes connect.

Developers are recommended to use the same conventions as e.g. sollet.io for the seed phrase and private key.

Composability

Consider composing with existing apps:

  • If your app needs liquidity you can trade on a DEX orderbook or swap

  • If your app needs to mint tokens, consider using https://spl-token-ui.com

  • Check out https://github.com/project-serum/awesome-serum for ideas and tools

Fees Going to SRM Governance

For fees going to SRM governance, you can assign to this address if you want.

🎓 Tutorials and Project Concepts

📈 Host a GUI

Want to help support the Serum ecosystem? Host a GUI and get a fraction of the fees!

  • An open source GUI: https://github.com/project-serum/serum-dex-ui

  • More about staking and voting: https://projectserum.com/#/staking-and-voting

Host a GUI

🛠️ DEX Integration

A technical introduction to the Serum DEX can be found here.

DEX Resources

  • DEX source code

  • Serum.JS, client-side JavaScript resources to connect to the DEX

  • Serum DEX UI, an implementation of a UI for the Serum DEX

  • Testnet deployment of prototype DEX:

    • DEX Program

    • DEX Market

  • Mainnet examples:

    • DEX Program

    • DEX Market

  • PySerum: Python client library for interacting with the Project Serum DEX.

🔁 Minting Tokens

  • SPL Token Creator UI

  • Bonfida Minter

  • SPL Manager

🧾 Token Contracts

  • Serum (SRM) SPL

  • Serum (SRM) ERC20

  • MegaSerum (MSRM) SPL

  • MegaSerum (MSRM) ERC20

🧾 Miscellaneous

  • Messaging App - Proof of Concept

  • AMM - Work-in-progress

  • SAMM

    • RFC

  • On-chain Pools:

    • A general preview

    • Work in progress code

  • Bonfida:

    • REST API to get Serum market data

    • GUI

    • Wallet