npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@code-dot-org/craft

v0.2.2

Published

Top-down 2D game engine for the Craft app type. See NOTICE for restrictions on use.

Downloads

3,389

Readme

travis-ci codecov

Note: proprietary materials fall under different rules, per the LICENSE.

Local Setup (all platforms)

Node.js

You will need to first install Node.js

Setup Your Project

Check this project out from source:

git clone [email protected]:code-dot-org/craft.git
cd craft

Next, inside the project, you need to install the project's various NPM dependencies:

npm install

And you should now be ready to spin up a development build of your new project:

npm run dev

A browser should open with a Minecraft Hour of Code test page displayed:

Developing

All of the files required to run the game live in the src folder, including any javascript, images, HTML (ejs templated), and CSS. When the default npm build task is invoked, these files are compiled to a dist directory.

Files in the dist directory will always be generated and excluded from Git by the .gitignore, as such these will removed without warning and should generally not be edited.

What's being used?

Recommendations

  • If you intend to store development assets (i.e PSD's, Texture Packer files, etc) inside your project, store them outside of the src directory to avoid unnecessary copying during dev builds.

Resources for:

Phaser.js

Available Targets

npm run

Display a list of all scripts that can be run with NPM. Notable options include:

npm run build
npm run dev

Configures and runs an un-minified development build optimised for fast watch performance with source maps and live reload. Opens browser window pointing to a test page on first build.

npm run lint
npm run test:unit

Updating or adding libraries

The project comes with an unminified version of Phaser with arcade physics, this can be replaced if you require updates or one of the alternate physics engines.

You can install new npm-compatible libraries with:

npm install --save my-package-name

Then require it in your code with e.g. import MyCoolTimesavingLibrary from 'My-Cool-Timesaving-Library'.

Some interesting npm libraries: list of browserify-friendly game modules, @substack's npm repositories.

Raw vendor packages can be added to src/test-build-only and added directly to src/index.html.ejs.

If adding new libraries that aren't CommonJS compatible, you'll have to additionally update the Browserify shim configuration in our package.json.

Coding style

We will try to follow the Airbnb ES6 styleguide.

Acknowledgements

Boilerplate based on the Phaser.js grunt/browserify boilerplate, which was based on 1 and 2.