If you are willing to contribute, open a pull request to complete, update or fill in a section. Thank you for doing so!
Note: while this project is fully readable from this GitHub repository, you can also enjoy the dedicated website featuring a shiny design and a search engine: jargon.js.org.
- A Russian version of SJSJ by Andrew Romanov: https://github.com/andrew--r/SJSJ
- A CLI tool for SJSJ by Hank Wang: https://github.com/hanksudo/SJSJ-cli
- A Chrome extension for SJSJ by ismnoiet: https://github.com/ismnoiet/JSJargon
- A data crawler for SJSJ by myself
- AJAX: a technology for asynchronous HTTP requests.
- AngularJS: a structural framework for dynamic web apps.
- Apache Cordova (formerly PhoneGap): a popular mobile application development framework originally created by Nitobi.
- Arity: the number of arguments of a function.
- Backbone: a structural framework for dynamic web apps.
- BEM: a methodology and libraries developed and used at Yandex for building user interfaces.
- Bluebird: a fully featured Promise library with focus on innovative features and performance.
- Bower: a package manager for front-end dependencies.
- Broccoli: a fast and reliable asset pipeline.
- Browserify: a tool making possible to use the
requirefunction from Node.js within the browser.
- Brunch: a tool focusing on the production of deployment-ready files from development files.
- Canvas: an HTML element for graphic applications in 2D or 3D.
- Closure: a way of referencing variables from a child function while retaining their value even if it changes in the parent function.
- CORS: a way for a server to make things accessible to pages hosted on other domains.
- Currying: the process to transform a function with multiple parameters into a chain of functions of one parameter.
- D3.js: a library for manipulating documents based on data.
- Design Patterns: a general reusable solution to a commonly occurring problem within a given context in software design.
- DOM: a platform- and language-neutral interface that allow programs and scripts to dynamically access and update the content, structure and style of documents.
- Electron: a framework based on Node.js lets you write cross-platform desktop applications using JS, HTML and CSS.
- Ember: an application framework based on the model-view-controller pattern.
- Express: a fast, un-opinionated, minimalist web framework for Node.js.
- Facade Pattern: a software design pattern commonly used with object-oriented programming. The name is by analogy to an architectural facade.
- Factory Pattern: a creational pattern that uses factory methods to deal with the problem of creating objects without having to specify the exact class of the object that will be created.
- Flux: an application structure focusing on improved data flow.
- Four: a framework to develop 3D content for the web.
- Grunt: a task runner aiming at automating tedious and possibly complex tasks.
- Gulp: a task runner aiming at automating tedious and possibly complex tasks.
- Hapi: a Node JS framework for writing services and more.
- IIFE (Immediately Invoked Function Expression): a function that gets called immediately after declaration.
- Ionic: a HTML5 mobile framework to build beautiful hybrid native mobile applications using AngularJS and Cordova.
- Isomorphic: an application is said to be isomorphic (universal) when its code can run both in the client and the server.
- Jasmine: a testing framework for BDD (Behaviour-Driven Development).
- Jest: a unit testing framework.
- jQuery: a fast, small, and feature-rich client-side library.
- JSON-LD: JSON for Linked Data.
- Knockout: a library that helps developers creating user interfaces with a clean underlying data model.
- MEAN: the technology stack MongoDB, ExpressJS, AngularJS, and Node.js (MEAN).
- Mediator Pattern: an object that encapsulates how a set of objects interact.
- Memoize: an optimization used to speed up consecutive function calls by caching the result of calls with identical input.
- Metalsmith: a simple, pluggable static site generator.
- Mocha: an extensible testing framework for TDD (Test-Driven Development) or BDD (Behaviour-Driven Development).
- Modernizr: a browser feature detection library, useful to modify page styles when a feature is not available in the browser.
- Module Pattern: a design pattern used to implement the concept of software modules, defined by modular programming, in a programming language with incomplete direct support for the concept.
- Moment.js: a library to parse, validate, manipulate and display dates.
- Nightmare: a high-level browser automation library.
- NightwatchJS: a framework for browser automated testing.
- Node.js: a cross-platform runtime environment for developing server-side applications built on V8 engine.
- npm: a utility to help publishing packages to, and installing from, an npm repository.
- nvm: a utility to help run multiple versions of Node.js on the same machine.
- Observer Pattern: a software design pattern in which an object, called the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by calling one of their methods.
- Passport.js: a simple authentication middleware for Node.js.
- PhantomJS: a scripted, headless browser used for automating web page interaction.
- Polymer: Google’s library for creating Web Components.
- Promise: a proxy for a value not necessarily known immediately but that will eventually be resolved.
- Prototype Pattern: a creational design pattern in software development. It is used when the type of objects to create is determined by a prototypical instance, which is cloned to produce new objects.
- Puppeteer: a Node library providing a high-level API to control headless Chrome.
- Pure Function: a function that always returns the same value for a given input, never modifies its inputs, and cannot obeserve or affect state in its application or the world.
- Q: a library to create and manage promises.
- React: a library developed and used at Facebook for building user interfaces.
- Redux: a predictable state container for apps.
- Require.js: a browser based module loader using AMD.
- Revealing Module Pattern: a design pattern conceptually based on the Module Pattern. The only difference is that the revealing module pattern was engineered as a way to ensure that all methods and variables are kept private until they are explicitly exposed.
- rnpm: a package manager to ease React Native development by automatically linking native dependencies to your iOS/Android project.
- RxJS: a library for asynchronous programming using observable streams.
- Sails: a realtime MVC Framework for Node.js.
- Singleton Pattern: a design pattern that restricts the instantiation of a class to one object.
- Three.js: a lightweight 3D library to create and display animated 3D computer graphics on a Web browser.
- Underscore: a swiss army knife, focusing on helper methods for most built-in objects.
- Universal: an application is said to be universal (isomorphic) when its code can run both in the client and the server.
- Virtual DOM: a copy of the DOM in memory that the program can modify instead of directly interfacing with the "real" DOM to help speed up interactions
- VueJS: a library for creating user interfaces based on data models.
- Webpack: a dependency manager with a friendly and fast development environment, simplifying a lot of common tasks.
- XHR: XMLHttpRequest is an API that provides client functionality for transferring data between a client and a server without page refresh.
- Yeoman: a generator builder to speed up the setup and installation process of a project or part of a project.
- Zepto: a lightweight jQuery clone, without all the browser-compatibility specific code.
Export entries as JSON
This repository includes a tiny Node.js script that exports all the entries as JSON. To use it, clone the repository and run:
npm install npm run export -- data.json