GSoC 2019 - Developer Web Interface for ReactOS (Final Report)

by ayush_sinha | August 20, 2019

Introduction

Developer Web Interface for ReactOS is a web tool to support the development of ReactOS. The main goal of this project is to develop a platform for ReactOS developers to easily track Commits, Builds and Test details. The web Interface makes API calls to various endpoints of GitHub, BuildBot and Testman API and interrelates them and renders a simplified view of Commit, Build and Test details at one place, so developers don't have to visit different sites to view different details, our web Interface collects all details and displays at one place.

Links

  • The working repository can be found here.
  • The project is deployed here temporarily.

What has been done

  • API calls to various Endpoints of GitHub API.
  • Filtering commits by branch.
  • Filtering PRs by State (closed, open, all)
  • API calls to BuildBot API.
  • API calls to Testman (reactos/web/testman/ajax-search.php)
  • Filtering Testman and buildbot data with respect to commits and PRs.
  • Rendering all data to the Client side.
  • Added Server side Pagination.

 

The commits can be filtered by branch and PRs can be filtered by their States(closed, open and all ). At first, the screen loads and show 10 panels containing the latest commits and upon clicking the panel you get all details about the commit, build and tests.

Features Yet to Implemented

  • A Search feature to list any commit or PR
  • Filtering by Date, author ,etc
  • And UI improvements for sure

Conclusion

The web interface now shows all data related to commits, builds and tests and is ready to use. It will save time developers so that they can focus on development rather than spending their time searching for commit details and finding build results around the buildbot interface.

Plans after GSoC

ReactOS had been a very supportive organisation throughout the GSoC period. I would like to thank my mentors @colin Finck @extravert34 and @vicmarcal for guiding me. From now onwards I'll be a regular ReactOS contributor.