GithubHelp home page GithubHelp logo

myalpaca's Introduction

myAlpaca


Overview

Team Members

Created, designed, and developed by Misbah Ali, Jason Kang, and Zulay Scottborgh (Git Czar) for the General Assembly Software Engineering Immersive (July โ€™20 Cohort) Unit 3 Group Project.

Team Expectations

Team values and expectations can be found on our project's Group Expectation Setting Document.

Permissions

Digital assets used with full licensing and permission from Unsplash.


MVP

The myAlpaca is an app that will give students who are studying abroad an easy way to maneuver their new environment. The app will allow users to register for an account and create profiles that include the parameters of their choice such as their area of studies, interests, hobbies, and priorities.


Goals

  • Create a NoSQL database with MongoDB, to host all user information.
  • Create CRUD functionality for creating, updating, reading and deleting user on the backend
  • Use the React framework to imprement front end CRUD functionality from registering a user, updating information and deactivating/deleting an account
  • Deploying the app to Netlify or other similar services

Schema

const User = new Schema(
  {
    username: { type: String, required: true },
    email: { type: String, required: true },
    password: { type: String, required: true },
    from_location: {type: String},
    to_location: {type: String},
    education: {type: String},
    area_of_study: {type: Array},
    interests: {type: Array},
    hobbies: {type: Array},
    assistance: {type: Array},
    priorities: {type: Array}
      },
  { timestamps: true }
)

module.exports = mongoose.model('users', User)

Libraries

Library Description
React Powers the application functionality/environment
React Router Allows application to be navigable without having to refresh the page.
MongoDB A document-oriented NoSQL database used for high volume data storage.
Express A Node.js web application server framework, designed for building multi-page web applications
Express Router Express router is a class which helps us to create router handlers

Client (Front End)

Wireframes

myAlpaca Wireframe + Style Guide

  • Desktop Layout for Home Page, Register User, Build Profile, Delete Profile

Component Hierarchy

####front end
src
|__ components/
      |__ shared/
            |__ Footer/
                  |__ Footer.jsx
                  |__ Footer.css     
            |__ Header/
                  |__ Header.jsx
                  |__ Header.css  
|__ screens/
      |__ RegisterPage/
            |__ RegisterPage.jsx
            |__ RegisterPage.css
      |__ UserCreate/
            |__ UserCreate.jsx
            |__ UserCreate.css
      |__ UserEdit/
            |__ UserEdit.jsx
            |__ UserEdit.css
      |__ UserDelete/
            |__ UserDelete.jsx
            |__ UserDelete.css
      |__ Home/
|__ services/
      |__ apiConfig.jsx
      |__ users.jsx
|__ utils/
|__ App.js
|__ index.js

####backend
|__ components/
    |__ users.js
|__ db/
    |__ connection.js
|__ models/
    |__ user.js
|__ routes/
    |__ users.js
|__ seed/
    |__ users.js
|__ .gitignore
|__ package.json
|__ server.js

Component Breakdown

Component Type state props Description
Header functional n n The header will contain the navigation and logo.
Navigation functional n n The navigation will provide a link to each of the pages.
Gallery class y n The gallery will render the posts using cards in flexbox.
Gallery Card functional n y The cards will render the post info via props.
Footer functional n n The footer will show info about me and a link to my portfolio.

Component Estimates

Task Priority Estimated Time Time Invested Actual Time
Add Contact Form L 3 hrs 2 hrs 3 hrs
Create CRUD Actions H 3 hrs 1 hrs TBD
TOTAL 6 hrs 3 hrs TBD

Server (Back End)

ERD Model

Whimsical Diagram

Data Hierarchy

controllers
|__ users.js
|
db
|__ connection.js
|
models
|__ user.js
|
routes
|__ users.js
|
seed
|__ users.js
|
.gitignore
package.json
server.js


Post-MVP

The goals for this project post-MVP are as follows:

  • Homepage build-out
  • Log In Page?
  • Restaurant Page
  • Search Bar functionality

Code Showcase

Use this section to include a brief code snippet of functionality that you are proud of and a brief description.

Code Issues & Resolutions

Use this section to list of all major issues encountered and their resolution, if you'd like.

myalpaca's People

Contributors

zulays avatar kangja avatar maliccny avatar

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.