A Javascript-based open source CMS that functions with node.js is called Wiki.js. Wiki.js is Markdown-friendly. This top-notch free software will blow up your mind. It is suggested to anyone looking to use a wiki for individual or group use.
Building web page requires knowledge of several programming languages: HTML or XHTML for content, CSS for design. With these two languages web pages will be static and accessible from any device you use to view the page. The biggest drawback of this situation is an interaction between the user and page. User has to wait for loading of new page every time he fills out the form. JavaScript makes web page more alive, allowing response to user’s actions without the need to reload the page.
Developing JavaScript
JavaScript was developed by Brendan Eich at Netscape. Its key points, that appealed to both professionals and beginners, were: lightweightness and simpleness. The language was originally named LiveScript during release in 1995. Later name was changed to JavaScript.
Such name choice was well thought out marketing move. Though JavaScript has almost nothing in common with Java, the latter was gaining popularity and Netscape decided to add a little bit of confusion and attention to its new product.
This interpreted language for web pages gained success very quickly. In 1996 JavaScript support was introduced by Microsoft in its web browser, Internet Explorer, in version 3.0. Microsoft's implementation was named JScript .
Nowadays, JavaScript is a part of Oracle Corporation.
Building with JavaScript
JavaScript is an structured and dynamic scripting language. The basic syntax was intentionally made similar to both C++ and Java to facilitate professional’s and newbie’s learning process.
JavaScript is both an object-oriented and procedural language. Once an object is constructed it can be used as a prototype for building of similar one. Runtime object construction, dynamic script creation, and source code recovery make JavaScript more dynamic.
JavaScript has implementation as part of web browsers that allows interaction with user and alteration of displayed content. But it is not only one way directed language. Games, desktop applications and server-side programming use JavaScript in their development.
Support products
To improve structure or design JavaScript developers may use additional web frameworks and libraries:
Get responsive, valid, well-structured designs with Vue.JS at the core.
React.js is a JavaScript library for building user interfaces
Protractor is an open source end-to-end testing framework. It is the preferred tool for testing AngularJS-based applications and was built atop of Selenium’s WebDriver, Node.js and Jasmine.
Karma is a simple and lightweight open source test runner for JavaScript. It is well suited for testing AngularJS code or any other JavaScript projects.
Modernizr is a small open-source JavaScript library designed to detect the availability of native implementations of HTML5 and CSS3 features.
PouchDB is a free open-source database designed to work well within the browser and offline. It was written in JavaScript and inspired by Apache CouchDB.
Ionic is an open source front-end framework for development of hybrid mobile apps. It allows to use well-known web technologies such as HTML, CSS and JavaScript, Sass, and AngularJS.
MediaElement.js offers a complete HTML5 player that supports playback in all popular browsers, replacing HTML5 with a Flash or Silverlight-powered player if necessary.
The TimelineJS is a visualization tool to build interactive timelines.
E-commerce JavaScript solution that integrates shopping cart with your website
The dygraphs is an open source JavaScript library that produces interactive, zoomable charts of time series.
TogetherJS is a free and open source HTML5 based JavaScript library that adds collaboration tools to your website. Main features: cursor-mirroring, co-browsing, co-presence, text and voice chat, etc. Use collective.js.togetherjs to integrate library into your Plone website.
Highslide JS is an open source highly configurable thumbnail viewer written in JavaScript. Highslide JS can be integrated into Plone via collective.js.highslide or collective.plonetruegallery.
Gridster.js is a jQuery plugin that allows to design intuitive drag-and-drop layouts. Elements can span multiple columns and can be both re-ordered, added and/or removed from the grid dynamically and at anytime. collective.gridlets integrates Gridster.js into Plone.
D3.js (Data-Driven Documents) is a JavaScript library for manipulating documents based on data. It provides data visualization in W3C-compliant computing, applying HTML5, JavaScript, CSS3, and SVG and combining powerful visualization components with a data-driven approach to DOM manipulation. D3 can be integrated into Plone CMS using collective.js.d3 package.
Converse.js is an open source web-based XMPP Instant Messaging client written in JavaScript that integrates a webchat client into any website. collective.xmpp.chat and collective.xmpp.core integrate Converse.js into Plone.
JW Player is the most advanced and robust HTML5/Flash embeddable media player for the web with rich set of features. collective.js.jwplayer integrates JW Player into the Plone CMS.
Jcrop - image cropping plugin for jQuery (JavaScript library), can be integrated into Plone using plone.app.imagecropping
Leaflet is a lightweight and powerful open-source JavaScript library for creating mobile-friendly interactive maps. Leaflet mapping resources can be integrated into Plone using collective.js.leaflet add-on.
MathJax is a cross-browser JavaScript library that displays mathematical notation in web browsers, using MathML, LaTeX and ASCIIMathML markup. There is also MathJax integration for Plone - collective.mathjax.
GruntJS is a JavaScript based command line build tool that helps to automate repetitive tasks.
Raphaël is a simple-to-use cross-browser JavaScript library that simplifies work with vector graphics for the websites.
PhantomJS is a headless WebKit for JavaScript that provides quick and native support for several web standards.
SproutCore is a powerful JavaScript framework that allows creation of rich desktop-like web applications.
Spine.js is a CoffeeScript written library for client-side web application development
Meteor js is a fully reactive and real-time Javascript framework that allows building of sophisticated and dynamic web applications.
Quintagroup recommends Knockout.js as a MVVM library that enables development of interactive client-side interfaces with JavaScript and HTML.
Node.js is a development framework that is used for building scalable server-side applications. This software platform gains popularity due to its network-centered nature and ease in programming and deploying apps.
Ember.js is a client-side framework. It is is the most optimal choice for scalable single-page application development. Ember.js incorporates selection of tools that will provide all necessary instruments for building ambitious web application.
CanJS is lightweight client-side MVC JavaScript library for simple and fast application development. It is the best option if you want to find a compromise between small size and modern features.
Angular is JavaScript framework for building remarkable and expressive web apps.
JQuery is lightweight, fast and rich JavaScript library. With Quintagroup your project will receive utmost attention and non-standard implementation.
Backbone.JS is an open source and free MVC-paradigm-based JavaScript library that provides structured approach and synchronization among different parts of web app