GithubHelp home page GithubHelp logo

ncsumobiles / spring18_bugle Goto Github PK

View Code? Open in Web Editor NEW
0.0 6.0 1.0 36.24 MB

Visual Interfaces for Mobile Devices - Spring 2018 - Team : Bugle

JavaScript 23.14% Java 36.76% HTML 37.75% Scala 0.38% CSS 1.97%

spring18_bugle's Introduction

Bugle Project

Team

Sachin Kumar, Sumit Srivastava, Pooja Gosavi, Nida Syed, Lin Zhu, Shyam Ramakrishnan, Cameron Harris

Tagline

Making a difference just got easier!

Description

Bugle is a mobile website that helps bridge the disconnect between volunteers and volunteering organizations. It provides a platform for volunteers interested to participate in volunteering events that suit their interests. It also helps organizations searching for the enthusiastic volunteers who share their passion.

How to install

  • Instructions for running UI: README
  • Instructions for running backend: README

Project Milestones:

  1. Requirement Gathering and Design
  1. Construction and Implementation

Following functionalities implemented as part of the construction and implementation phase:

  • Login/Sign Up and Profile Page

    • Login and signup functionality for volunteers and organization
  • Volunteer Home Page

    • See list of available events to apply
    • Apply for a event
  • Organization Home Page

    • Host events
  • Event Details Page and Approve/Reject Page

    • Approve or Reject volunteers for the hosted event
    • More description about the event
  • Chat Page

    • Volunteers and Organisers can interact with chat
    • Separate persistent chat for each event
  • Optional Features (Google Login)

    • Option to login with google authentication
  1. User Testing
  • Validation of features
  1. Deployment
  • Deployment of application on Heroku platform for public access.

Technology Stack used

  • Node express - UI server
  • Play framework - backend server with APIs for transacting data with database
  • AngularJS - Frontend of website
  • Google authentication - Google sign in.
  • Google Maps - maps integration for easier navigation
  • Heroku - Deployment platform
  • PostgreSQL - database server
  • Socket.io - websocket framework for Chat functionality

Features

  • Mobile website for Bugle Volunteering app.
  • Sign up with email for Volunteers and Organizations.
  • Google sign in for Volunteers and Organizations.
  • Organizations can host events for volunteers to participate.
  • Volunteers can see events based on every organization and apply for the event.
  • Organizations can choose volunteers for their events.
  • Volunteers can chat with organizers and other volunteers for the event he/she was approved for.
  • Google Maps integration for navigation to volunteer site.

Future Work

  • Profile rating system for organizations and volunteers.
  • Integration with BeenVerified for background verification.
  • Option for users to add profile pictures.
  • Facebook integration - signin and sharing.
  • Chat notifications on mobile devices.
  • Email verification and captcha integration

Screenshots:

Screencast:

Bugle Video

Progress Reports:

Report 1, Report 2, Report 3, Report 4, Report 5, Report 6.

GitHub:

Bugle on GitHub

Live URL:

Bugle(Deployed on Heroku)

Sample Users:
Organization - email: [email protected], pwd: o1
Volunteer - email: [email protected], pwd: v1

Specification:

Backend API Specification

spring18_bugle's People

Contributors

cmharri5 avatar gosavipooja avatar shyam-ramakrishnan avatar techsachinkr avatar zhulinn avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

spring18_bugle's Issues

Logout

Create a logout button.

Auto scroll chat box

chat box stays on chat and new messages are not visible. It should automatically scroll to the latest message.

Show apply Event buttons on events page to volunteers

In orgEvents.html page, display an apply button for volunteers to apply to events.

correspondingly, show "Join Event" or "Leave Event" button on event details depending on whether user has already joined the event or not.

Create Edit Event Page

When an organization user taps on any of their events, instead of taking him to the volunteers tab, show a page that shows him the event details and allows him to edit the event details.

Format Chat box

format chat box to

  • highlight user message
  • distinguish between messages of different users
  • align left/right based on who is sending [if possible]

Load old chat messages

when a user leaves the chat page, all the history goes away.
we need to store the chat on user's local storage and display it to him when he is back on the chat page.

fix db reset problem

sqlite database gets reset whenever server goes to sleep. Try using Postgres instead.

Show a message when no chat groups.

If a user is not approved for any events then they will have no chat groups. Show a message saying "You have not been approved for any volunteering events yet" in place of an empty screen

incorrect org detials from event details page

When the user clicks on event details page from his applied events, the organization details are not loaded correctly in the scope causing the organization name to be displayed incorrectly.

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.