russjohnson09 / coderuss

Other
0 stars 1 forks source link

Coverage Status Build Status dependencies Status Code Climate Issue Count Uptime last 7 days. Statuscake Uptime Monitoring

Coderuss

This repo is focused on implementing a web service and frontend for using this service. Initially I mad no assumptions on what the best way to do this but have ended up using node for the api. The frontend is still undecided. Test cases are primarily endpoint tests although there will definitely be a need for unit tests when a service is not practical or not efficient.

Install

Features

There is an attempt to document features here but this list should not be considered complete. Reference tests as the source of truth.

TV Shows

See nodeserver/tests/main/tvshows/tvshows_notifications_spec.js for tests.

Endpoints

Cron

Check tv shows for next air date and notify user. Todos module manages user socket io for the time being.

Changelog

TODOS

Add Utah obesity Rates API

Docs

https://dev.socrata.com/foundry/opendata.utah.gov/hrjf-yz8j

Example

https://opendata.utah.gov/resource/hrjf-yz8j.json

Add US census data api

Api Example

api.census.gov/data/2016/acs/acs1?get=NAME,B01001_001E&for=state:&key={{API_KEY}} https://api.census.gov/data/2016/acs/acs1?get=B01001_001E&for=state:&key={{API_KEY}}

Difficult to decipher.

Api Docs

https://www.census.gov/data/developers/data-sets/acs-1year.html

Get list of variables

https://api.census.gov/data/2016/acs/acs1/variables.json

Add github review commits 0123_github_review

Add the ability to take notes on github branches. Require these notes to be reviewed and confirmed before merging into master.

Add notification hook

add the ability to send notifications to a user via /v1/notifications/:hookId/notify {"message":"ping""} POST

Fix /v1/postcards/send/test TIMEOUT

https://travis-ci.org/russjohnson09/coderuss/jobs/312962892 https://travis-ci.org/russjohnson09/coderuss/jobs/312968884 1) postcards /v1/postcards POST 200 response /v1/postcards POST 200 response: Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.

Exceeds 2000ms to create test postcard.

Fitbit oauth

TypeError: Cannot read property 'refresh_token' of undefined at refreshToken (/home/vagrant/coderuss/nodeserver/v1/fitbit/fitbit.js:210:40)

Billing Invoicing

Something like this https://github.com/overshard/timestrap for time tracking and invoicing. Tmetric did a good job but billing is now a paid feature.

Release Notes

Send release notes to users from some directory in the repo.

Checkout

Add orders, products, anything needed for a full featured ecommerce site. Use https://www.pwinty.com/ApiDocs/Photos/2_3#Create for reference. Pwinty groups all order items as photos even though they have other products. Maybe use something more generic.

Tracking an orders as billable components is probably enough. https://developer.paypal.com/docs/api/invoicing/ is a good reference for invoicing.

Idempotent Request

Not creating duplicate orders is something very important. https://lob.com/docs#idempotent-requests has a implementation of idempotent requests.

Unstable tests

https://travis-ci.org/russjohnson09/coderuss/jobs/267275160

/v1/postcards POST timeout 2000. relies on lob service so this is probably the source of the timeout. Fix is either stub this and loose integration, increase timeout which could lead to other problems or just monitor.

https://travis-ci.org/russjohnson09/coderuss/jobs/267284600

/v1/proxy/tvmaze/episodes/4189 GET timeout