Coder Social home page Coder Social logo

v7's Introduction

V7

Introduction

V7 is a libary which provides a base application for Java / web development combining Vaadin, Guice and Apache Shiro.

Status

There are a number of sub-projects, each with a different status

20th January 2014:

V7

This is the base, or core, library. Vaadin 7.1.10 is integrated with Guice 3.0 and Shiro 1.2.1. It provides site navigation and the means to authenticate and authorise users. Building an application is assisted by specifiying the site structure using a Sitemap. There are 3 methods for specifying the Sitemap: using files(s), annotations, or directly coded in Guice modules (these can also be mixed)

This library is usable, thought there are still some bugs and further developments needed.

demo

Very simple currently. This sub-project is supported with tests run via Vaadin Testbench, which you won't be able to run unless you have TestBench.

orient

In an early iteration of this project I included some persistence code using OrientDb. That now seems inappropriate for the core library, but is worth keeping for later.

testApp

Does nothing yet

views

Something which seemed like a good idea at the time, but is now parked. Will be reviewed later

##Project Build

A Gradle multi-project structure is used. If you are an Eclipse user you will need to run 'gradle eclipse' to generate .classpath and other Eclipse specific files. There is a bug which causes an incorrect classpath file to be generated for the views sub-project only, but there is a workaround for it. (#181).

##Limitations

Does not work with a custom Widgetset (see #207).

Motivation

Whenever I start a new application it feels like I cover the same ground - getting the basic application architecture in place first, and trying to get the various parts working together. Of course, when I start looking for answers to integration questions, I find that there are many others out there asking the same questions. So I thought I should build a basic reference application, using common OSS components, and use that as a start point for any applications I want to put together in future. And since I am using only OSS components, it seems only fair that I should share the results with any one who wishes to use it. With any luck, others will also find it useful.

Objectives

  1. Provide a structure which can be easily re-used as the basis for a new application, covering key aspects of functionality needed for most applications
  2. Provide an application which actually does something (even if simple), to help others to understand how the components work together.
  3. Use only open source components which are licensed in a way which enables the end result to be used in any way people want to. (That usually means an Apache 2.0 licence).
  4. Keep the architecture as pluggable as possible
  5. Document code which relates to specific integration, to enable others to extract what they want.

The issues tracker, blog and documentation provide more information.

Contributions would be very welcome.

v7's People

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.