Code Monkey home page Code Monkey logo

connectme's Introduction

ConnectME

User Interface

Overview

This was my personal project for module 3 at Turing School of Software and Design. I wanted to create an application that streamlined a few functionalities that Facebook already provided. The goal was to create a platform to search friends in a particular location and then message one particular friend or a group of friends in one location. A user should be able to login and logout, send and store messages to and from friends, and eventually, store groups of friends in particular locations. In this project, I implemented Firebase OAuth and database, used the Facebook Graph API, and tested with Enzyme/Jest.

Set Up

Fork this project

Run npm install from the root directory

Run npm start and visit localhost:8080 in your browser

Stack:

  • ReactJS/Redux
  • Firebase
  • Facebook Graph API
  • MomentJS
  • THUNK
  • Enzyme/Jest

Original Project Requirements

Self-Directed Project

The goal of this project is to create a successful web application from a project idea. You will create an app that will solve an actual problem.

Project Scope

A good project idea should:

  • Break down into logical iterations so that you can deliver a strong product on every check-in
  • Be something that real people would want to use to solve a problem
  • Have enough technical challenge to be worth your time (as opposed to a content challenge)
  • Feature Delivery

1. Completion

4: Developer completed all the user stories and requirements set in check-ins in timely manner.

3: Developer completed all the user stories and requirements set during check-ins.

2: Developer completed most of the user stories and requirements set during check-ins.

1: Developer completed the user stories and requirements partially.

2. Organization

4: Developer used a project management tool and updated their progress in real-time.

3: Developer used a project management tool to keep their project organized.

2: Developer used a project management tool but didn’t update the progress frequently.

1: Developer failed to use a project management tool to track its progress.

Technical Quality

1. Test-Driven Development

4: Project shows exceptional use of testing at different layers (above 95% coverage).

3: Project shows adequate testing (90% - 95% coverage).

2: Project shows gaps in test usage/coverage/design (85 - 90% coverage).

1: Project lacks sufficient testing (under 85% coverage).

2. Code Quality

4: Project demonstrates exceptionally well factored code.

3: Project demonstrates solid code quality, proper abstractions, and reduced duplication.

2: Project demonstrates some gaps in code quality..

1: Project demonstrates poor factoring.

Product Experience

1. User Experience

4: Project exhibits a production-ready and polished UX.

3: Project exhibits a production-ready user experience.

2: Project exhibits some gaps in the UX.

1: Project exhibits inattention to the user experience.

Next Steps

  • Refactor FriendList
  • Error handling for no friends found at a location
  • Fix Logout Functionality
  • Make login dynamic (have to hardcode user token and id from facebook currently)
  • Send a message to multiple people in a location at once
  • Add google maps location

connectme's People

Contributors

davidbecker6081 avatar stevekinney avatar nfosterky avatar jbexx avatar rrgayhart avatar tylerjhevia avatar

Watchers

James Cloos avatar

connectme's Issues

Nice-to-haves

  • open previous messages with a particular person
  • character count ( limit of 150)
  • logged in user profile image

Message actions

  • add Message (user id, date.now (convert to month, date, time), user name, user info that message got sent to)
  • store message (firebase)
  • fetch messages from database (for particular user) / put in store
  • remove message

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.