Node Atlas NodeAtlas

Le Framework JavaScript Serveur Évolutif

  • Mise en place Simple

    Au point avec HTML & CSS ?
    Débutant en JavaScript ?

    Réalisez rapidement des sites vitrines multilingues sans effort avec l'utilisation de routes, vues ou variations.

  • Site vivant et Évolutif

    Expert en JavaScript client ?
    Prêt à embrasser Node.js ?

    Améliorer progressivement votre base à mesure de vos besoins en utilisant des contrôleurs, modèles ou modules.

  • Partie Cliente Agnostique

    Déjà vos habitudes Front-end ?
    Habitué(e) du Data Binding ?

    Du léger Vanilla au simple jQuery en passant par Vue, Angular ou React : utiliser vos bibliothèques clientes favorites !

Avant-propos

NodeAtlas est un framework JavaScript MVC(2) côté serveur sous forme de module npm (le module node-atlas sur npm) et tournant avec Node.js. NodeAtlas vous permet de :

  • Créer, maintenir et faire tourner des sites internationalisés (et localisables) sans mettre en place le moindre fichier serveur JavaScript. Particulièrement taillé pour la réalisation de sites vitrines ou d'applications web monopages hautement performante et maintenable en des temps records.

    Exemple : Simple page web ou Monopage navigable.

  • Créer, maintenir et documenter des interfaces utilisateurs HTML / CSS / JavaScript pour fournir un ensemble de livrables clients cohérants en tant que guide de style pour la réalisation de divers sites ou applications web ou encore monter des sites sans partie serveur (par exemple pour GitHub Pages).

    Exemple : Documentation de pages, composants et d'interface web ou le site officiel NodeAtlas.

  • Développer des sites, des applications ou des API distantes en Node.js de manière évolutives et tournant côté serveur tout en vous permettant grâce à l'écosystème npm et les built-in fonctions de créer des contenus clients temps réel, de packager et optimiser vos sites pour de hautes performances, d'être orienté composant avec des réponses HTTP passant la validation W3C et parfaitement indexable par les moteurs de recherche pour le SEO.

    Exemple : Blog, Portfolio, Site ou API Distante.

Pourquoi NodeAtlas ?

NodeAtlas est conçu pour créer des sites évolutifs et pour permettre aux développeurs front-end et back-end d'embrasser Node.js en leur offrant une une courbe d'apprentissage aisée.

Commencez avec une simple page HTML,

  • puis créez d'autres pages,
  • puis internationalisez les,
  • puis minifiez/offusquez/compressez vos sources,
  • puis utiliser des préprocesseurs comme Stylus, Less ou/et Pug simplement,
  • puis prenez la main sur la logique serveur avec les points d'ancrage et Express,
  • puis soyez temps réel et réactif côté serveur grâce à Socket.IO,
  • puis connectez vous à MySQL, MongoDB, ElasticSearch...,
  • puis soyez isomorphique et réactif côté client grâce à Vue ou React,
  • puis soyez orienté composants et/ou services grâce à des projets comme ComponentAtlas et/ou ApiAtlas,
  • puis laissez votre client éditer son site avec EditAtlas,
  • puis créer des plugins,
  • puis...

D'autres frameworks ?

Contrairement aux frameworks JavaScript côté client comme Vue, Angular ou React, NodeAtlas fonctionne côté serveur et délivre son contenu derrière des URL par réponse HTTP. Les sites sont indexables et valides W3C : c'est-à-dire que le code utile est bien renvoyé par la réponse HTTP en premier lieu, et est ensuite modifiée par requête asynchrone (AJAX, Websocket...) si vous le souhaitez. Cela signifie donc que NodeAtlas n'est pas une alternative aux nombreux frameworks JavaScript côté client qui ne se servent que de Node.js pour l'utilisation de npm, jspm, gulp, etc. NodeAtlas est plutôt une alternative à Sails ou Meteor. Il forme un socle au dessus de Node.js et remplace bien votre code PHP, Java ou encore C# côté serveur. À l'instar de Meteor, NodeAtlas vous fournit un cadre de travail et une structure initiale (que vous pouvez modifier) et des outils vous permettant de vous passer de gulp mais contrairement à Meteor l'objet NA n'est disponible que côté serveur par défaut. Il vous est donc laissé le choix d'étendre les mécanismes NodeAtlas à votre partie cliente ou d'utiliser la structure de votre choix.

Pour un comparatif avec d'autre bibliothèque / framework / API JavaScript côté serveur, vous pouvez consulter cette grille.

Exemples de réalisations

Vous trouverez une liste de dépôts que vous pouvez décortiquer à votre gré sur la communauté GitHub de NodeAtlas :

Documentation

En complément de cette documentation, vous avez également accès aux,

Contribution

Si vous souhaitez contribuer avec :

  • De l'amélioration ou de la correction de code,
  • De la correction d'orthographe pour la documentation française ou
  • De la traduction décente pour la documentation anglaise

Merci de respecter ses étapes :

  1. Répliquez le dépôt NodeAtlas.
  2. Travaillez sur une branch créée à partir de la branche master.
  3. Actez et poussez votre branche.
  4. Faites une proposition de fusion.
  5. Soyez patient. ;-)

Tout en respectant les conventions suivantes :

Merci d'avance pour votre aide !