MDo is a free, open source to-do app built to live inside your editor.
Read the full documentation: https://mdo-org.github.io/mdo/
This is the monorepo for the MDo project. It contains:
- mdo-core
- mdo-cli
- "official" flows
- "official" plugins
- Install node.js (v8.14.0 preferred)
- Install lerna:
npm install -g lerna - Run
lerna bootsrapto install all dependencies
# Run all tests
npm run test
# Run a single test
npm run test <filename or path>
eg:
npm run test mdo-core
# Run test using a debugger
npm run test-debug <filename>
eg:
npm run test-debug mdo-core
This project is configured to run prettier when you do a git add (using husky and lint-staged), so you don't need to worry about formatting code.
However, we still use eslint to capture syntax errors. The .eslintrc.json file is set to extend eslint-config-prettier, so eslint will only report on syntax errors instead of enforcing formatting.
Note:
Some editors will fail to load eslint from a pacakage's subdirectory, and will default to the global eslint - which might not have all the plugins you need.
If that happens, you'll need to manually specify the path to the correct eslint.
In my case, I had to create a local .vimrc file with:
let g:syntastic_javascript_eslint_exec='/home/alexishevia/Projects/Personales/mdo/node_modules/.bin/eslint'
Run the following to publish all packages:
lerna run build && lerna version
NPM_CONFIG_OTP=your_npm_otp lerna publish from-git
See: lerna/lerna#1643
The home page for the "MDo" project as a whole lives in: https://mdo-org.github.io/mdo/
It is generated from this repo's docs directory using Docsify.
You can run Docsify locally with:
npm run docs
Note:
Any PR that changes the core MDo architecture should also include updates to the Docsify documentation (to avoid code and docs going out of sync).
Besides the "top level" documentation, every package should have its own independent README explaining how the package is used. The package-level README will be exposed on the npmjs landing page for that package.