Skip to content

UMM-CSci-3601-S17/digital-display-garden-iteration-4-dorfner-v2

Repository files navigation

Digital Display Garden Build Status

Software Design S2017, Iteration 4, Team dorfner-v2

This repository is a fork from Iteration 3 , Team dorfner.

Introduction 🌷

This project's main goal is to develop a web application that provides visitors the ability to leave feedback for a local horticulture garden, the West Central Research Outreach Center (WCROC). The application includes an administration side that allows certain garden employees to manage the website, and a visitor side that allows visitors to view all the beds in the garden, view the plants in those beds, and leave feedback about these plants. It is designed in a way that would make it fairly easy to be used by other interested gardens.

Key features

Administration

  • Upload a spreadsheet of plants and populate a database
  • Delete an existing spreadsheet from the database
  • Export collected visitor feedback to a spreadsheet
    • Comments
    • Counts
      • Visits
      • Likes/Dislikes
      • Comments
    • Visit Timestamps
      • Hourly
      • Daily
  • Download QR codes for each bed, and the homepage
  • Upload photos to specific plant pages

Visitor experience

  • Homepage
    • Searchbar
    • Bed-list dropdown
    • Brief overview of the garden
    • Instructions on how to use the application
  • Bed Pages
    • List of plants in the current bed
  • Plant Pages
    • Name of plant
    • Uploaded picture
    • Ability to leave feedback on the plant
      • Like/Dislike
      • Leave a comment
    • Total number of interactions on this plant (Ratings + Comments)
  • Footer
    • Name and address of the garden
    • Links to website and social media

Running your project

See Documentation/Running.md.

Documentation

See the Administration Guide for a brief overview of how to use the site after you have it up and running.

Languages used

  • Typescript
  • Javascript
  • Java

Libraries used

Client-Side

  • Angular 2
  • Jasmine and Karma
  • Gradle

Server-Side

  • Spark is used for the server operations
  • JUnit is used for testing
  • Apache POI is used for importing and exporting data in .xlsx format
  • zxing is used for generating QR codes (supports reading them if we want)
  • joda is used for making an unique LiveUploadID
  • Nimbus is used for OAuth
  • scribejava is used for OAuth
  • MongoDB is used as our Database
  • Gradle

Resources

This project was developed as a part of a Software Design class at the University of Minnesota, Morris.