Giter Site home page Giter Site logo

vegs-repo's Introduction

Introduction

What is VEGS, and why use it?

Virtual E-Grocery Store (VEGS) is a configurable, and open-source web application for enabling researchers to design, and conduct experiments in the context of online shopping. The base application provides support for implementing a number of common treatment variations. Supported use cases are:

  • Change Displayed (Product-) Information & Shop-Functions Based on Treatment Specification
  • Recommendations-Systems & - Agents
  • Positioning, Arrangement & (Re-) Placement
  • Partitioning & Bundling
  • Salience & Additional Information
  • (Smart) Disclosure & Feedback
  • Economic Incentives

Example

https://vegs.codemuenster.eu/t/5de85530c2cda70bf6a2360f/s/0/shop/products

Installation

Prerequisites

Both applications are based on npm and node. Therefore first install node, which should automatically install npm as well. You could also think about installing these frameworks using nvm. If the version commands do not return the version number of either npm or node it did not install correctly.

For installation instructions specific to your system these links might be useful.

For testing the validity of the installation check each version command:

sudo apt install nodejs
# check installed versions
node -v
npm -v

For running the back-end application you also need a running instance of MongoDB as the database server. For installation instructions see your operating system specific instructions provided here: https://docs.mongodb.com/manual/installation/. By default MongoDB listens on localhost:27017. This port is also configured by default for the back-end application. MongoDB needs to be running before you start the back-end application. If MongoDB does not start automatically you can start it by typing the following command.

sudo service mongod start

The code-base is versioned and managed using the freely available versioning tool Git. For installation instructions follow your operating system specific installation steps found here https://git-scm.com/book/en/v2/Getting-Started-Installing-Git. You can either follow the link and download the repository as a zip file or clone the repository with the following script line.

git clone https://github.com/Kuiter/vegs-repo

With this you cloned or downloaded the front-end, and back-end application. The dependencies for both applications are managed using npm. To install the necessary dependencies change directory into the root folders for both applications and run the following command:

npm install

This will install all necessary dependencies to run the applications. After this you might want to update the dependencies, and audit-fix any critical security issues by running the following commands. With this the dependencies are updated and any security issues are fixed, when they have known fixes.

npm update
npm audit fix

Local hosting and development

For localy hosting the front-end, and back-end applications input the following commands inside the root folder of each project folder.

# front-end, during development mode, restarts when changes are made to code-base
npm run start

#back-end, in development mode, restarts when changes are made to code-base
npm run start-watch

Doing this both applications are hosted in "development mode", after changing source files the applications are recompiled, and the sever is automatically restarted. The above commands act as aliases for the following commands specified in the respective package.json file in the root folder of each application.

# front-end
"scripts": {
    ...
    "start": "ng serve --proxy-config proxy.conf.json",
  }
# back-end
"scripts": {
	  ...
    "start-watch": "nodemon src/index.js",
  } 

After starting the development server the front-end is is hosted on localhost:4200, and the back-end listens on localhost:3000.

Example Item Stock

The item data, and images used in this demonstration can be downloaded here:

https://owncloud.gwdg.de/index.php/s/ZfXUziwdPqotyNb

Disclaimer

The data is not our own property, images, and item information is publicly available and was merely aggregated by us.

Contacts

Author: [email protected]

Co-Author: [email protected]

Co-Author: [email protected]

vegs-repo's People

Contributors

kuiter avatar sebastiankuiter avatar

Stargazers

 avatar

Watchers

 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.