1
0
Fork 0
mirror of https://github.com/sbrl/thebigwarehouse.git synced 2018-01-10 21:33:45 +00:00
TheBigWarehouse/BigBoxOfJavascript.md
2015-08-24 15:27:28 +01:00

80 lines
5.2 KiB
Markdown

# The Big Box of Javascript
## Polyfills
- [Fake IndexedDB](https://github.com/dumbmatter/fakeIndexedDB) - A pure JS in-memory implementation of the IndexedDB API
## Net
- [jsRequest](https://github.com/danilo-valente/jsRequest) - Fast and easy asynchronous JavaScript files loading.
## Searching
- [lunr.js](http://lunrjs.com/) - A lightweight search engine to use
- [Defiant.js](http://www.defiantjs.com/) - Search JSON structures with XPath expressions
- [Awesomplete](https://leaverou.github.io/awesomplete/) - Ultra lightweight autocomplete engine with no dependencies
- [Olly.js](https://github.com/abeisgreat/Olly.js) - Rich snippets engine
## Saving
- [localStorage Bridge](https://github.com/krasimir/lsbridge) - A really cool library that lets you send & recieve messages via localStorage. Useful to let all the pages a user has open communicate with each other.
## Media
- [audiosynth](http://keithwhor.github.io/audiosynth/) - A wonderfully simple (albeit underdocumented) library for synthesising notes from various instruments. Not the most powerful, but easy to use.
- [textgen.js](https://github.com/mrdoob/texgen.js) - A procedural texture generator written in pure javascript
## Display
- [ramjet](http://www.rich-harris.co.uk/ramjet/) - Lets you transform one DOM element into another with a smooth transisition
- [ifvisible.js](https://github.com/serkanyersen/ifvisible.js) - Super simple library to detect if the user is actually looking at your page at a given moment
- [marklib](http://bowlingx.github.io/marklib/) - Highlight any text on a web page.
### 3D
- [WebGLStudio.js](http://webglstudio.org/) - A seriously interesting looking platform that lets create and / or edit webgl scenes.
## Popup Boxes
- [NanoModal](https://github.com/kylepaulsen/NanoModal) - Display those modals dialogs easily
- [basicContext](https://github.com/electerious/basicContext) - Create custom right click menus easily
- [Headhesive](https://markgoodyear.com/labs/headhesive/) - Create customiseable fixed headers that appear at certain points on a page
## Progress bars
- [Mprogress.js](https://lightningtgc.github.io/MProgress.js/) - A progress bar based on material design
- [ProgressBar.js](https://kimmobrunfeldt.github.io/progressbar.js/) - Another progress bar library
- [Elevator.js](http://tholman.com/elevator.js/) - An awesome script that "solves those awkward scroll to top moments the old fashioned way" :D
- [layzr.js](https://github.com/callmecavs/layzr.js) - A lightweight library that makes lazy loading ridiculously easy
## Input tools
- [Keypress](https://dmauro.github.io/Keypress/) - Simple but powerful keyboard input library
- [Squire](https://neilj.github.io/Squire/) - Turn a simple `<textarea />` into a rich text editor
- [Quill](http://quilljs.com/) - Another rich text editor for the web
- [Dragula](https://github.com/bevacqua/dragula) - Super simple drag & drop
- [Insignia](http://bevacqua.github.io/insignia/) - Easy tag input
## Parsing and Manipulation
- [DOM lite](https://github.com/litejs/dom-lite) - A small DOM implementation. Does not parse HTML currently.
- [Regexp.escape](https://github.com/jonathantneal/regexp-escape) - Pass this a string and it will return an escaped version for regular expressions.
- [is.js](https://github.com/rthor/isjs) - Check to see if a string is in the format of many common things - e.g. credit card number, date, phone numbe , ISBN number, etc.
- [Complex.js](https://github.com/infusion/Complex.js) - A complex number manipulation library.
## Amazing / Really Useful NPM Modules
This section could easily get absolutely huge, so it is limited to a *very* small selection of the best.
- [got](https://github.com/sindresorhus/got/) - A replacement to the famous `request` module. Apparently much lighter and faster. Does not have as many dependencies.
## Services and tools
### Services
- [js.org](http://dns.js.org/) - Free subdomains for Javascript projects
### Tools
- [Regexper](http://regexper.com/) - Regular Expression visualiser
- [Transformy](https://www.transformy.io/#/app) - Not _strictly_ javascript, but still awesome. Change the format of a list of things by typing in a simple example of what you want it to look like.
- [vorlon.js](http://www.vorlonjs.com/) - Awesome looking remote debugger
- [keyCode Test Page](http://www.asquare.net/javascript/tests/KeyCode.html) - A test page that shows you the keyCode of the keys you press
- [jscompress](http://jscompress.com/) - A simple no-fuss javascript compressor
- [JSON Generator](http://json-generator.com) - Generate complex JSON test data
#### Performance
- [jsPerf](https://jsperf.com/) - JavaScript performance playground. Create tests online to compare different pieces of javascript code.
## References & Tutorials
- [es6-features.org](http://es6-features.org/#SpreadOperator) - An overview of the new features added in EcmaScript 6
- [RGraph HTML5 Canvas Reference](http://www.rgraph.net/reference/index.html) - A good HTML5 canvas reference with examples
- [RegexOne](http://regexone.com/) - A good reguar expression tutorial with practical examples and tests
- [Javascript Scope Quiz](http://madebyknight.com/javascript-scope/) - A small quiz / tutorial to help you understand scope in Javascript