GithubHelp home page GithubHelp logo

zkpeep / ecosystem Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ethereum-optimism/ecosystem

0.0 0.0 0.0 22 MB

Optimism is Ethereum, scaled.

Home Page: https://optimism.io

License: MIT License

Shell 0.09% JavaScript 1.25% TypeScript 95.87% CSS 0.28% HTML 0.09% Dockerfile 0.25% Solidity 2.17%

ecosystem's Introduction



Optimism

Optimism is Ethereum, scaled.


Ecosystem

In this repository, you'll find numerous code references for applications & packages to help app developers build on top of the OP Stack with ease.

If the Optimism Repository is a place where the protocol and its infrastructure gets built. The Ecosystem Repository is a place where utilities, applications, and examples get built to interact with the protocols and its infrastructure.

Designed to be "aggressively open source," we encourage you to explore, modify, extend, and test the code as needed. We look forward to building with you!

Documentation

Support

For technical support head over to the GitHub Developer forum. Governance discussion can also be found on the Optimism Governance Forum.

Directory Structure

├── apps
│   ├── bridge-app: Example Bridge App
│   ├── dapp-console: Dapp console frontend app
│   ├── dapp-console-api: Dapp console backend api
│   ├── event-log-indexer: Indexer app
│   ├── paymaster-nft-mint: Nft mint + paymaster example app
│   ├── paymaster-proxy: Paymaster proxy service
├── packages
│   ├── api-plugin: Nx generators for api apps
│   ├── contracts-ecosystem: Ecosystem contracts
│   ├── op-app: Optimism Stack App Utils
│   ├── screening: Utils for integrating app with screening service
│   ├── ui-components: Shared ui components

Development Quick Start

Dependencies

You'll need the following:

Setup

Clone the repository and open it:

git clone [email protected]:ethereum-optimism/ecosystem.git
cd ecosystem

Install the Correct Version of NodeJS

Install the correct node version with nvm

nvm use

Install Node Modules With pnpm

pnpm i

Running Targets

Each application and package have npm scripts in there indivdual package.json. In order to run those easily we can leverage nx here. The nx.json file is setup to improve QoL while working in the repo.

The npm package name can be found in their package.json and the targets are what you'll see in the scripts object in the package.json

pnpm nx run <npm package name>:<target>

For example if we wanted to run the bridge-app for development we could run this

pnpm nx run @eth-optimism/bridge-app:dev

If we wanted to build the op-app package we could run this

pnpm nx run @eth-optimism/op-app:build

There will be a few common targets that you will most likely see across all applications and packages in the repo.

  • build
  • clean
  • dev
  • typecheck
  • lint
  • lint:fix

Codegen

Nx generateors

  • trpc-api-generator: generates the boiler plate code for creating a trpc api server

To run a generator run this command:

pnpm nx generate <name of generator> <name of new project>

Feel free to open up an issue on the repo if you're running into any issues!

Contributing

No contribution is too small and all contributions are valued. Thanks for your help improving the project! We are so happy to have you!

You can read our contribution guide here to understand better how we work in the repo.

Releases

As of now we have not published any packages in this repo to npm, but stay tuned as we plan to do that once we add more packages to the repo!

License

All other files within this repository are licensed under the MIT License unless stated otherwise.

ecosystem's People

Contributors

nitaliano avatar tremarkley avatar jakim929 avatar jvmi7 avatar tarunkhasnavis avatar dependabot[bot] avatar zainbacchus avatar kelreel avatar roninjin10 avatar felipe-op avatar smartcontracts avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.