Giter VIP home page Giter VIP logo

rs-api's People

Contributors

waldoj avatar

Stargazers

 avatar

Watchers

 avatar

rs-api's Issues

Customize cache headers

Caching obstructions should match reality. Prior years’ legislation should have long expire times, but this year’s active legislation should have times set relative to when the bulk data is updated.

New test: bills endpoint

  • issue a query for a list of all bills for a year
  • test that there are a large number of results
  • test that the right fields are present in the results

New test: bill endpoint

  • capture the JSON returned for a query for a bill, save that as a static file in the repo
  • create a test that will issue a query for that bill
  • deep-compare the two objects
  • if they don't match, error out, highlighting precisely how they don't match

Set up a CloudFront distribution

There's no need to have every request hitting the server. Set up a CloudFront distribution for these requests.

  • Review the work done in #1, figure out what went wrong
  • Set up proper cache headers in API responses (#2)
  • Enable the CloudFront distribution

Figure out how to use an ACM certificate

AWS Certificate Manager can issue the certificate, as long as the site is behind Cloudfront. (Or other services, but that's the viable one here.) You can't load it onto an EC2 instance. Figure out how to do that, to make the site portable, off its current server.

Add an endpoint to list legislators

  • list every legislator who we have a record of
  • include sufficient metadata for the requester to determine programmatically which ones are in office now
  • provide a filter to restrict the query to current legislators
  • document it

New test: legislator endpoint

  • capture the JSON returned for a query for a retired legislator, save that as a static file in the repo
  • create a test that will issue a query for that legislator
  • deep-compare the two objects
  • if they don't match, error out, highlighting precisely how they don't match

Create a districts endpoint

  • index page lists all districts, with the chamber, number, internal ID, and place names for each
  • each district endpoint should list all data that we have about that endpoint

New test: portfolio endpoint

  • capture the JSON returned for a query for a portfolio, save that as a static file in the repo
  • create a test that will issue a query for that portfolio
  • deep-compare the two objects
  • if they don't match, error out, highlighting precisely how they don't match

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.