legistats

Quick project in TypeScript/React for viewing legislative records.

React
TypeScript

Overview

Frontend-only web app for viewing the voting records of 1648 Argentine legislators, along with information on their parties, party colleagues, constituencies, flags, and vote details.

Overview of legistats

Features

  • Statically typed CRA app
  • Search box with autosuggestion
  • Instant table filtering
  • Doughnut chart for vote numbers
  • Paginated table for vote details
  • Data stored as JSON
  • Loading indicators

Data

Since this is a frontend-only project, data is simply stored as JSON, with two exceptions:

  1. As photographs are no longer available at the original API, they are generated via Faker.js (Two photographs are still included for demo purposes.)
  2. As the link table for votes is too large for efficient JSON parsing, vote numbers are randomly generated, so vote details are randomly assigned. The votes data, however, is still provided as an .sql file in the data directory.
Overview of legistats

Installation

  1. Install Node and clone repo
  2. Get dependencies: npm install
  3. Run: npm run start

Operation

Simply look up a legislator in the search box, or click on a name in the table, to view all their available information.

Overview of legistats

Author

© 2019 Iván Ovejero

License

Distributed under the MIT License. See LICENSE.md