Giter Club home page Giter Club logo

fire-bae-clone's Introduction

Personal Order (FireBae Clone)

A tool for keeping track of those nagging repetative purchases... with a little bit of machine learning for good measure.

Get online on the 15th of every month and see what you need to buy.

  • Postpone items (and the orderform will update purchasing frequency)

  • Set Due items (and the orderform will update purchasing frequency)

  • Bought something early and on sale? No worries, just mark it as purchased and the order for will start reminding you based on the date you purchased

No more using toilet paper to clean something up cause you forgot to buy a roll of papertowels.

Setup

To get started with a local copy of the project, fork the repo

  cp config/config.example.js config/config.js
  
  npm install

  npm start

and visit localhost:8080/public/

Tests

The project uses jest, mocha and enzyme for testing.

For more about Jest, visit jest w webpack

To run the tests, run npm test

Deploy

To deploy

  • Make sure you have the firebase-tools installed globally
npm install -g firebase-tools
  • cd into your project directory

  • run npm run build

  • firebase login

  • firebase deploy

(you may need to use firebase use --add if you cannot access the app)

fire-bae-clone's People

Contributors

rrgayhart avatar

Watchers

James Cloos avatar

Forkers

dylanavery720

fire-bae-clone's Issues

Populate for new user

When a new user signs up - they should have a walkthrough of common items and frequencies that they can add to their lists

Obv more detail needed here:

Requirement:

'Shows me a preview of the most frequently used list items, which I can quickly add to my list with one click'

Index: Search

More details needed here

Perhaps below the fold if I click 'All'?

Add New: I Buy This At

As a user adding a new item
I should see a form field for 'I Buy This At'
Where I can type in where I buy things
NOTE: Implementation of this feature needs more detail

Add New: Date of Last Purchase

As a user adding a new item
I will see a field Date of Last Purchase
and I will be able to select a date from a calendar

Index: Due/Upcoming/Remaining/All

Any item that is 'due soon' should be shown in this section

Any past due item should show in red

NOTE: more detail needed on this

Any item that is 'due soonish' should show up in Upcoming

All items that don't count for any of those categories should show up in Remaining - they should not be immediately visable and remaining must be clicked

All items should show in All - same behavior as remaining

Base Index

As a user on my home page, I should see three categories
Due
Coming Soon
Future
All

Add New: Frequency

As a user adding a new item
I should see a question in the form asking
I should buy this every 1 month(s)
Where the '1' is a number field defaulting to 1
And the 'month' is a drop down, defaulting to month and containing the options 'month(s)', 'day(s)', 'year(s)'

Set up PR template

What does it do?

What issue does it connect to?

Does this PR maintain design style - provide screenshots if applicable

What test coverage has been added?

Has it been tested on mobile?

Has Axe been run and ability to tab index been tested?

Has documentation been updated

Combine with QL PR template

Write up instructions for students

Index: Item Card

As a user observing items on my index
On each index item, I should see:
Item Name
a button to mark item 'purchased'
a button to mark item 'postpone'
a button to edit
a button to 'delete'

Last purchased: and how long ago
Frequency of purchase: 'Every 10 month(s)' or however long the frequency is set

Add New

As a user on my index page
I will see a button to add new items
and when I click that button
I will see a form to create a new item
where I will be able to add an item with a name
and when I click the Create Item
then I will see my item in my list of items to order

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.