problemify

1.1.2 • Public • Published

problemify

npm node CircleCI Coveralls styled with prettier

Create problem and solution versions of a directory

Install

$ npm install -g problemify

Usage

$ problemify <directory>

Supported file extensions:

  • .js
  • .html

Excluded files/directories:

  • .DS_Store
  • .git
  • bower_components
  • dist
  • jspm_packages
  • node_modules
  • tem
  • temp

Problem-only code

Wrap JavaScript problem code with /* start problem and end problem */ comments.

/* start problem
const print = function (value) {
  // your code here
 
};
end problem */

Wrap HTML problem code with <!-- start problem and end problem --> comments.

<!-- start problem
<div class="problem"></div>
end problem -->

Solution-only code

Wrap JavaScript solution code with // start solution and // end solution comments.

// start solution
const print = function (value) {
  console.log(value);
};
// end solution

Wrap HTML solution code with <!-- start solution --> and <!-- end solution --> comments.

<!-- start solution -->
<div class="solution"></div>
<!-- end solution -->

Shared code

Any code that is not surrounded by problem or solution comments will be included in both -- the problem and the solution -- repositories.

Examples

$ problemify kessel-run
$ ls
kessel-run    kessel-run-problem    kessel-run-solution

kessel-run

// start solution
const print = function (value) {
  console.log(value);
};
// end solution
/* start problem
const print = function (value) {
  // your code here
 
};
end problem */
 
const pilot = 'Han Solo';
print(pilot);
// Han Solo
<body>
  <!-- start solution -->
  <div class="solution"></div>
  <!-- end solution -->
 
  <div class="x-wing"></div>
 
  <!-- start problem
  <div class="problem"></div>
  end problem -->
 
  <div class="y-wing"></div>
</body>

kessel-run-problem

const print = function (value) {
  // your code here
 
};
 
const pilot = 'Han Solo';
print(pilot);
// Han Solo
<body>
 
  <div class="x-wing"></div>
 
  <div class="problem"></div>
 
  <div class="y-wing"></div>
</body>

kessel-run-solution

const print = function (value) {
  console.log(value);
};
 
const pilot = 'Han Solo';
print(pilot);
// Han Solo
<body>
  <div class="solution"></div>
 
  <div class="x-wing"></div>
 
 
  <div class="y-wing"></div>
</body>

Package Sidebar

Install

npm i problemify

Weekly Downloads

1

Version

1.1.2

License

MIT

Last publish

Collaborators

  • bcmarinacci