GithubHelp home page GithubHelp logo

mafe-rnanda / helpbook Goto Github PK

View Code? Open in Web Editor NEW

This project forked from drmustafah/helpbook

0.0 0.0 0.0 27.85 MB

HelpBook is a full stack app where donations and volunteering can happen. The main goal of it is to provide a platform for people and organizations to request help and users to provide it. By centralizing all of those in need and making it easier and faster for the donor to find a cause that he/she wants to support.

HTML 1.02% CSS 0.40% JavaScript 86.35% SCSS 12.10% Shell 0.13%

helpbook's Introduction

HelpBook

Project Description

HelpBook is a SPA (Single Page Application) which provides a platform for people and organizations to request help and users to provide it. On HelpBook donors can make a donation securely and easily and the receivers will have a profile to ask for the help they need, that will be easily accessable to donors. The app is built with the latest tools and techniques for optimized user experience. The App utilizes React built-in and hooks and allows users (donors) to donate and follow users in real time. The app also allow users (receivers) to seamlessly edit, add or remove wishlist items or money goals with a user friendly pattern. Data is persisted by the API server using a PostgreSQL database. The client application communicates with an API server over HTTP with axios library, using the JSON format.

Project Features

  1. Users are be able to choose if they need help or wants to provide help.
  2. Users that want to help (Donors) are able to access and get directed to the help dashboard page without logging in.
  3. Donors are be able to browse all categories and help requests on the Dashboard.
  4. Donors are directed to login page when wanting to perform a help action (donation).
  5. Donors with no account can access register page through the login page and register successfully.
  6. Donors when registered successfully are directed to their profile and are able to track all their activities and information.
  7. Donors are directed to payment page information when donate action is selected.
  8. Donors receive a message providing them address and directions of where to drop items and the time limit to do it.
  9. Donors are able to pay with credit card successfully.
  10. Donors are not be able to create a wishlist or ask for donations.
  11. Users that ask for help (Receivers) are directed to login page when they press the 'I want help' button.
  12. Receivers with no account can access register page through the login page and register successfully.
  13. Receivers are able to select if they are an organization or an individual during registration.
  14. Receivers once logged in will be directed to their profile page.
  15. Receivers are able to edit, add, delete an item in the wishlist or control the donation money amount.
  16. Receivers are able to track all their information, activities and history.

Setup App

To setup the app,

  • Fork and clone and repo.
  • Navigate to client folder in command line and install dependecies with npm install.
  • Navigate to server folder in command line and install dependecies with npm install.

Setup Database

  • Set a .env file using the .env.example provided
  • Run psql in the server directory using psql -d <project name in .env> -U <username in .env>
  • Create tables in database using \i db/schema/01_schema.sql
  • Seed tables using \i db/seeds/01_seeds.sql

Running The app

  • Run the server using
npm run local
  • Run the client using
npm start

ScreenShots

'Landing Page' Helpbook Landing Page 'App Dashboard' App Dashboard where user can navigate through different categories to see organizations and individuals accordingly 'Receiver Profile' Receiver (organization) profile where an organization can edit their information 'Donor Profile' Donor profile where a donor can see their stats , information and unfollow other users 'Donate Item process' Item donation walkthrough, when all quantity is donated item is removed

Project Stack

Front-End: React, Axios, JSX, HTML, SASS, JavaScript, Material UI, Stripe, JWT-decode

Back-End: Express, Node.js, PostgreSQL, JWT

Dependencies

Client Dependencies

  • React
  • React-dom
  • React-bootstrap
  • React-dotenv
  • React-router
  • React-router-dom
  • Material-ui/core
  • Material-ui/icons
  • Stripe/react-stripe-js
  • Stripe/stripe-js
  • Testing-library/jest-dom
  • Testing-library/react
  • Testing-library/user-event
  • Axios
  • Bootstrap
  • Font-awesome
  • JWT-decode
  • React-scripts
  • SASS
  • Babel

Server Dependencies

  • Body-Parser
  • Chalk
  • Dotenv
  • Express
  • JsonWebToken (JWT)
  • Morgan
  • Pg
  • Pg-native
  • Nodemon \i

helpbook's People

Contributors

drmustafah avatar mafe-rnanda 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.