Overview
NodeAtlas is a Server-side MVC(2) JavaScript Framework as an npm module (node-atlas) and designed to run with Node.js verision. NodeAtlas allows you to:
Create, maintain and document a set of assets HTML / CSS / JavaScript as user interfaces to provide solid guidelines for the realization of website or webapp (i.e. for brands).
Exemple : Pages, Componants and Web Interface or official NodeAtlas website.
Create and maintain and run internationalized wesites without use a single JavaScript file. That's it's perfect for beginners or for develop presentational website with high performance quickly.
Exemple : Simple Web Page
Develop Node.js internationalized websites or scalable Node.js applications running of all sizes with server-based source code for high performance, indexability for SEO and W3C compliancy. Distant REST APIs are also easily to create.
Exemple : Blog, Portfolio or Distant API
Why NodeAtlas
NodeAtlas is designed to create scalable websites and to allow Front-end and Back-end developers to embrace Node.js.
Starting with a single HTML page,
- then internationalize it,
- then create other pages,
- then minify/obfuscate/optimized your sources,
- then use Less or/and Stylus,
- then use files for drive back-end part with code,
- then connect you to MySQL, MongoDB, ElasticSearch...,
- then use Socket.io for real time,
- then be component-based with ComponentAtlas
- then let your customer edit website itself with EditAtlas
- then create plugins,
- then...
And what about others JavaScript Frameworks?
In opposition to others JavaScript Frameworks like Vue, Angular or React, NodeAtlas run server-side and provide some real urls by Response HTTP. Websites are indexale and W3C compliant that means each page are construct by HTTP response and after by AJAX or Websocket mechanisms. So, NodeAtlas is not an alternative to others Front-end JavaScript Frameworks that only use Node.js for use after npm, jspm or gulp. So, NodeAtlas is same as Sails or Meteor. And that means NodeAtlas is a substituant to PHP, JAVA or C# server-side. In the same way as Meteor.js, NodeAtlas allow you to set your working environment and you have not need of gulp but to oposition of Meteor.js, the NA
object is not provided client-side. It's your responsability to spread server-side mechanism to front.
To comparate NodeAtlas with others JavaScript Server-side Library/Framework/API, you could check this grid.
Examples of websites with NodeAtlas
This is a list of repository you could analyse to understand NodeAtlas:
- Generation and HTML template maintenance.
- UI Test and UI Documentation.
- HTML website maintenance (no Back-end).
- Node.js website with Websocket and PopState.
- Node.js website with MongoDB database and Redis.
- Node.js example of content filling in real time without Back-office.
- Simple web server for a file.
- API REST example.
- CSS-driven usage with Less preprocessor with CSS Framework.
- Plugin to boost standard capabilities.
Documentation
In addition to this README, you also have access to,
- tl;dr,
- details of functions in the NA object and you could
- discuss on chat and ask asistance for NodeAtlas.
Contributing
If you would like to contribute with:
- Code enhancements and fixes,
- French correct spelling mistake or
- Decent english translation
Please do the following:
- Fork the NodeAtlas repository.
- Hack on a separate topic branch created from the latest master.
- Commit and push the topic branch.
- Make a pull request.
- Be patient. ;-)
Please note that modications should follow these coding guidelines:
- Pass Sonarqube JS with rank A : Bugs, Vulnerabilities and Debt Ratio.
Thank you for helping out!