Key Information

Register
Submit
The challenge is finished.

Challenge Overview

Challenge Objectives

  • Integrate the new backend API with the pages described below.

 

Project Background

  • The Scout web app, now available at scout.energy.gov, was developed over the past two years through a collaboration between BTO, the national labs, and Topcoder. The app improves the user-friendliness of several key Scout features; for example, it allows one to easily estimate the portion of U.S. building energy use and CO2 emissions that a candidate technology might affect; to rapidly create new Scout energy conservation measure (ECM) definitions and send them to BTO for review; and to interactively visualize energy use, cost, and CO2 emissions results for ECM portfolio simulation runs.

  • The app’s capabilities improve the accessibility of Scout data and results and might expand the base of users that wish to contribute new Scout ECM definitions or run custom Scout analyses. Looking ahead, further enhancements to the app will continue to improve the tool’s potential for broader impacts across the building simulation community.

  • In this round of Scout web app development, we have the following major objectives:

    • enable end-to-end Scout analyses within the web app,

    • add user accounts to support saving custom ECMs and analysis results,

    • update existing app components to reflect new Scout features, and

    • apply final fixes and performance improvements to existing features and app architecture.

 

Challenge Background

  • We built the current version of the Scout web app with a simple node.js based backend using SQLite as the datastore. It allows public access and doesn’t support user accounts, which is limiting what users can do with the web app.

  • In previous challenges, we have completely re-written the backend to support more features and it’s now using PostgreSQL as the datastore.

  • In this challenge, we are integration some of the pages front the frontend with the new API.

  • We plan to run the web app in docker, please keep that in mind and make all configurable parameters such as the API endpoint easy to configure through environment variables.

 

Technology Stack

  • HTML5

  • CSS

  • Javascript

  • Node.js

  • PostgreSQL

  • REST

  • SMTP

  • JSON

  • Docker

 

Detailed Requirements

In this challenge, we are looking to integrate the following pages/features with the new API and make sure they are functional after the integration:

  • The python scripts have been updated to provide full support for ECM creation/editing, please use the latest python scripts provided in the forum.

  • Ignore the notification and task icons for now (the ones to the left of the user’s name after login)

  • This challenge will complete the ECM (including add and edit) and Analysis features, which should include the following:

    • co2.html

    • costs.html

    • ecms.html

    • energy.html

    • financial-metrics.html

  • All features on these pages need to work for all the roles.

  • The following changes need to be made to the UI and properly integrated with the backend in this challenge:



Final Submission Guidelines

  • Full code that covers all the requirements.

  • A detailed README file including information on how to configure, run, and verify your application.

ELIGIBLE EVENTS:

2021 Topcoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30131977