Giter Site home page Giter Site logo

lindafoodev / commonly Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 791 KB

Paired programmed and built an online resource where members of a given community can loan, give away or sell their items all while encouraging interaction to get to know your neighbors.

JavaScript 87.27% HTML 3.11% CSS 9.61%

commonly's Introduction


Commonly

Connecting you locally one small step at a time.

Key FeaturesSetupUsageScreenshotsDocumentationHistoryTechnology Stack Credits

Build Status


Online resource where members of a given community can loan, give away or sell their items all while encouraging interaction to get to know your neighbors.

homepage screenshot


Key Features

  • Share items by offering them up for loan
  • Give away any item to those who need it
  • Sell your items to make an extra buck or support local community charities
  • Borrow a needed item from available community resources
    • Check in available community resources
    • Check out available community resources
  • Add a new item
    • Submit a new item
    • Cancel option to list new item
  • Edit an existing item you list
    • Submit edits made to an existing item
    • Cancel option to edit
  • Delete an existing item you list
  • Choose to borrow an item, claim a free item, or purchase an item

Setup

To clone and run this application, you'll need Git, Node.js (which comes with npm), MongoDB installed on your computer.

From your command line:

# Clone this repository
$ git clone https://github.com/thinkful-ei17/node-capstone-abraham-linda

# Go into the repository
$ cd node-capston-abraham-linda

# Install dependencies
$ npm install

# Run mongod instance on localhost (Seperate Terminal)
$ mongod

# Seed data locally
$ mongoimport --db sharing-is-caring --collection items --drop --file ~/items/v1/primer-itemdataset.json

# Run the app
$ npm start

Usage

After you clone this repo to your desktop, go to its root directory and run npm install to install its dependencies.

Once the dependencies are installed, run an instance of mongod and seed data locally. Then, you can run npm start to start the application. You will be able to access it at localhost:8080


Screenshots


Borrow item

borrow screenshot


Return item

return screenshot


Add item

add item screenshot


Edit item

edit item screenshot


Delete item

delete item screenshot


Borrow/Buy/Claim item

claim item screenshot


Documentation

Model

  • item The Item object models the resources in the Items database for REST API.
    • name {string} Name of item posted
    • image {string} Display icon of image provided by user or default to random icon.
    • type {string} Designate what type of transaction category. Either 'Sell', 'Loan', or 'Free'.
    • description {string} Description of item posted
    • postedBy {string} Capture the user who posted the item
    • acceptedBy {string} Capture the user who receives the item
    • type {string} Designate what type of transaction sub-category. Either 'Make Offer', 'Purchased', 'Claim', 'Claimed', 'Borrow', or 'On Loan'.

Events

  • welcome When a user acceses the application.
  • create When a user wants to create an item.
  • addItem When a user creates an item.
  • cancelOption When a user chooses to not create an item or edit an item.
  • edit When a user wants to edit an item.
  • editItem When a user edits an item.
  • claimItem When a user wants to receive an item.
  • returnItem When a user wants to check-in (return) an item.
  • delete When a user deletes an item.

REST API

  • welcome()Loads application
  • listItems()Gets all the items in the Items database
  • listItem(id) Gets an item in the Items database by id
  • createItem(newItem) Creates a new item to the Items database
  • editItem(editedDocument) Updates an existing item in the Items database
  • claimItem(claimDocument) Updates an existing item in the Items database to designate the recipient of an item
  • returnItem(returnDocument) Updates an existing item in the Items database to remove the recipient of an item and make item available again
  • deleteItem(id) Deletes an existing item in the Items database

History

  • 0.11.0 - Update README
  • 0.10.0 - Add landing page for demo
  • 0.9.0 - Update tests to include return, edit and claim functionality
  • 0.8.1 - Add additional css styling to buttons
  • 0.8.0 - Add additional css styling to list, create, and edit page
  • 0.7.1 - Fix race condition of action buttons
  • 0.7.0 - Add button functionality for returning items
  • 0.6.0 - Add sort by descending for items listing
  • 0.5.4 - Add button functionality for claiming items
  • 0.4.0 - Update tests for CRUD
  • 0.3.0 - Update images field to use provided image link or placeholder
  • 0.2.0 - Fix next issue
  • 0.1.0 - Initial release

Technology Stack Credits

This software uses code from several open source packages.

Front-end technologies

  • ES6 JavaScript
  • jQuery
  • CSS media queries

Server technologies

Data Persistence

​Hosting/SaaS

Development Environment


commonly's People

Contributors

lindafoodev avatar abrahamcuenca 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.