Ruby CSS JavaScript CoffeeScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
admin
app
bin
config
db
lib
log
public
spec
test
vendor/assets
.gitignore
.rspec
Gemfile
Gemfile.lock
Guardfile
README.md
README.rdoc
Rakefile
change_log.md
config.ru

README.md

Project2

Admin Links

People

Concept

  • parent programs schedule, or pulls from google calendar
  • child presented with simple, iconographic view of days and weeks activities
  • empowers children to feel more control of their lives
  • eases seperation anxiety, eases social anxiety at school. Eases generalized anxiety about not knowing what is going to happen each day
  • allows child to anticipate upcoming events, birthdays, vacations, etc.
  • weather reports: enables child to dress appropriately for weather.

User Stories

  • Splash Page & User Sign Up/Log In

    • User directed to splash page (splash#index)
      • User can sign up as a new user (devise/registration#new) with an email and password or login if a returning user (devise/sessions#new)
  • Family View

    • Once logged in, User is brought to a family home page where they can see their family's children and their family's caregivers (family#show).
    • User is able to add children (:name, :image_url, :image_file) and caregivers (:name, image_url, :image_file) to this page via add buttons.
    • User can choose to enter a image_url (such as FB profile) or upload an image (via Paperclip image uploader).
    • If a User is new, default silhouettes will act as prompts to help identify where a child and where a caregiver should be added.
    • On this home page (family#show) user is also able to edits family settings (:name, :image_url, :image_file).
  • Kids View

    • User is able to navigate from the home page (family#show) to their Kid's View page (children#show), which serves as a calendar for the child's day
      • User is able to view the day's calendar events (:appointments) on the right and designated caregiver schedule (:childcares) on the left
        • User is able to see timeline in the middle with current time marker designated by their profile picture
        • The current time marker is dynamic and moves down the page throughout day
      • User has a lock/unlock mode. In lock mode, the Kids View is uneditable. In unlocked mode, the User is able to add a new calendar event (:appointment) or caregiver event (:childcares) or edit existing events.
        • User adds a title of the event (:title)
        • User adds the date and time that the event starts (:date_starttime) and that the event ends (:date_endtime) via a calendar drop down menu.
        • User is able to add an event image (:image_file) (via Paperclip image uploader)
        • The calendar is dynamic and calendar events (:appointments, :childcares) will resize depending on the size of the User's window.
    • On the current day Kids View, User is able to then scroll to new date (yesterday or tomorrow) via left and right arrow buttons
      • User is able to return to current day via a Today button
    • From any page User is able to logout (devise/sessions#destroy)

Diagrams

UI

Home Page (Family Show)

Home Page

Calendar View (Child Show)

Splash Page Wireframe Splash Page Wireframe

Home Page Home Page Wireframe

Calendar Page Calendar Page Wireframe

UX

User Flow Diagram

ERD

Models and Associations (ERD) Diagram

APIs

  • Facebook API Used for pulling profile headshot images
  • Paperclip Used for storing uploaded images
  • Google Calendar API

Toolkits

  • Skeliton #FIX

  • JQuery Query is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers.

  • JQuery UI Query UI is a curated set of user interface interactions, effects, widgets, and themes built on top of the jQuery JavaScript Library.

  • Timepicker addon to JQueryextension Extends JQuery UI's date-picker to include time functions

  • Moment JS A javascript date library for parsing, validating, manipulating, and formatting dates.

  • Paperclip #FIX

Changelog

See the seperate changelog file.