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

@first-lego-league/fllscoring

v0.7.6

Published

fll scoring application

Downloads

163

Readme

Build Status Coverage Status Dependency Status devDependency Status

en_US challenge screenshot

FLL Scoring

To have a look at what we are at:

  • see Testing. No guarantees.
  • or check out our live Live demo. Even less guarantees.

Using

Currently the scoring application can only be reliably used as a hosted service. To use:

  • set up a server running nodejs nodejs.org
  • download the source or clone the repository using git.
  • Open a command prompt and navigate to the directory where you cloned the repository or extracted the downloaded zip-file.
  • Execute the following command: npm install (this installs all dependencies. It's a neccesarry step for each install)
  • Run node localserver.js then open localhost:1390 in your browser
    • to specify another port, use node localserver.js -p 8000
    • to add basic authentication, use node localserver.js -u username:password

In the near future, we plan to have "ready to go" software available as:

  • executable, for Windows, Mac OS and Linux
  • app, for iOS, Android and windows
  • a hosted service, as described above

Contributing

To contribute to this repository, please make a fork, make your changes and submit a pull request.

This way of work allows us to maintain proper code quality, which is important when working with a large amount of people on the same project. Feel free to join the discussion on the issues page

The best way to work on a feature or a bug is to follow these steps:

  • fork the repository to your own github account
  • if already forked, make sure your fork is up to date with the base repo
  • create a new branch for your feature or bugfix
  • work
  • test
  • create a pull request to merge your development branch into a branch in the base repo
  • we will review your pull request, when ok, we will merge it into master

In your own fork, you can create any branch structure you like, however, some best practices / tips are:

  • use git flow to structure your branches
  • keep pull requests small and concise. Try to limit a pr to only one feature / bug fix. We'd rather have many small pull requests than one large one
  • keep your fork up to date with the base repo on a regular basis, by rebasing against it. This makes sure your pull requests will merge nicely

Development

Prerequisites

  • nodejs nodejs.org. Make sure you have a recent version (>6) to get npm version >3.
  • grunt (npm install -g grunt-cli)

Steps

  • Clone the repository
  • npm install

Run local

This is mainly used for development.

  • node localserver.js then open localhost:1390/nocache.html
    • to specify another port, use node localserver.js -p 8000
    • to add basic authentication, use node localserver.js -u username:password
    • to specify a data dir use node localserver -d datadir Relative paths are relative to the localserver script. Absolute paths are, well, absolute. Defaults to data
  • note that we load nocache.html to circumvent the offline cache mechanism

Testing

  • run karma start
  • or run grunt karma

Building

  • for a desktop build: grunt nwjs
  • for a mobile build: grunt phonegap
  • to build only one of iOS or Android, use grunt phonegap:ios or grunt phonegap:android respectively

For the phonegap build, copy pgbuildconfig.example.json to pgbuildconfig.json and adjust your phonegap build credentials. You can create an account on phonegap build. Also, make sure you you copy .cordova/config.example.json to .cordova/config.json and insert your application ID from phonegap build into it. The first time you build the app you must comment the app ID line out, it will generate one for you. Afterwards check the Phonegap build website for the generated app ID.

NOTE: remove the comments in the copied file, as it is not valid JSON as it is.

For iOS, see Building for iOS

(Only) when XML definition files have changed:

  • run grunt challenge

This will rebuild html, pdf and js versions of the challenge. This can also be done individually if you'd wish:

  • run grunt html
  • run grunt pdf
  • run grunt js

These files are also included in the repo: challenges/html, challenges/pdf, challenges/js

Documentation

TODO's

See case issues

Help is welcome. Please comment on the case if you plan to start working on one.

License

This projected is licensed under the terms of the GNU GPL v2.0 licenses

Basically, it allows users to legally copy, distribute and modify software. This means you can:

  • Copy it onto your own servers, your client’s servers, your own computer, pretty much anywhere you want. There’s no limit to the number of copies you can make.
  • Provide a download link on your website. Put the software on a bunch of thumb drives and give them away. Print out the source code and throw it from the rooftops (please don’t, though, because that would waste a lot of paper and make a mess). Charge a fee to distribute the software.
  • If you want to charge someone to provide the software, set it up on their website or do anything else related to it, you can do so. But, you must give them a copy of the GNU GPL, which basically tells them that they could probably get the software elsewhere for free. Best to be up front about that, and about why you’re charging them.
  • If you want to add or remove functionality, go ahead. If you want to use a portion of the code in another project, you can. The only catch is that the other project must also be released under the GPL. Ideally we would want you to share your improvements back with us on this GitHub.
  • We welcome your feedback but please remember that this software comes with no guarantees. We are dedicated volunteer and experienced software developers and will do our best make sure we make a valuable and reliable contribution to the community. However the use of this software is at your own risk.

Authors