/scala-ims-application

An inventory management system made using Scala and MongoDB

Primary LanguageJavaScript

Redfern Scala Inventory Management System - QA Individual Project

The Redfern Scala Inventory Management System is a Scala-based application which utilised ReactiveMongo to create, read, update and delete entries within a MongoDB database hosted locally. The project's source code is being developed on IntelliJ IDEA and is built using sbt. An executable jar was assembled using sbt-assembly.

The program can be run on a terminal of your choice, though is only confirmed to work on cmd.exe (Windows Command Prompt).

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development purposes. See deployment for notes on how to deploy the project on a live system. See deployment for notes on how to deploy the project on a live system.

Prerequisites

To use this program, you will need:

  • Java SE 8 or Java SE 11 (needed to run the jar file located in the target folder)
  • A mySQL database, preferably one hosted on GCP as this application was built with GCP in mind.

To function, the application requires a MongoDB Database. To function without altering the source code, you need to create a database called 'DbIMS', with the collections: 'customer', 'product' and 'order'.

To develop using this project, you will need:

If you use this project for your own development, or wish to change the database configuration, the uri, database name and collection names can be found in MongoConfiguration.scala, which can be accessed using a Scala-compatible IDE.

Deployment

The project is open source, therefore is available to anyone to clone or fork. Regardless of whether you clone this repository or a repository you forked, you will need to open a terminal within the local directory and enter the following:

  • sbt clean compile
  • cd target/scala-2.13
  • java -jar scala-ims-application-assembly-0.1.jar

Note: if you changed the 'name' stored in built.sbt, you will need to enter the new name followed by .jar instead.

Built With