Go to file
microwavedcola1 b56fd46721 reload for mangoaccount
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2022-04-13 06:37:36 +02:00
.cargo suppress known issues 2022-03-01 06:16:10 +01:00
.github/workflows Add manual run 2022-03-22 07:45:36 +00:00
keeper comments 2022-04-09 21:20:00 +02:00
lib/checked_math Add checked_math library for convenient overflow checking 2022-03-13 15:45:50 +01:00
mango-macro further work on perps 2022-03-22 07:06:33 +01:00
migrations First commit 2022-01-21 19:21:46 +01:00
programs todo 2022-04-12 20:43:45 +02:00
py rename 2022-03-01 20:55:10 +01:00
ts/client reload for mangoaccount 2022-04-13 06:37:36 +02:00
.gitignore Some progress on initial ts example 2022-03-31 15:58:18 +02:00
Anchor.toml fix address 2022-03-30 17:41:37 +02:00
Cargo.lock poc keeper 2022-04-09 21:18:07 +02:00
Cargo.toml poc keeper 2022-04-09 21:18:07 +02:00
README.md update 2022-04-01 10:23:47 +02:00
devnet_setup.sh empty devnet setup 2022-03-31 21:04:45 +02:00
idl-fixup.sh Idl: Add a script to replace type aliases with the underlying type. 2022-03-31 11:53:21 +02:00
release-to-devnet.sh fixes from cr 2022-04-12 16:53:45 +02:00
update-local-idl.sh fixes from cr 2022-04-12 16:53:45 +02:00

README.md

Development

  • rust version 1.59.0 (9d1b2106e 2022-02-23)
  • solana-cli 1.9.5
  • anchor-cli 0.22.0
  • npm 8.1.2
  • node v16.13.1

Devnet deployment - m43thNJ58XCjL798ZSq6JGAG1BnWskhdq5or6kcnfsD

TS client - see ts dir, and ts/example.ts, run as yarn ts-node ts/example.ts

Module structure

As and when we move to a more complete project, we should think of having multiple modules e.g. core/shared, spot, perpetuals, etc., and then each would have its own instructions and state sub module. Goal is that new contributors find relevant code easily and can navigate easily.

programs
└── mango-v4
    ├── Cargo.toml
    ├── Xargo.toml
    └── src
    │    ├── error.rs
    │    ├── instructions # instructions go here, each instruction gets an individual file
    │    │   ├── initialiaze.rs
    │    │   └── mod.rs
    │    ├── lib.rs
    │    └── state # state goes here, each account state gets an individual file
    │       └── mod.rs
    └── tests # rust tests, TODO

How to open and manage pull requests

  • when in doubt dont squash commits, specially when merge request is very large, specially if your branch contains unrelated commits
  • use the why along with what for commit messages, code comments, makes it easy to understand the context
  • add descriptions to your merge requests if they are non trivial, helps code reviewer watch out for things, understand the motivation for the merge request