/Action-Items-Dashboard

Group project for the Software Engineering Project.

Primary LanguageHTML

Action Items Dashboard (in partnership with Dell)

Welcome to Group 35's project for the module Software Engineering Project at Trinity College Dublin. We are working with Dell to make an Action Items Dashboard. This Dashboard will provide Dell employees a web-based UI with supporting APIs on top of the existing database that allows for management of the action items events data. image

A brief description of the existing action items system

The action items system supports marketing campaigns that allow Dell to reengage customers who have abandoned their carts through email. A series of microservices across cart & personalization communicates with each other through HTTP as well as AMQP to allow for the events to be processed accordingly. Events are stored in a Postgres database to allow persistence of up to four weeks. Currently management and visibility of the events are cumbersome and not efficient. For example, to see how many customers would receive abandoned cart emails that contain a specific product, this would require an engineer to write dedicated queries in the production database which is not practical.


image

What are we trying to make?

Our goal is to build a fully featured web-based UI with supporting APIs on top of the existing database that allows for all analytical as well as management tasks of the action items events data. This will increase visibility as well as productivity of all admin tasks related to the dataset. This project will be developed for running on Windows only.

Demonstration

ActionItemsDashboardDemo.mp4

A few prerequisites to run this project

You need a few things before you can run this project.

Visual Studio 2022

You can install Visual Studio 2022 on Microsoft's Visual Studio downloads page. You need Visual Studio 2022 as you will be using .NET 6.0 which is only compatible on Visual Studio 2022. Make sure to install the '.NET Desktop Development' Workload when installing.

.NET 6.0

You can install .NET 6.0 on Microsoft's .NET downloads page. You can confirm that you have it by running "dotnet --version" in your command prompt - you should see version 6.0 displayed.

PostgreSQL

You can install PostgreSQL for Windows on the PostgreSQL Windows installer downloads page. Keep a record of the details used for the hostname, username, password, and database name as they will be needed. To confirm that it is running, you can press the windows key + R, and search "services.msc", and check if PostgreSQL is running or not.

How to run the project

  1. Clone the repository.
  2. Open Visual Studio 2022, and click on "Open a project or solution"

Screenshot 2022-03-31 at 23 39 20

  1. Click on the web-app.sln file inside the web-app directory from this project that you cloned.

Screenshot 2022-04-12 at 12 08 52

  1. Now that the web-app C# project is in your Visual Studio 2022 IDE, you need to right click on the project and click Manage Nuget Packages.

Screenshot 2022-03-31 at 23 45 52

  1. From there, under Browse, search for npgsql and select the first entry as shown below and install. You can learn more about it here.

Screenshot 2022-03-31 at 23 45 52

  1. Now search for DotEnv.Core and select the first entry as shown below and install. You can learn more about it here.

Screenshot 2022-04-01 at 00 14 03

  1. Finally, search for Microsoft.TypeScript.MSBuild and select the first entry as shown below and install. You can learn more about it here.

Screenshot 2022-04-12 at 12 13 36

  1. Now you need to setup the environment variables for the C# code to connect to your PostgreSQL server. Go into the main directory of the project, and run the shell script using sh ./setupEnv.sh (or just ./setupEnv.sh in windows powershell). It will ask you a number of questions, and it will make and fill a .env file inside of /web-app for you.

Screenshot 2022-04-01 at 00 14 03

  1. Now you can run the program Program.cs inside of Visual Studio 2022. You can see the PostgreSQL database being populated using PgAdmin4 which is installed automatically when you install PostgreSQL for Windows. It should be on the left, an example would be under Servers -> PostgreSQL -> Databases -> postgres -> Schemas -> actionitemsdata -> Tables -> actionitems. You can right click this, and press 'View/Edit Data' and finally click 'All Rows', and you can see the sample data loaded into the table.

  2. You will also see the web-app application being run. The demonstration video above shows how the web application dashboard should look.

Authors

Author Current Year Course
Prathamesh Sai 3rd year Computer Science
Luke Seckerson 3rd year Computer Science
Varjak Alex Wolfe 3rd year Computer Science
Thomas Moroney 2nd year Computer Science
Kevin Morley 2nd year Computer Science
Eimear Ryan 2nd year Computer Science and Business