/cass

A shiny digital wallet, which can track your expenses & earnings

Primary LanguageJavaScriptMIT LicenseMIT

Cass

Cass is a digital wallet, which can track your expenses & earnings. Very minimal backend, implemented with nodejs, MongoDB & GraphQL.

Installation

$ npm i

Change your MongoDB database URL at config.js

Start the server

$ node server.js

Generate dummy data

$ node seedDemoData.js

Queries & mutations

Let's play with the backend. Go to host URL, in my case; it is http://localhost:4000/

Query:

query getData {
  stats{
    inflow
    outflow
  }
  entries {
    id
    price
    note
    date
    type
    categoryId
  }
  categories {
    id
    name
    type
  }
}

You will get something like this. GraphQL query

Mutations:

mutation CreateCategory {
  addCategory(input: { name: "Bills & Utilities", type: "expense" }) {
    name
  }
}

mutation CreateEntry {
  addEntry(input: {
    categoryId: "5ba113b31654423835c78752",
    price: 200,
    note: "Sound box",
    date: "2018-09-18T15:18:50.158Z",
  }) {
    id
  }
}

mutation DeleteCategory {
  deleteCategory(id: "5ba11fc59aad9f3ac65e1c46") {
    name
  }
}

Author

Joynal Abedin - Joynal

License

This project is licensed under the MIT License - see the LICENSE.md file for details