Giter Club home page Giter Club logo

fieldday's Introduction

It's me, Ryan!

(Thanks Tierney!)

Usage

Get them deetz:

npx ryanmurakami

fieldday's People

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

fieldday's Issues

Build out Front End Routing

Use React Router (newest version).

Necessary pages:
/ - home page
/events - events page
/events/{event id} - event template page
/competitors - competitors page
/competitors/{competitor id} - competitor template page
/settings - settings page

DynamoDB connection error in console

There's a DynamoDB exception in the console when it can't connect. We should catch this and not print the error. Maybe we can show a human readable version in the settings section if it can't connect? Either way, it shouldn't output to the console.

Add Mock Data

The static data, such as events and competitors, should come from a static JSON file.

Initially, whenever any of the data is requested, just serve it from the JSON file.

Configure logging

The app should log all access and any errors locally. They should be able to be access by the CloudWatch agent to send to CloudWatch. The learners will do that in the course, so we just need to make sure that logs are being output somewhere.

Access logs should be output to one file, Errors and other logs should go to a different file.

Create Base Project

Build out base project.

Technologies to use:
Node.js
Express (for server)
React (for front end)
React Router
Webpack + Babel
AWS SDK

Build out Server

Server should have these endpoints:

/ - serves index

also, at least these api endpoints:
/api/events - Get all Events
/api/events/{event id} - Get Events
/api/competitors - Get all Competitors
/api/competitors/{competitor id} - Get Competitor
/api/status - Get AWS connection status for settings page
/api/commands/{command} - Run command (eg. Start, Reset)

Save static data in DynamoDB

Static data (like events and competitors) should be copied over to DynamoDB on process start up, if DynamoDB connection can be made. Overwriting is fine.

Run everything with `npm start`

To simplify the process when learners are running the app locally and on EC2, I'd like it to start with npm start and no other steps. So, the user will run:
npm install
npm start
And the app should build and start running. I think you may need to move the client dependencies up a level as well, so everything can install and run with those two commands.

Event simulation time is off

The simulation time is off somehow. They should only be taking 60 seconds each, based on the mock data, but they're taking a lot longer.

Simulate Field Day Event

Run the Field Day event.

  • Each event will run in a random order.
  • Each event will have a set run time (eg. 5 mins)
  • As the time progresses for an event, the progress is retrieveable (will be shown on front page).
  • At the conclusion of the event, random times in a range will be set for each competitor (each event will have a range).
  • The competitors will be ranked according to their times.
  • The results will be saved (initially in memory).

Clear Results

Clear the results (either in memory or DynamoDB) when initiated from the front-end in the settings page.

Event place is off

The place ("1st Place") is off for some numbers. Should be like this:
1st Place
2nd Place
3rd Place
4th Place
5th Place
6th Place
7th Place
8th Place

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.