Skip to content
Gulp-based workflow for JS13KGames projects
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
dist
src
.eslintrc.yml
.gitignore
.stylelintrc
gulpfile.js
package-lock.json
package.json
readme.md

readme.md

JS13kGames Boilerplate

Boilerplate for JS13kGames projects. Fork of js13k-starter.

This is what works for me; it might work for you, but it might not. Feel free to modify this to fit your needs.

Features

Installation

git clone https://github.com/shreyasminocha/js13k-boilerplate

mv js13k-boilerplate [NAME OF YOUR GAME]
cd [NAME OF YOUR GAME]

rm -rf .git
npm install # install devDependencies

rm readme.md
$EDITOR package.json # change package details

Usage

  • gulp build / npm run build
    • Concatenate CSS files (src/css/*.css)
    • Concatenate JS files (src/js/*.js)
    • Minify HTML, CSS and JS to dist/index.html, dist/style.min.css and dist/script.min.js respectively
    • Correct links to CSS and JS files in dist/index.html
    • Optimize images in src/images using gifsicle, jpegtran, optipng, svgo and place them in dist/images.
    • Compress dist to zip/game.zip
    • Warn if zip/game.zip is larger than 13kb
  • gulp test / npm test
    • Lint HTML, CSS, JS and fail on error.
  • gulp
    • Run gulp build
    • Watch src for changes and build on change.

Server

I prefer to run the game using hotel. I've set hotel to run the game from dist using http-server.

cd dist
hotel add --name "game" 'http-server -p "$PORT" -c-1'

Since I've set up .localhost domains for hotel apps, I would be able to access the game at game.localhost.

You might prefer running a server through gulp. Feel free to modify gulpfile.js in your clone to fit your needs.

License

Licensed under the MIT License.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.