Update the `package.json` file to properly specify the dependency on
`crafting-guide-common` by referring to it's GitHub repository. This
should allow someone working on this package to have NPM donwload it
like anything else (including CircleCI).
Also change the `link-deps` Grunt command to `use-local-deps` and
make it remove the NPM-downloaded version and replace it with a
symlink to a local copy.
1. All tests have been converted into regular command-line mocha
tests (instead of running in the browser), and the deployment
script has been changed to automatically fail any `--new`
deployment which doesn't pass.
2. Several small class (e.g., `Logger`) have been moved into a common
module, `crafting-guide-common` so that they may be shared between
the client and server.
Any link inside a item detail page's markdown description which does
not have a URL will be assumed to be the name of an item covered by
Crafting Guide and an URL will be added to reference the appropiate
browse page.
When a here-doc contains an empty line, any whitespace it contains
should be ignored for purposes of determining the amount of leading
whitespace to trim from each line.
A pass-through recipe is one which requires an item as input which is
carried through to the output (e.g., using a Golden Railway Ticket to
create a regular Railway Ticket in Railcraft). As these aren't really
recipes, they should not be listed as such in the item detail page.
When a mod is disabled, a naïve search for the item will yield an
empty set. Instead, ignore whether a mod is disabled when looking for
the principle item for a given page.
This fixes a regression where recipes for vanilla Minecraft items
(e.g., Iron Ingot) added by mods (e.g., Pulverized Iron to Iron
Ingot) didn't show up on that item's detail page.
When a visitor arrives at the site for the first time, this will
ensure they have a certain set of mods on/off. Right now, that means
IC2-Classic is off by default, and everything else is on.
* Update build process to *not* copy over prerendered pages during a
regular build (only during a `dist` build)
* Add dependency on npm "markdown" package and include it in the
scripts loaded in the default layout
* Update the Item model to be able to load from a *.cg file
* Add an ItemParser to process the `item.cg` file
* Update the general parser to be able to work with HereDoc-style
text blocks
* Add a markdown-specific stylesheet
* Add a sample of the `item.cg` file format (Advanced Crafting Table)
* Change all internal links to use URLs ending in `/`
* Add the prerender script which uses PhantomJS to pre-render the
HTML for all possible pages in the system
* Change the build process to incorporate the pre-rendered files
* Update the sitemap script to generate the new URLs
Add a SimpleStack model which is identical to the regular Stack model
except for not being a Backbone.Model subclass. Since so many stacks
are created during mod version parsing, this makes about a 50%
difference in performance during loading.