Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
The Eventual PlayFramework-AngularJS-Bootstrap-MongoDB Seed Project
Scala JavaScript HTML
branch: master

README.md

The Eventual PlayFramework-AngularJS-Bootstrap-MongoDB Seed Project

Introduction

The Eventual PlayFramework-AngularJS-Bootstrap-MongoDB Seed Project is a seed project that provides a CRUD implementation. It uses the Play Framework and MongoDB on the back-end, and AngularJS and Bootstrap on the front-end. It is designed to underpin the development of future applications that adopt the same combination of technologies.

Versioning

The seed uses the versioning p_pnum_a_anum_b_bnum where:

  • pnum is Play Framework version

  • anum is AngularJS version

  • bnum is Bootstrap version

Features

The seed has the following features (to recall a few):

  1. It offers a complete single-page application experience.

  2. It uses the asynchronous and non-blocking ReactiveMongo driver.

  3. It supports the new HTML5 routing and histoty API (i.e., no hashbangs, no bullshit).

  4. It packs JavaScript libraries inside the solution (i.e., no WebJars, no download time, and again no bullshit).

  5. It makes minimal usage of Play Scala templates, thereby clearing the space for AngularJS directives in your HTML.

  6. It cleanly separates between Play routes that serve HTML and those that serve JSON.

  7. It cleanly separates and optimally maps AngularJS routes to Play routes.

  8. It conceals Play routes from end-users, thereby ensuring that all pages are properly styled before they are presented.

Ingredients

The seed uses the following software components:

  1. Play Framework 2.2.3

  2. MongoDB 2.6.3

  3. AngularJS 1.3.8

  4. Bootstrap 3.3.1

  5. jQuery 1.11.2 (used by 4)

Deployment

Follow these steps in order to deploy the seed on your machine:

  1. Download and extract Play Framework 2.2.3.

  2. Download and extract MongoDB 2.6.3.

  3. Clone the project: git clone https://github.com/angyjoe/eventual.git.

  4. Start mongod (the daemon process for the MongoDB system).

  5. Create and populate the celebrities’ database using the script /eventual/db/script.js.

  6. Go to the root of the project: cd eventual.

  7. Launch Play at the default 9000 port: /PATH-TO-PLAY/play run.

  8. Enjoy the seed: http://localhost:9000 or the following screenshots!

Screenshots

Celebrities List

Celebrities List

Adding a Celebrity

Adding a Celebrity

Editing/Deleting a Celebrity

Editing a Celebrity

Q&A

Post your questions to the eventual seed mailing list.

Licence

Copyright © 2013 Sari Haj Hussein.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Code Disclaimer

The author of this software code has used his best efforts in preparing the code. These efforts include the development, research, testing, and optimization of the theories and programs to determine their effectiveness. This software code is not designed or intended for use in the design, construction, operation or maintenance of any nuclear facility. Author disclaims any express or implied warranty of fitness for such uses. The author makes no warranty of any kind, expressed or implied, with regard to this software code or to the documentation accompanying it. In no event shall the author be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption whatsoever) arising out of, the furnishing, performance, or use of this software code, even if advised of the possibilities of such damages.

Something went wrong with that request. Please try again.