{"id":21660219,"url":"https://github.com/0xProject/0x-launch-kit-backend","last_synced_at":"2025-07-17T23:31:05.160Z","repository":{"id":44159723,"uuid":"149747032","full_name":"0xProject/0x-launch-kit-backend","owner":"0xProject","description":"Launch a 0x relayer in under a minute [DEPRECATED]","archived":false,"fork":false,"pushed_at":"2023-04-07T11:56:23.000Z","size":1124,"stargazers_count":170,"open_issues_count":29,"forks_count":277,"subscribers_count":17,"default_branch":"master","last_synced_at":"2023-11-07T17:28:57.994Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/0xProject.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-21T10:14:25.000Z","updated_at":"2023-10-04T22:39:32.000Z","dependencies_parsed_at":"2023-01-26T04:15:16.107Z","dependency_job_id":null,"html_url":"https://github.com/0xProject/0x-launch-kit-backend","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xProject%2F0x-launch-kit-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xProject%2F0x-launch-kit-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xProject%2F0x-launch-kit-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xProject%2F0x-launch-kit-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/0xProject","download_url":"https://codeload.github.com/0xProject/0x-launch-kit-backend/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226306138,"owners_count":17603937,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-25T09:32:30.637Z","updated_at":"2024-11-25T09:34:30.564Z","avatar_url":"https://github.com/0xProject.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003cimg src=\"launch_kit_banner.png\"\u003e\n\n## ⚠️ Deprecation Warning ️️⚠️\n\nThis project is no longer being actively maintained. \nTo fork or run a [Standard Relayer API](https://0x.org/docs/api#sra) instance, you can use the [0x API](https://github.com/0xProject/0x-api) instead.\n\n## Table of contents\n\n-   [Introduction](#introduction)\n-   [Language choice](#language-choice)\n-   [Getting started](#getting-started)\n-   [Client for your relayers API](#client-for-your-relayers-api)\n-   [Commands](#commands)\n-   [Database](#database)\n-   [Deployment](#deployment)\n-   [Legal Disclaimer](#legal-disclaimer)\n\n## Introduction\n\nLaunch a 0x relayer in under a minute with Launch Kit. This repository contains an open-source, free-to-use 0x relayer template that you can use as a starting point for your own project.\n\n-   Quickly launch a market for your community token\n-   Seemlessly create an in-game marketplace for digital items and collectibles\n-   Enable trading of any ERC-20 or ERC-721 asset\n\nFork this repository to get started!\n\n### [See website](https://0xproject.com/launch-kit)\n\n## Language choice\n\n`0x-launch-kit-backend` ships with 2 codebases, one in Typescript and another in Javascript. Although the Javascript is auto-generated from the Typescript, we made sure the Javascript generated is readable.\n\nBefore you start using `0x-launch-kit-backend`, choose whether you want your codebase to be in Typescript or Javascript.\n\n**If you want to work in Javascript:**\n\n-   delete the `ts` directory\n-   delete all scripts from `package.json` that end with `:ts`\n\nNote: If you also wish to build and use the Docker image, please update the command in the Dockerfile to `CMD [ \"forever\", \"js/index.js\" ]`\n\n**If you want to work in Typescript:**\n\n-   delete the `js` directory\n-   delete all scripts from `package.json` that end with `:js`\n\n## Getting started\n\n#### Pre-requirements\n\n-   [Node.js](https://nodejs.org/en/download/) \u003e v8.x\n-   [Yarn](https://yarnpkg.com/en/) \u003e v1.x\n-   [0x Mesh](https://github.com/0xProject/0x-mesh) \u003e v5.0.1 for v3. Docker image `0xorg/mesh:5.0.1-beta-0xv3` or greater\n\nTo develop ontop of `0x-launch-kit`, follow the following instructions:\n\n1. Fork this repository\n\n2. Clone your fork of this repository\n\n3. Open the `config.ts`/`config.js` file (depending on the language you've chosen above) and edit the whitelisted tokens:\n\n    - `WHITELISTED_TOKENS` -- Which tokens you would like to host orderbooks for.\n\n4. Open the `.env` file and edit the following fields. Defaults are defined in `config.ts`/`config.js`. The bash environment takes precedence over the `.env` file. If you run `source .env`, changes to the `.env` file will have no effect until you unset the colliding variables.\n\n    - `CHAIN_ID` -- the chain you'd like your relayer to run on (e.g: `1` -\u003e mainnet, `42` -\u003e Kovan, 3 -\u003e Ropsten, etc...). Defaults to `42`\n    - `MESH_ENDPOINT` -- the url pointing to the 0x Mesh node. Defaults to `ws://localhost:60557`\n    - `FEE_RECIPIENT` -- The Ethereum address which should be specified as the fee recipient in orders your relayer accepts. Defaults to a fake address that helps the 0x core team use anonymous, already public data to understand Launch Kit developer usage. Defaults to an auto-generated address\n    - `MAKER_FEE_ASSET_DATA` -- The maker fee token asset data. Defaults to `0x`, i.e no fee\n    - `MAKER_FEE_UNIT_AMOUNT` -- The flat maker fee amount you'd like to receive for filled orders hosted by you. Defaults to `0`\n    - `MAKER_FEE_ASSET_DATA` -- The taker fee token asset data. Defaults to `0x`, i.e no fee\n    - `TAKER_FEE_UNIT_AMOUNT` -- The flat taker fee you'd like to receive for filled orders hosted by you. Defaults to `0`\n\n[Instructions for using Launch Kit with Ganache](https://hackmd.io/-rC79gYWRyG7h6M9jUf5qA)\n\n5. Make sure you have [Yarn](https://yarnpkg.com/en/) installed.\n\n6. Install the dependencies:\n\n    ```sh\n    yarn\n    ```\n\n7. Build the project [This step is for Typescript users only]\n\n    ```sh\n    yarn build:ts\n    ```\n\n    or build \u0026 watch:\n\n    ```sh\n    yarn watch:ts\n    ```\n\n    **Note:** There isn't currently a build step when working on the Javascript codebase because we assume `0x-launch-kit` will be running on Node.js \u003e v8.0. If you want this project to work in an environment that doesn't support many of the latest Javascript features, you will need to add a transpiler (e.g [Babel](https://babeljs.io/)) to this project.\n\n8. Start the relayer\n\n    ```sh\n    yarn start:ts\n    ```\n\n    OR\n\n    ```sh\n    yarn start:js\n    ```\n\n## Client for your relayer's API\n\nSince the `0x-launch-kit-backend` relayer adheres to V3 of the [Standard Relayer API Specification](https://github.com/0xProject/standard-relayer-api/), you can use [0x Connect](https://0xproject.com/docs/connect) (an HTTP/Websocket client) to make calls to your relayer (e.g submit an order, get all orders, etc...)\n\nLearn how to use 0x Connect to interact with your `0x-launch-kit` relayer in [this tutorial](https://0xproject.com/wiki#Find,-Submit,-Fill-Order-From-Relayer).\n\nTo quickly check if your relayer is up-and-running, send it this CURL request from the command-line:\n\n```sh\ncurl http://localhost:3000/v3/orders\n```\n\nIf everything is working as expected, you should see this response:\n\n```\n{\n    \"total\": 0,\n    \"page\": 0,\n    \"perPage\": 20,\n    \"records\": []\n}\n```\n\nSince no orders have been added to your relayer yet, the `records` array is empty.\n\n## Commands\n\nTypescript project commands:\n\n-   `yarn build:ts` - Build the code\n-   `yarn lint:ts` - Lint the code\n-   `yarn start:ts` - Starts the relayer\n-   `yarn watch:ts` - Watch the source code and rebuild on change\n-   `yarn prettier:ts` - Auto-format the code\n\nJavascript project commands:\n\n-   `yarn start:js` - Start the relayer\n-   `yarn prettier:js` - Auto-format the code\n\n## Database\n\nThis project uses [TypeORM](https://github.com/typeorm/typeorm). It makes it easier for anyone to switch out the backing database used by this project. By default, this project uses an [SQLite](https://sqlite.org/docs.html) database.\n\nBecause we want to support both Javascript and Typescript codebases, we don't use `TypeORM`'s [decorators](https://github.com/typeorm/typeorm/blob/master/docs/decorator-reference.md) (since they don't transpile nicely into readable Javascript). TypeORM shines with decorators however, so you might want to use them if you're going to be working in Typescript.\n\n## Deployment\n\n`0x-launch-kit` ships as a docker container. First, install Docker ([mac](https://docs.docker.com/docker-for-mac/install/), [windows](https://docs.docker.com/docker-for-windows/install/)). To build the image run:\n\n```sh\ndocker build -t 0x-launch-kit-backend .\n```\n\nYou can check that the image was built by running:\n\n```sh\ndocker images\n```\n\nAnd launch it with\n\n```sh\ndocker run -p 3000:3000 -d 0x-launch-kit-backend\n```\n\nCheck that it's working by running\n\n```\ncurl http://localhost:3000/v3/asset_pairs\n```\n\n## Legal Disclaimer\n\nThe laws and regulations applicable to the use and exchange of digital assets and blockchain-native tokens, including through any software developed using the licensed work created by ZeroEx Intl. as described here (the “Work”), vary by jurisdiction. As set forth in the Apache License, Version 2.0 applicable to the Work, developers are “solely responsible for determining the appropriateness of using or redistributing the Work,” which includes responsibility for ensuring compliance with any such applicable laws and regulations.\nSee the Apache License, Version 2.0 for the specific language governing all applicable permissions and limitations: http://www.apache.org/licenses/LICENSE-2.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xProject%2F0x-launch-kit-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F0xProject%2F0x-launch-kit-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xProject%2F0x-launch-kit-backend/lists"}