Skip to content
This repository has been archived by the owner on Feb 22, 2019. It is now read-only.
Pavel Vlasov edited this page Jun 16, 2016 · 70 revisions

Nasdanika Foundation Server

Nasdanika Foundation Server (NFS) is a collection of OSGi/Equinox bundles providing a full stack for building Java Web applications which operate on domain models residing in CDO repositories. NFS is a framework for Domain-Driven Web development. It leverages orthogonal persistence provided by CDO, ECORE model metadata and annotations to route HTTP requests to repository objects' operations and to dynamically generate JavaScript modules facading repository objects. It also provides a documentation route which makes model documentation easily accessible through a web browser.

NFS-based applications are built with Maven/Tycho and output of the build is an Eclipse product - executable and ready for deployment.

Working on an NFS-based application developers stay focused on the domain instead of infrastructure plumbing - it reduces mental overload and context switching, facilitates rapid experimentation and model evolution, and shortens the cycle between an idea and usable software.

In NSF-based applications Web UI is associated with model elements instead of "traditional" way of data being associated with UI through query parameters or path elements. The difference is rather profound! The "traditional" way conceptually corresponds to functional programming - application is a bunch of functions to which data is passed as parameters. The NSF approach corresponds to object-oriented programming - model elements "own" web behavior. In particular it allows to build polymorphic user interfaces, e.g. checking and credit cards account may have the same URL which renders a list of transactions, but rendering might be different.

Value proposition

The value of the NFS is demonstrated through the user stories of the innovator persona Pablo in which he uses NFS to help him to achieve his goals.

Quick start

GitHub repository of the demo application used in the videos

Documentation

The bulk of the documentation is available through the documentation route of a NFS-based application, or through the Nasdanika Information Center, which is a NFS-based application.

Online documentation:

Resources

Clone this wiki locally