Skip to content

Latest commit

 

History

History
97 lines (61 loc) · 4.3 KB

File metadata and controls

97 lines (61 loc) · 4.3 KB

Contributing to Mathbook

Hey there, thanks for showing interest in making a contribution towards Mathbook. We are always looking to get more hands on deck to help make Mathbook the best math resource available on the internet.

In what ways can I contribute ?

There is always something to do to help maintain and grow Mathbook. You can,

  • Create a tutorial
  • Review a tutorial submitted for review
  • Find and report bugs
  • Fix Bugs
  • Write documentation
  • Write tests
  • Provide feedback ( positive or negative )

I want to create a tutorial for Mathbook.

You can read up on how to create and submit a tutorial here.

I want to review a tutorial submitted for review.

You can read up on the process currently set up for reviewing a tutorial here.

I want to report a bug I found.

No matter the size of the bug, making the contributors aware of the bug is invaluable, so we thank you in advance.

The Mathbook project is hosted on GitHub and there is an issues section where you can create an issue and tag it as a bug.

Please make sure to follow the bug reporting guidelines outlined here.

Click here to go the issues page for Mathbook

I want to fix/squash some bugs

Fixing bugs is an integral part of maintaining Mathbook. If it's your first time, we recommend starting off with the smaller bugs.

If and when you get comfortable fixing bugs and making changes to the source code, you are more than welcome to making the jump towards squashing bigger bugs.

Click here to view the current list of reported bugs

I want to write some documentation

Documentation is very important for new and existing contributors of Mathbook because it serves as a reference for understanding how Mathbook works under the hood.

Writing documentation requires knowledge of the inner workings of Mathbook and the reasoning behind the decisions made in the architecture and source code.

The documentation for Mathbook lives here

We recommend reading through some parts of the docs to get an idea of what's needed to contribute to the docs, ie) formatting, providing examples and maybe even referencing some part of the source code

I want to contribute by writing some tests

Testing is important to the overall success of Mathbook and all software projects in general. Tests give us visibility into the effects of the changes we make into the source code that might be due to a simple refactor or implementing a new feature.

Always remember, if you find a bug, then that means you missed a test scenario.

For Mathbook, the testing framework we use is Chai and our test runner is Mocha. We also use Sinon for stubbing/mocking and setting up spies.

Check out the tests folder in the source code to get an idea of how we structure our test suites.

You can also check out the documentation to learn about the reasoning behind the different types of tests that we write.

I want to provide some feedback

Your feedback is always welcome. Do you have an idea for a new feature or think that some functionality could be improved, let us know.

You can create an issue on GitHub and tag the issue with the proper tag that reflects your feedback (we have a bunch of tags, pick one that best represents your feedback).

Click here to go the issues page and provide some feedback

Contributor Behavior

All contributors of Mathbook are expected to be respectful and considerate towards one another. There are no silly questions or suggestions, so feel free to share anything that comes to mind.

If you plan on reviewing tutorials, please keep all comments and feedback during the review process constructive. Any personal attacks or name calling will not be tolerated.

The common goal we all share is to grow the community of contributors and make Mathbook the best online resource for learning mathematics.