Git Product home page Git Product logo

kenakofer / manifold Goto Github PK

View Code? Open in Web Editor NEW

This project forked from manifoldmarkets/manifold

1.0 0.0 0.0 83.82 MB

Manifold Markets: A market for every question

Home Page: https://manifold.markets

License: MIT License

Shell 0.17% JavaScript 1.53% Ruby 0.07% Python 0.58% Objective-C 0.01% Java 0.16% TypeScript 74.23% CSS 0.25% Objective-C++ 0.05% Swift 0.01% HTML 21.09% PLpgSQL 1.73% Dockerfile 0.05% SCSS 0.04% Handlebars 0.05%

manifold's Introduction

Manifold

This monorepo has basically everything involved in running and operating Manifold.

Getting started

  1. Make sure you have Yarn 1.x
  2. $ cd web
  3. $ yarn
  4. $ yarn dev:dev
  5. Your site will be available on http://localhost:3000

See web/README.md for more details on hacking on the web client.

General architecture

Manifold's public API and web app are hosted by Vercel. Our data has been stored in Firebase's database Cloud Firestore but we are currently migrating it to SQL hosted on Supabase.

We often use firebase and supabase directly on the client to get the data. However, for complicated operations (like buying shares) we have a separate internal HTTP API deployed in a docker container in google cloud. This is seperate from the public-facing api hosted via Vercel; see functions/README.md for more details.

Directory overview

  • web/: UI and business logic for the client. Where most of the site lives. The public API endpoints are also in here.

  • backend/: All the rest of the stuff we run on GCP.

  • common/: Typescript library code shared between web/ & backend/. If you want to look at how the market math works, most of that's in here (it gets called from the placeBet and sellBet endpoints in functions/.) Also contains in common/envs configuration for the different environments (i.e. prod, dev, Manifold for Teams instances.)

  • docs/: Manifold's public documentation that lives at https://docs.manifold.markets.

Contributing

We're pretty new to open-source culture so please be patient and let us know how we can do better. Feel free to open issues, submit PRs, and chat about the process on Discord. We would prefer small PRs that we can effectively evaluate and review - check in with us first if you want to work on a big change.

By contributing to this codebase, you are agreeing to the terms of the Manifold CLA.

If you need additional access to any infrastructure in order to work on something (e.g. Vercel, Firebase, Supabase) let us know about that on Discord as well.

manifold's People

Contributors

jahooma avatar ianphilips avatar mantikoros avatar sipec avatar mqp avatar akrolsmir avatar ingawei avatar frcassarino avatar sirsaltyy avatar bcongdon avatar marsteralex avatar philbladen avatar martin-milbradt avatar ahalekelly avatar livinthelookingglass avatar forrestweiswolf avatar casesandberg avatar ncyrocks avatar wasabipesto avatar diomidov avatar maymeta avatar jkerkhoff avatar sjlver avatar programcrafter avatar subsequentlysneeds avatar sinclairity avatar jonnyspicer avatar ngtmeaty avatar bohaska avatar bgila avatar

Stargazers

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