Skip to content

Latest commit

 

History

History
86 lines (65 loc) · 3.82 KB

README.md

File metadata and controls

86 lines (65 loc) · 3.82 KB

Web Accounting - Pippo Demo

Travis CI Build Status

This project is a real life application built with Pippo framework. The goal of this project is to show how a real web application built with Pippo looks like.

Before studying this project please read about Pippo on www.pippo.ro and see the multiple Pippo-Demo projects (fine granularity) on https://github.com/pippo-java/pippo-demo.

Libraries used

This project is built using several libraries:

About business

This application is a web accounting application where the customers upload invoices and the accountant processes these invoices and uploads the balance sheet. The customer has a company and he can not upload documents (PDF files) after day 20 of each month without the accept of the accountant. Also he can not upload documents in system if he forgot to pay the previous month.

The application comes with two sections: Customer and Admin (Accountant). Each section has a separate authentication mechanism. The authentication mechanism for Customer is reinforced with Google reCAPCTCHA and the authentication mechanism for Admin is reinforced with an IP White List.

The application comes with support for English and Romanian languages.

Screenshots

Upload Screen

Upload

Download Screen

Download

Edit Screen

Edit

All the screenshots are available in the screenshots folder.

How to run

  • mvn package
  • mkdir dist
  • cd dist
  • unzip ../target/matilda-0.1.0-SNAPSHOT.zip
  • java -jar matilda-0.1.0-SNAPSHOT.jar

With the last command the server (Undertow) started on port 8338 so open your favorite browser and type http://localhost:8338 (email/password: [email protected]/1) or for admin section http://localhost:8338/admin (username/password: test/1).

How to build

Requirements:

Steps:

  • create a local clone of this repository (with git clone https://github.com/pippo-java/matilda.git)
  • go to project's folder (with cd matilda)
  • build the artifacts (with mvn clean package)

After above steps a folder matilda/target is created and all goodies are in that folder.

Versioning

Matilda will be maintained under the Semantic Versioning guidelines as much as possible.

Releases will be numbered with the follow format:

<major>.<minor>.<patch>

And constructed with the following guidelines:

  • Breaking backward compatibility bumps the major
  • New additions without breaking backward compatibility bumps the minor
  • Bug fixes and misc changes bump the patch

For more information on SemVer, please visit http://semver.org.