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

footwork

v2.0.3

Published

A solid footing for web applications.

Downloads

14

Readme

footwork.js

Build Status Test Coverage Bower version npm version

Build Status

What is Footwork?

Footwork is a frontend framework based on KnockoutJS that aims to be fully featured, expressive, and easy to use while remaining as idiomatic and compatible with Knockout and its code base as possible.

It has features such as:

  • Custom elements/components and declarative view models
  • Automatic resolution and binding of declarative resources
  • Page routing with unlimited outlet support
  • Transition effect and animation system including sequenced animations
  • Does not require a build system or module loader (but it works great with them)
  • Inter-module communication and state sharing
  • Much, much more...

For more details see:

Join the chat at https://gitter.im/footworkjs/footwork

Downloading / Installing Footwork

  • You can install via bower:

    bower install footwork --save
  • or you can install via npm:

    npm install footwork --save
  • or you can download/use it directly via CDN:

    https://unpkg.com/footwork/dist/footwork.js

    https://unpkg.com/footwork/dist/footwork.css (optional, for animations)

For information on how to use FootworkJS please see the main website.

Issues

Please keep the issue tracker limited to bug reports, feature requests and pull requests. If you are reporting a bug make sure to include information about which browser and operating system you are using as well as the necessary steps to reproduce the issue.

Contributing

Contributions are encouraged, please feel free to fork the repository and begin making changes.

General Flow

  1. Fork the repo on GitHub
  2. Clone the project to your own machine
  3. Commit changes to your own branch
  4. Push your work back up to your fork
  5. Submit a Pull request to the dev branch so that your changes can be reviewed

Submission Notes

  • Please continue the coding style expressed in the rest of source.
  • If creating a new feature, please also add the corresponding test(s) for it.
  • In your pull-request, please do not include an updated dist/ build (generated via gulp dist), that is a final step done prior to release.

Website and Documentation Contributions

Contributions towards the website and/or documentation are also encouraged. There are companion repositories for both of these, please contribute to them directly:

Building Footwork from source and running tests

  1. Clone the repo from GitHub:
git clone https://github.com/footworkjs/footwork.git
cd footwork
  1. Install Node.js and NPM (if needed):

This is platform specific. Your OS may already include it, however if not please see: Installing Node.

  1. Install gulp globally (if needed):
sudo npm install -g gulp-cli
  1. Acquire build dependencies:
npm install
  1. Run a gulp task to build/test/etc:
  • Build everything (output in /build):

    gulp
  • You can include the ---debug option on any of the build/testing tasks to include/generate a source map in the output:

    gulp --debug
  • Build everything and run tests (coverage report output in build/coverage-reports):

    gulp tests
  • Watch for changes in the source code and automatically rebuild:

    gulp watch
  • Watch for changes in the source code/tests and automatically rebuild + run tests:

    gulp watch-test
  • Build everything, minify, and deploy to /dist (for release):

    gulp dist
  • To debug the tests in your own browser:

    • Make sure your build is made without being instrumented for test coverage by running the default build task (otherwise debugging might be a bit difficult):

      gulp
    • Install karma (if needed)

      sudo npm install -g karma-cli
    • Start karma and then you can access/debug the tests from your browser at: http://localhost:9876/debug.html

      karma start

License

MIT license - http://www.opensource.org/licenses/mit-license.php