Skip to content

nitin42/mathsteps

This branch is 17 commits ahead of, 47 commits behind google/mathsteps:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jun 30, 2017
bfdf4b4 · Jun 30, 2017
Jun 30, 2017
Jun 30, 2017
Jan 30, 2017
May 4, 2017
Jun 30, 2017
Feb 3, 2017
Jun 30, 2017
Feb 9, 2017
Dec 19, 2016
Feb 13, 2017
Apr 3, 2017
Mar 13, 2017
Jun 30, 2017
Feb 3, 2017
Jan 1, 2017
Mar 27, 2017
Jun 30, 2017

Repository files navigation

A step by step solver for math

Join the chat at https://gitter.im/mathsteps-chat/Lobby Build Status

https://www.youtube.com/watch?v=iCrargw1rrM

Requirements

Mathsteps requires Node version > 6.0.0

Usage

To install mathsteps using npm:

npm install mathsteps
const mathsteps = require('mathsteps');

const steps = mathsteps.simplifyExpression('2x + 2x + x + x');

steps.forEach(step => {
	console.log("before change: " + step.oldNode.toString());   // before change: 2 x + 2 x + x + x
	console.log("change: " + step.changeType);                  // change: ADD_POLYNOMIAL_TERMS
	console.log("after change: " + step.newNode.toString());    // after change: 6 x
	console.log("# of substeps: " + step.substeps.length);      // # of substeps: 3
});

To solve an equation:

const steps = mathsteps.solveEquation('2x + 3x = 35');

steps.forEach(step => {
    console.log("before change: " + step.oldEquation.print());  // e.g. before change: 2x + 3x = 35
    console.log("change: " + step.changeType);                  // e.g. change: SIMPLIFY_LEFT_SIDE
    console.log("after change: " + step.newEquation.print());   // e.g. after change: 5x = 35
    console.log("# of substeps: " + step.substeps.length);      // e.g. # of substeps: 2
});

To see all the change types:

const changes = mathsteps.ChangeTypes;

Contributing

Hi! If you're interested in working on this, that would be super awesome! Learn more here: CONTRIBUTING.md.

Build

First clone the project from github:

git clone https://github.com/socraticorg/mathsteps.git
cd mathsteps

Install the project dependencies:

npm install

Test

To execute tests for the library, install the project dependencies once:

npm install

Then, the tests can be executed:

npm test

About

➗ Step by steps math solutions for everyone

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%