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 🙏

© 2025 – Pkg Stats / Ryan Hefner

experiment-boilerplate-web

v0.5.2

Published

Headache-free boilerplate for web experiment development using Experiment.js

Downloads

2

Readme

Experiment JS

Install

Requirements

You need to install Node.js (https://nodejs.org/) and NPM (installed with node). In your terminal you will now have access to npm which allows you to install modules stored on the internet (like experiment.js) and keep track of versions for you if those are updates.

Optional: Yarn is an alternative to NPM that build over it, sometimes makes downloading module faster by keeping some version cached. You can install with > npm i -g yarn

Clone / Install / Build / Launch Server / 🤘🏽

In your terminal, go to the parent folder where you want to copy the boilerplate, then clone the repository.

cd to/the/parent/folder
git clone http://www.github.com/albertbuchard/experiment-boilerplate-web nameOfNewFolder`
cd nameOfNewFolder
npm install
npm run build
npm run devserver

Then open your favorite browser to http://localhost:8080

Webpack

With webpack, all your javascript files will be transpiled using babel to make it super compatible accross browsers. The webpack config is preset for you in webpack.config.babylon.js . For most use case you should not have to modify this file except to change the name of you task. The builder.js file serves as the single input point for webpack, it loads the startup.js file in which your should put all your set up code. Then webpack will traverse the dependencies on its own to make sure everythin if packed in a final unique file that it will store at /lib/taskName.max.js

With the current configuration, to use webpack write in your terminal :

Build continuously lib/taskName.max.js everytime you change something: npm run build

Build constinuously a minified version of your task for production lib/taskName.min.js (hides codes and make it lighter): npm run prod

Create a local node server: npm run devserver

PhP local server

If you prefer a local php server - if you have install php on your machine (or if you have a mac) you can write in your terminal: npm run phpServer

If you have installed a mysql local server you could also try the experiment-apis

Folder structure

  • /assets stores all your resources, images, text etc...
    • /sounds
    • /sprites
    • /json
    • ...
  • /lib store the webpack processed file
    • taskName.max.js final non minified version of your app
    • taskName.max.js.map mapping allows for easier debugging
    • taskName.min.js production version you should use on your public server
  • /src stores your javascript code
    • /startup
      • startup.js Entry point file where you should set up the task (load ressources, setup scenes and parameters, handle connection/login etc...)
    • /scenes
      • /nameOfTheScene where file for the scene nameOfTheScene are stored
        • /functions holds general function used across the scene
          • generalFunctions.js
        • /states holds the functions relative to each states
          • running.js
          • state2.js
          • state3.js
          • ...
        • NameOfTheScene.js holds the scene generator that will be registered in your task
    • /utilities
      • taskUtilities.js stores function useful for several scenes / for the experiment in general
    • config.js a file for general config. For now decides wehter or not debug mode should be on (verbose logs in the console, should be false on the public server)

Authors

  • Albert Buchard, Bavelier Lab in Geneva
  • ❤️ Your name here ❤️ ...

Licence

Apache-2