Giter Site home page Giter Site logo

teacherhub's Introduction

teacherHUB

teacherHUB is a singlepage dashboard app that is designed to be an all-in-one destination to help teachers in the areas of:

  • Grade Management
  • Classroom Management
  • Student Dicipline Records
  • Parent Communication
  • Student Communication
  • Administration Communication

teacherHUB was built using AngularJS, Materialize, and Firebase for data storage. I also used GoogleCharts to visualize student grade data.

Getting Started With teacherHUB

To install teacherHUB on your machine:

  1. Clone down the teacherHUB repo by entering git clone [email protected]:tgbowman/teacherHUB.git into your terminal.
  2. From your terminal do a npm install
  3. Go to https://firebase.google.com/ and login or create an account.
  4. From the navbar click on GO TO CONSOLE
  5. Create a new project
  6. From project screen click the "Add Fireabse to Your Web App" button.
  7. You will be given a code snippet to add firebase to you app.
  8. Open the app in your code editor of choice, create a new file in the app folder called app.config.js 9.Paste the following code in that file, inserting the data that firebase gave you from step 7 into the appropriate fields.
  app.constant("FIREBASE_CONFIG", {
  apiKey: "",
  authDomain: "",
  databaseURL: "",
  storageBucket: "",
  messagingSenderId: ""
})

app.run(function (FIREBASE_CONFIG) {
  firebase.initializeApp(FIREBASE_CONFIG)
})

10.To run the app in the browser run http server from your terminal.

Using teacherHUB

  1. To begin using the app you need to first register for an account.
  2. Once registered you will be taken to the teacher dashboard.
  3. To get started simply create a class and you are ready to go!
  4. You can add students to a class via the students tab, or by clicking the affordance to the right of the class name on the class Dashboard page.
  5. To add an assignment go to the assignments page and complete the assignment create form.
  6. To grade assignments click on the assignment from the class dashboard and add student grades. They are updated to the database automatically.

teacherhub's People

Contributors

tgbowman avatar

Watchers

James Cloos avatar

teacherhub's Issues

Ticket #5: Adding grades to assignments

GIVEN: a user wants to add grades to a created assignment
WHEN: the user clicks the “View Assignments” from their class dashboard
THEN: a list of all created assignments is displayed with an input field to filter through assignments
WHEN: the user clicks the “Add Grades” button next to the assignment they want to add grades to
THEN: the assignment is displayed with the students in the class listed with empty input fields next to their names.
WHEN: the user enters grades into the fields the grade is automatically updated.
THEN: the student’s grades are stored in the database and their overall class grade is updated
AND: the classes average for that assignment is displayed under the students list

Ticket #4: Creating class assignments

GIVEN: a user wants to add and assignment for their classes
WHEN: the user clicks on the “Create Assignment” button from their class dashboard
THEN: a form appears requiring:

  • Name of Assignment
  • Description of Assignment
  • Class(es) this assignment will be added to
  • Due Date
  • **Correlating academic standards (drop down menu?)

WHEN: the user clicks on the “Add Assignment” button
THEN: the assignment is created in the database, is added to the designated classes, and the form clears for ready for them to create a new assignment.

Ticket #1: Creating an Account

GIVEN: a user wants to create an account.
WHEN: the user clicks on the “Create Account” button
THEN: a form appears where they must enter:

  • First Name
  • Last Name
  • Email address
  • Password

WHEN: the user clicks the submit button
THEN: the user is created in the database and the welcome dashboard is displayed

Ticket #3: Adding students to a class

GIVEN: an authenticated and logged in user wants to add students to an existing class
WHEN: the user clicks on the “Add students to class” button from their class dashboard
THEN: the list of created students is populated with a button to add them to their class
AND: an input field to search and filter through the created students and a button to create a brand new student are displayed
WHEN: the user clicks on the “Add student” corresponding to an existing student
THEN: that student is added to their class

GIVEN: the user wants to create a brand new student and add them to their class
WHEN: the user clicks on the “Create new student” button
THEN: a form is displayed that requires the following information:

  • Student first name
  • Student last name
  • Student email
  • Student grade level
  • parent/guardian first name
  • parent/guardian last name
  • parent/guardian email

WHEN: the user clicks the “Create Student” button the student is created and added to the students database and the teacher’s current class.

Ticket #2: Creating a Class

GIVEN: an authenticated and logged in user wants to create a new class
WHEN: the user clicks on the “Create a Class” button from their welcome dashboard
THEN: a class creation form appears requiring

  • Name of Class

WHEN: the user clicks the “Create Class” button
THEN: the class is created in the database and the user is taken to their newly created class’ dashboard

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.