Code Monkey home page Code Monkey logo

jqapi's Introduction

jQAPI - Alternative jQuery Documentation Browser

All development and issue handling of jQAPI V3 is happening in the jqapi/jqapi repository. See you there! :)

What is jQAPI? / Why was it born?

This is a alternative interface to the official jQuery documentation. First and foremost I want to point out that the content is solely the work of the awesome jQuery team and contributers (used under the MIT license).

Back in 2011 I started to work professionally as a web-developer and I was mainly using jQuery and Ruby on Rails. When I was navigating the RoR docs, I was using RailsAPI, which is also a alternative browser to the official documentation. A big shoutout goes to [whoever](made railsapi.com), the creator of the RailsAPI website. jQAPI was heavily inspired by it.

As much as I loved the speed of finding things I needed in RailsAPI, I hated how much time I had to spend on the official jQuery docs to find the information I was looking for. Back then there was a different website for the jQuery docs, but even with the 'newer' interface (which looks sleak, no doubt) I am not entirely happy.

To cut a long story short: I built a interface modeled after RailsAPI in a couple of days, because I wanted it. Once shared with the world it was very well accepted and used among many developers.

Ever since I released a couple of versions of jQAPI which was built with Ruby as the back-end (the scraper, XML -> JSON part) and JavaScript/jQuery for the front-end.

Now you are looking at the all-JS version of jQAPI, which uses Node.js to transform the content. On top of that, this version includes extended documentation for the project and is mostly covered by tests. That way I hope more people will contribute to the project.

It was quite for a while because I was busy with life and different projects. But with your help (feedback, bug reporting, contributing) I hope that we can keep it active and save developers around the world time looking for needed information, and therefore give them more time to write actual code.

Features

How does it work

Development

Getting started

Tasks

All tasks can be executed with npm run <task-name>, alternatively with yarn run <task-name>, if you are a cool kid.

clean

Removes the ./www folder and re-creates it.

copy:html

Copies all ./src/*.html files to ./www.

copy:assets

Copies ./src/assets to ./www/assets.

copy

Runs copy:html & copy:assets.

build:js

Bundles the JS with Browserify and applies the Babelify transform which transpiles the ES2015 code.

The entry file is ./src/index.js and the output file is ./www/build.js.

build:js:prod

Same as build:js, but minifies the output with Uglify.

build:css

Bundles and compiles the CSS with Stylus.

The entry file is ./src/index.styl and the output file is ./www/build.css.

build:css:prod

Same as build:css, but minifies the output with CSSO.

build

Runs build:js & build:css.

build:prod

Runs build:js:prod & build:css:prod.

watch:js

Same as build:js, but watches the build for changes and incremntally re-builds it with Watchify.

watch:css

Same as build:css, but watches any ./src/**/*.styl for changes and re-runs the build:css task with Chokidar.

watch

Runs watch:js & watch:css.

serve

Serves the ./www folder with BrowserSync. Whenever one of the ./www/build.* files changes, the browser will automatically reload.

update

Runs ./lib/update.js which will clone/update the official jQuery documention repo, transforms the XML to JSON and builds the ./www/entries.json index.

update:daemon

Same as update, but runs continuously. TODO: forever

test:lib

Runs all the lib tests in ./test/lib with Mocha.

test:frontend

Runs all the frontend tests in ./test/frontend with Karma. It also will watch for changes in in the tests and re-runs them without restarting the headless browser.

test:frontend:once

Same as test:frontend, but will only run once.

test

Runs test:lib & test:frontend:once.

start

Runs copy & serve & watch. If you want to work on jQAPI, run this tasks. But keep in mind that the clean task must have been run before if it's the first time you run start.

production

Runs clean & copy & build:prod & update. If you want to generate a fresh release for production, run this task.

lint

This will lint all *.js files with Standard.

Writing Tests

License

Licensed under the MIT License.

jqapi's People

Contributors

mustardamus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

jqapi's Issues

Takeover visualjquery.com domain?

Over time, the "official" jQuery API browsers run by the foundation at visualjquery.com (showing 1.2.6) and api.jquery.com/browser (no longer works) have fallen out of date, and we in @jquery are trimming down the portfolio of sites we maintain. We think jqapi.com is a great tool, and we'd like to know if you'd be willing to either have us forward requests and links to those sites to jqapi, and/or transfer the visualjquery.com domain to you so you could perform said redirect yourself.

Thanks for your great work and let me know if and how you'd like to proceed!

Before release: Update Tasks Naming, Add Tasks

  • Instead of -, use :, eg update-deamon -> update:deamon
  • Add clean task which removes public and creates empty directory
  • Add copy:asset task which copies assets directory
  • Add parent copy task which copies *.html and assets
  • Add parent build task which builds the css and js
  • Add build:js:prod & build:css:prod which builds the js and css, but also minifies it
  • Add parent build:prodwhich creates the production build

Before release: README

  • Create README.md
  • Short description what jQAPI is about
  • Short history
  • MIT License (also add file)
  • Describe tasks

jqapi.com timing out

http://jqapi.com/ doesn't seem to be accessible anymore.

~/$ ping jqapi.com
PING jqapi.com (205.186.152.154) 56(84) bytes of data.
^C
--- jqapi.com ping statistics ---
42 packets transmitted, 0 received, 100% packet loss, time 41962ms

[1]+  Done

I appreciate the project hasn't been updated/maintained in a while, so it would be nice to know if you guys are still hosting it or not

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.