Skip to content

Ua 1151 setup frontend development chain

Raphael Mäder requested to merge UA-1151-setup-frontend-development-chain into master

Created by: sunsetter

  • UA-1151 Revamped Project Structure

    • restructures Project into three sub-projects: server, client, shared
    • rewrites build.sbt to reflect new project structure
    • introduces Settings.scala to configure basic project settings used in build sbt
    • using versioned AssetController now
    • adjusts .gitignore to reflect new project structure
    • added new SBT-Plugins for Scala-JS
    • introduces new frontend entrypoint for Scala-JS code (called frontend.App)
    • sets up basic autowire functionality for typesafe Ajax-communication (not yet working properly)
  • intermediate commit, dependency problems in IDEA

  • intermediate commit to keep history

  • frontend-asset-handling

    • complete refactoring of build.sbt. Defides main-project into three subproject (client, server and shared)
    • introduces Settings.sbt references from build.sbt (with all version and environment related settings and dependencies
    • introduces scala-js (client-project) with all necessary tools around
    • introduces sbt-web plugins and dependencies to pack, minifiy, fingerprint (and so forth) assets
    • introduces samples for remote-logging and autowire-communication with methods in backend (through API)
    • adds NPM to the docker-container (for faster compiling scala-js and dependencies)
    • introduces Asset-Handler with lib-function for webjar-Assets
    • lessifies all css-dependencies so that they get distributed as one (optimized) css (rewrites relative urls)
    • cleans up main.scala.js, stylesheet import reduced to one css-style-tag and javascript is handles the scala-js way
    • introduces _asset and _assetWebjars templates to provide versioned asset-Url including configured cdn prefix (if present)
  • fixing versions of bootstrap and font-awesome

  • Makes ScalaJS removable

    • grouped scala-js-settings in its own section (in build.sbt) and explains how to remove it
  • Make docker:publishLocal work again

    • disables compile:doc since it results in error (prevents sbt docker:publishLocal from building), FIX THIS
    • Add crud-routes to the moved routes-file in server
    • Make TeaserBlock use _asset-helper to support CDN
  • PLAY-16 fix calling Transaction-Methods from ApiService

  • PLAY-16 fix docker:publishLocal

  • PLAY-16 modules version increment

Merge request reports