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

kabuki-motion

v0.0.4

Published

boilerplate for web animators

Downloads

6

Readme

npm version

Deploy

Motivation

Kabuki-motion is a starter project for publishing a single-page web app with web animators in mind. It creates both a react/flux development environment and live production server.

The react application comes pre-built with one-directional flux architecture and example components that make use of the React-Motion library.

The aim of this repo is to incorporate the best practices to building non-trivial apps with Reactjs v0.14 that include Heroku support.

Other boilerplates that include Heroku support also require the MongoDB addon, which is free now, but may not be in the future. This library does not require any Heroku addons.

| React + Redux + WebPack + Heroku |

Heroku Demo Site

http://kabuki.venicetexas.com/

The Technology Stack

Server

  • Heroku
  • Node
  • Express

Development Environment

  • Webpack
  • Babel
  • Sass
  • ESLint
  • Uglifiy

Why Webpack?

While Gulp is an easier to use syntax, Webpack provides a more professional approach and is quickly gaining market share.

Client

  • React v0.14
  • Flux Architecture with Redux
  • React-Motion for preformant animation

Why redux?

After working with both redux and alt, I found redux more difficult to use, but providing specific advantages. Redux's reducers provide a consistent and scalable place for the data juggling logic that alt leaves unorganized in various data Store. In the long term, redux is more scalable because it has better separation of concerns.

Why React-Motion?

For 95% of use-cases of animating components, we don't have to resort to using hard-coded easing curves and duration. Set up a stiffness and damping for your UI element, and let the magic of physics take care of the rest. This way, you don't have to worry about petty situations such as interrupted animation behavior. It also greatly simplifies the animation API and provides a powerful alternative to React's TransitionGroup.

Installation

  1. Install npm
  2. npm install
  3. npm run build this will build the files one time
  4. npm start to run the server in development mode
  5. Goto http://localhost:5000 in your browser

Running the Local Development Environment

  1. npm run watch to run webpack in watch mode
  2. in a new terminal window npm start to run the server in development mode
  3. Goto http://localhost:5000 in your browser

Or run npm run production to run the server in production mode, without linting and source maps. The raw framework is about 250k, everything else is content.

Running the Server on the Web

  1. Install the heroku toolbelt
  2. heroku create
  3. heroku apps:rename newname
  4. git push heroku master
  5. heroku open

Directories

/client contains the react files that construct the site. Run webpack while editing these files to see your changes live in the browser. /client/App.jsx is the main point of entry for the React application.

/public contains the public, static resources served by the server, and the rendered application javascript and css files.

/server contains files related to the node server. /server/app.js creates the node server. /server/routes.js creates the node server's routing. /server/view.ejs is the HTML view for the React single-page application.

How to Contribute

  1. Any suggestions/improvements/comments/bugs can be in the form of a Pull Requests or Github issue.
  2. Coding guidelines:

Credits

react-motion - a spring that solves your animation problems

react-webpack-node - Alt, Immutable, React, Sass, Webpack, Node, MongoDB, Heroku

react-flux-starter - Flux, React, Less, Gulp, Node, Heroku

License

MIT