Full Server, client, single page app, micro services like, good engineering practices

  • The core of the application use Spring Stack, to provide services and structure like:

    • Persistence
    • REST
    • Email
    • Security
    • Self contained application with spring boot
    • And many others.

  • Replaces entirely the Java Language to build a much more expressive and powerful code on the backend, while leveraging at the same time the Java Platform Tools and Frameworks, is a mixture of old and mature with new and sexy.

  • Platform for the build and command line utilities, for client interface module.

    It is not used directly

  • Provides common user interface like dialogs, menus, etc. Is modular and hight customisable. A part from the grid system, is not used directly, but has as layer of abstraction build with web components, and typescript as far as possible with the time and working constraints, to be reused in other projects.

  • Customise the UIkit Front-End Framework, because of that is used to create the application CSS. I prefer SASS but is equivalent.

  • Provides all services need to create modern Single Page Apps. The user interface is build on top of that

  • Run unit and integration tests on real browsers

  • Test tool for the interface code

  • Automate all things build related with the client single page app

  • Very cheap and good quality integration service. Use docker as the underline infrastructure and is ready to deploy on many places like cloud foundry.

    Its a build and reporter tool, continuous building the application

  • Easy host and monitor the application on the cloud, using a platform that is hight integrated with Spring Framework, but is also agnostic of technology

  • The main build tool. Integrate and delegate build to NodeJS in the client application, and build the server, its used for development productivity and production optimisations and quality. Automate all machine scripts and build things from dev to continuous integration to production

  • The agile process planing feedback and control is done in JIRA, with integrations in all places, like bitbucket code, confluence pages and build process

  • All ideas and knowledge that needs to be elaborated or shared is done in this wiki. With plugins for create embedded prototypes.

    Also is part of the development processes to create requisites and other artefacts.

    It's main use is in the development processes, it could be used to create manuals and software documentation as well, but is used more as a collaboration enterprise tool.

  • Using Git as the facto version control system, and free private repository to host the code.

  • The main storage facility. It is performant enough and has the possibility to use NoSQL datatypes as well, it is also very good at development friendly and production enterprise quality and security

  • IntelliJ IDEA is the main IDE of choice, with good support for all technologies in this stack