Skip to content

jamalbrowning/nutshell-alces

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nutshell-alces

PanAm Airlines

Nutshell Instructions

Nutshell is a new product offering that you have been tasked with building. It's a dashboard for people to use to organize their daily tasks, events, articles, friends, and chat messages.

You will be utilizing all of the skills and concepts that you've learned up to this point in the course.

  1. Functions
  2. Databases/API
  3. Github
  4. Objects
  5. CSS
  6. Handling user events
  7. Data entry/editing
  8. Modular code with Webpack
  9. Relational data

Firebase

Your team should have 1 firebase project that each memeber is added to as owners. Team leads will create the firebase project and add the rest of their team in. Your firebase should have the following 6 collections:

/users
/articles
/events
/tasks
/friends
/messages

Each collection should have data in the following structure:

Users

{
    "username": "Cat Lady",
    "uid": "5ykBb0xyadPZLgH4EPO4i88HIql2"
}

Messages

{
    "userUid": "5ykBb0xyadPZLgH4EPO4i88HIql2",
    "message": "What's up?",
    "timestamp": 1528763298535,
    "isEdited": true
}

Articles

{
    "userUid": "5ykBb0xyadPZLgH4EPO4i88HIql2",
    "url": "https://www.quantamagazine.org/newfound-wormhole-allows-information-to-escape-black-holes-20171023/",
    "title": "Wormholes Allow Information to Escape Black Holes",
    "synopsis": "Check out this recent discovery about workholes"
}

Friends

{
    "userUid": "5ykBb0xyadPZLgH4EPO4i88HIql2",
    "friendUid": "gH4EPO4i88HIql25ykBb0xyadPZL",
    "isAccepted": true,
    "isPending": false
}

Tasks

{
    "userUid": "5ykBb0xyadPZLgH4EPO4i88HIql2",
    "task": "Take out garbage",
    "isCompleted": true
}

Events

{
    "userUid": "5ykBb0xyadPZLgH4EPO4i88HIql2",
    "event": "Bonfire at the beach",
    "startDate": 1528763298535,
    "location": "Ocean Beach"
}

Division of Labor

This project will consist of 5 modules or dashboard components (messages, friends, articles, events, tasks). Each module involves doing complete CRUD on the collection it is named after. Each member of your team will be responsible for a module. If your team only has 4 people your team will not complete the Articles module and will not have that collection in their database.

Once a team member has claimed a module they are responsible for writing EVER SINGLE bit of code for that module. If they require help your team should do some pair programming but the person who owns the module should do ALL THE TYPING.

There should be NO gitcidents because each team member should be working in a folder named after their module. For example if I am working on the tasks module I would have a file structure like:

- javascripts/
  - main.js
  - tasks/
    - taskMain.js
    - taskEvents.js

Your team will need to closely collaborate on authentication and determining how to pull together all the modules to display them on the dashboard.

Professional Requirements

  1. All teammates must be using Grunt to run ESLint and Browserify during development
  2. Each module should have a comment at the top with the following info: author(s) and purpose of module
  3. The README for your project should include instructions on how another person can download and run the application
  4. You should be writing tickets and moving them along a github project board
  5. The project should be deployed to firebase

Contributors

Deployed Site

https://panam-10421.web.app/

Clone the Repository

  • Clone it 👉🏼 $ git clone https://github.com/nss-evening-cohort-12/nutshell-moose.git

  • Install the dependencies 👉🏼 $ npm install

  • Install the dependencies 👉🏼 $ npm install chart.js

  • Run $ npm start

Technologies Used

Javascript Firebase Axios SASS

About

PanAm Airlines

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 84.8%
  • SCSS 8.7%
  • HTML 6.5%