CrossClj

0.0.2 docs

SourceDocs



RECENT

    pe-fp-app

    Clojars

    Jun 6, 2015


    OWNER
    Paul Evans
    LendingTree
    Charlotte, NC
    www.rikerapp.com

    Readme

    Index of all namespaces


    The README below is fetched from the published project artifact. Some relative links may be broken.

    pe-fp-app

    Build Status

    pe-fp-app is the REST API endpoint for the fuel purchase system. The fuel purchase system consists of 2 tiers: client applications and the server application. pe-fp-app represents the server application; it exposes a REST API endpoint to client applications.

    pe-fp-app makes use of the pe-* Clojure library suite. In addition to using the pe-* library suite, it leverages pe-fp-rest, which implements the underlying fuel purchase-specific resources of the REST API. pe-fp-rest is built on top of pe-fp-core, which implements the core logic, model and data access functionality of the REST application. These tiers are illustrated in the component layering diagram below.

    Table of Contents

    About the Fuel Purchase System

    The fuel purchase system provides the ability to record and analyze your vehicle’s fuel usage. In its present form, the fuel purchase system is not terribly useful. It enables you to collect fuel usage statistics with respect to your vehicles, but none of the analysis / reporting functionality is built out yet. It exists more as a reference implementation for a set of libraries. The fuel purchase system is a client/server one. This repo, pe-fp-app, represents the server-side application of the fuel purchase system. It exists as a REST API endpoint for client applications of the system. The libraries are generic, and thus are not coupled to the fuel purchase system.

    pe-fp-app makes use of the pe-* Clojure library suite, as well as pe-fp-rest (*which uses pe-fp-core*).

    Client Applications

    Currently there only exists an iOS client application for the fuel purchase system: PEFuelPurchase-App.

    Component Layering

    The following diagram attempts to illustrate the layered architecture of the fuel purchase server application. The various core and rest libraries encapsulates the bulk of the application; the core logic, model and data access functionality.

    Dependency Graph

    The following diagram attempts to illustrates the dependencies among the main components of the fuel purchase server application.

    pe-* Clojure Library Suite

    The pe-* Clojure library suite is a set of Clojure libraries to aid in the development of Clojure based applications. (Each library is available on Clojars.) + pe-core-utils: provides a set of various collection-related, date-related and other helpers functions. + pe-datomic-utils: provides a set of helper functions for working with Datomic. + pe-datomic-testutils: provides a set of helper functions to aid in unit testing Datomic-enabled functions. + pe-user-core: provides a set of functions for modeling a generic user, leveraging Datomic as a backend store. + pe-user-testutils: a set of helper functions to aid in unit testing code that depends on the functionality of the pe-user-* libraries (pe-user-core and pe-user-rest). + pe-apptxn-core: provides a set of functions implementing the server-side core data layer of the PEAppTransaction Logging Framework. + pe-rest-utils: provides a set of functions for building easy-to-version hypermedia REST services (built on top of Liberator. + pe-rest-testutils: provides a set of helper functions for unit testing web services. + pe-user-rest: provides a set of functions encapsulating an abstraction modeling a user within a REST API and leveraging Datomic. + pe-apptxn-restsupport: provides a set of functions implementing the server-side REST layer of the PEAppTransaction Logging Framework.