To lower the barriers to entry, all of our course content is in Markdown located in the docs
directory. We then use mkdocs to generate the course pages (thank you Kevin Bluer!).
Markdown is what this file and Github README.md files are written in. If you need some help with Markdown, please see this Markdown cheatsheet.. One note, to make sure links open in a new window, be sure to add {target=_blank}
at the end of a link. It will look like this:
[Text being linked](www.linkaddresshere.com){target=_blank}
We use github issues for our issue tracking and project management.
We use the Forking Workflow method of open source contribution. This method allows projects to scale well with not alot of complexity.
See the primer on setting up repos.
-
Fork the
ConsenSys-Academy/Blockchain-Developer-Bootcamp
repository. -
Clone the forked repository from your GitHub profile to your desktop.
-
Add the remote repositories for origin and upstream.
Learn more about working with forks 🍴.
Open a issue. Issues are good! They are used to point out errors and suggest new features.
Read the issue. Ask any questions in the issue thread. Mention the issue that you'd like to work on this to avoid double work.
Before starting on work on the issue, make sure your code is up to date.
- Check your branch:
git branch
- Checkout the main branch of your local repo:
git checkout main
- Fetch changes from the
upstream
main repo:
git fetch upstream main
- Rebase the changes from the
upstream
master repository into your local repo:
git rebase upstream/main
- Re-synchornize
main
intodev
by merging:
git checkout dev
git merge origin/main
git push
Learn more on how to use branches 🌳.
- Check for the latest code and update.
- Branch off of
dev
. - Name your branch based on intent. See the style guide below.
- Write code.
- Commit code. See style guide.
- Push the branch to
origin
. - Open a pull request against
staging
with the branch. Please note, this is notmain
butstaging
to help us save on Github Action minutes, we're doing our best to batch-committ changes.
To keep our commit history clean, we follow these simple rules.
Types of branches:
main
- main branch that is live.staging
- branch you make your PRs against.feat/FEATURE
- for features.fix/THING1
- hot fixes.bug/THING2
- bug fixes.
Make sure to:
- branch your
feat/
,fix/
, orbug/
branches offmain
.
-
The First
-m
: High-level description
"Added| Edited | etc. FILE"
-
Second
-m
: Describe the code in under 240 characters.
Added x feature in sample.js and updated README.md in the section required.
git commit -m "Feature. Added GIF to README.md -m "Added the GIF was required to explain what is Solidity."
Make sure to reference the issue that you are closing.
Example: Closes #7 - Add CONTRIBUTING.md
Keep it brief but descriptive. Use links. Avoid jargon.
When possible, use pictures or gifs.
Open an issue or join our discord.