Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update readme #100

Closed
wants to merge 3 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/nuxt.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ jobs:
- run: yarn
- run: yarn lint
- run: yarn test


deploy:
if: github.ref == 'refs/heads/master'
needs: test
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ jobs:
# debug: true
script: |
const releases = await github.repos.listReleases({
owner: 'baruchiro',
repo: 'israeli-bank-scrapers-desktop'
owner: 'brafdlog',
repo: 'budget-tracking'
})
// console.log(releases)
const published_release_tags = releases.data.filter(release => !release.draft).map(release => release.tag_name)
Expand Down
31 changes: 21 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# Automated budget tracking

![Build/Release](https://github.com/brafdlog/budget-tracking/workflows/Build/Release/badge.svg?branch=master&event=push)
[![Language grade: JavaScript](https://img.shields.io/lgtm/grade/javascript/g/brafdlog/budget-tracking.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/brafdlog/budget-tracking/context:javascript)

Many people track their expenses with spreadsheets or with budgeting apps (like [YNAB](https://ynab.com/referral/?ref=Z5wPbP0cYTWjdTQj&utm_source=customer_referral)).

The most annoying part of this process is transferring the data from the banks or credit cards to the budgeting tool you use. It usually requires you to go to the website of each one of your banks and credit cards, and manually copy the data to your budgeting tool.
Expand All @@ -12,9 +15,7 @@ Internally it uses the [Israeli bank scrapers](https://github.com/eshaham/israel


>
> We have decided to merge the [israeli-bank-scrapers-desktop](https://github.com/baruchiro/israeli-bank-scrapers-desktop) project into this repository, and work together on the same project.
>
> The merge is in progress in the `unifyRepos` branch in this [PR](https://github.com/brafdlog/budget-tracking/pull/50)
> We have decided to merge the [israeli-bank-scrapers-desktop](https://github.com/brafdlog/budget-tracking) project into this repository, and work together on the same project.
>

### What is currently supported:
Expand All @@ -23,20 +24,30 @@ Internally it uses the [Israeli bank scrapers](https://github.com/eshaham/israel
- A configuration for automatically classifying transactions to categories according to predefined patterns
- Creating transactions in YNAB automatically using YNAB's api
- Initial implementation of creating transactions in a google spreadsheet of your choice
- A very basic UI for configuration
- Most of the configuration is currently in an encrypted JSON file and options that are not available in the ui can be changed by updating the JSON manually.

## Initial setup
- A basic UI for configuration

### Running in a development environment
- Run `yarn` to install the dependencies
- Copy `categoryCalculationScript-example.js` to `categoryCalculationScript.js`
- This file contains the patterns for classifying transactions to categories automatically.
- Edit this file to add any mapping from function description to category that fits your needs.
- If using YNAB, the categories you return must match category names in YNAB
- Run `yarn start` to start the app
- Go to `הגדרות` and add the financial institutions you want and remove the default ones
- Run `yarn serve` to start the app
- Setup YNAB and/or Google spreadsheet integrations (see instructions below). Make sure to disable integration that you aren't using (set active field to false)
- Run by clicking on the `תראה לי ת׳כסף` button in the app
- Run by clicking on the `Run` button in the app

### Building for production
- Run `yarn build`

#### Linux

Currently, this project depends on `libsecret`, so you may need to install it before running `yarn`.

Depending on your distribution, you will need to run the following command:

* Debian/Ubuntu: `sudo apt-get install libsecret-1-dev`
* Red Hat-based: `sudo yum install libsecret-devel`
* Arch Linux: `sudo pacman -S libsecret`

## YNAB integration setup (optional)

Expand Down
2 changes: 1 addition & 1 deletion public/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title>israeli-bank-scrapers-desktop</title>
<title>Budget tracking</title>
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you want to think about less generic name?
The name from my repo was "Oshi"-"עו"שי".
Can't say I'm in love with this name, but I just think if we want another name, we need to decide now, before public release.

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css">
</head>
Expand Down
2 changes: 1 addition & 1 deletion src/components/App.vue
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
<v-btn
text
small
@click="() => openExternal('https://github.com/baruchiro/israeli-bank-scrapers-desktop')"
@click="() => openExternal('https://github.com/brafdlog/budget-tracking')"
>
<span class="mr-2">Open in Github</span>
<v-icon>mdi-open-in-new</v-icon>
Expand Down
2 changes: 1 addition & 1 deletion src/components/app/ReportProblemDialog.vue
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ ${detailes}` : '';
${log}
\`\`\`` : '';

return 'https://github.com/baruchiro/israeli-bank-scrapers-desktop/issues/new?'
return 'https://github.com/brafdlog/budget-tracking/issues/new?'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See #103

+ `title=${encodeURIComponent(title)}`
+ `&body=${encodeURIComponent(formattedDetailes)}${encodeURIComponent(formattedLog)}`;
};
Expand Down
2 changes: 1 addition & 1 deletion src/modules/encryption/keytar.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import keytar from 'keytar';

const serviceName = 'israeli-bank-scrapers-desktop';
const serviceName = 'budget-tracking';
const accountName = 'crypto';

export async function loadSALT() {
Expand Down
2 changes: 1 addition & 1 deletion src/modules/spreadsheet/googleOAuth2.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { saveIntoAccount, getFromAccount } from '@/modules/encryption/keytar';
import ElectronGoogleOAuth2 from '@getstation/electron-google-oauth2';

const keytarAccount = 'googleOauth2Token';
const successRedirectURL = 'https://github.com/baruchiro/israeli-bank-scrapers-desktop';
const successRedirectURL = 'https://github.com/brafdlog/budget-tracking';

// eslint-disable-next-line camelcase
async function saveToken({ refresh_token }) {
Expand Down
4 changes: 2 additions & 2 deletions vue.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ module.exports = {
'@brafdlog/israeli-bank-scrapers-core'
],
builderOptions: {
productName: 'israeli-bank-scrapers-desktop',
appId: 'com.electron.israeli-bank-scrapers-desktop',
productName: 'budget-tracking',
appId: 'com.electron.budget-tracking',
dmg: {
contents: [
{
Expand Down