Git Product home page Git Product logo

euler-encode-workshop's Introduction

Euler <> Encode Educate

Usage

Install Foundry:

curl -L https://foundry.paradigm.xyz | bash

This will download foundryup. To start Foundry, run:

foundryup

Clone the repo and install dependencies:

git clone https://github.com/euler-xyz/euler-encode-workshop.git && cd euler-encode-workshop && forge install && forge update

Slides

Workshop presentation slides can be found here:

Assignments

Fork this repository and complete the assignments. Create a PR to merge your solution with the master branch of this repository. To do that, follow the instructions:

Assignment branch-name Prize Pool Rules Deadline
Workshop 2 Questionnaire assignment-q2 $500 FCFS for 10 participants No deadline
Workshop 3 Questionnaire assignment-q3 $500 FCFS for 10 participants No deadline
Workshop 2/3 Coding Assignment assignment-c $2000 5 best submissions; both Workshops judged together Jan 31st midnight UTC
  1. Fork the Repository

First, you need to fork this repository on GitHub. Go to the repository and click the "Fork" button in the upper right corner.

  1. Clone and navigate to the Forked Repository

Now, clone the forked repository to your local machine. Replace your-username with your GitHub username.

git clone https://github.com/your-username/euler-encode-workshop.git && cd euler-encode-workshop && forge install && forge update
  1. Create a New Branch

Create a new branch for your assignment. Replace branch-name with the name relevant to the assignment you wish to complete as per the table above.

git checkout master && git checkout -b branch-name
  1. Complete the Assignment

At this point, you can start working on the assignment. Make changes to the files as necessary. For details look below.

  1. Stage, Commit and Push Your Changes

Once you've completed the assignments, stage and commit your changes. Push your changes to your forked repository on GitHub. Replace branch-name accordingly.

git add . && git commit -m "assignment completed" && git push origin branch-name
  1. Create a Pull Request

Finally, go back to your forked repository on the GitHub website and click "Pull requests" at the top and then click "New pull request". From the dropdown menu, select the relevant branch of your forked repository and master branch of the original repository, then click "Create pull request". The PR title should be as in the Assignment column from the table above.

  1. Repeat

If you are completing more than one assignment, repeat steps 3-6 for each assignment using different branch names and creating new PRs. If you wish to complete all the assignments, you should have at most 3 PRs. Coding Assignment from both Workshop 2 and 3 should be submitted in the same PR.

Workshop 2

Questionnaire

Answer the EVC related questions tagged with [ASSIGNMENT] which can be found in the source file. The questions should be answered inline in the source file.

Coding Assignment

Add borrowing functionality to the workshop vault as per additional instructions in the interface file. You should not modify the vault constructor, otherwise the tests will not compile. Run forge compile or forge test before submitting to check if everything's in order.

Workshop 3

Questionnaire

Answer the EVC related questions which can be found in the assignment file. The questions should be answered inline in the file.

Coding Assignment

Taking from the EVC operator concept, and using VaultRegularBorrowable contract from the evc-playground repository, build a simple position manager that allows keepers to rebalance assets between multiple vaults of user's choice. Whether the assets should be rebalanced or not should be determined based on a predefined condition, i.e. deposit everything into a vault with the highest APY at the moment, but rebalance no more often than every day. The solution should be provided in the dedicated source file.

Resources

  1. EVC docs
  2. EVC repository
  3. EVC playground repository

euler-encode-workshop's People

Contributors

kasperpawlowski avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  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.