GithubHelp home page GithubHelp logo

todo18 / finapp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ilkome/finapp

0.0 0.0 0.0 7.46 MB

Open source personal finance application

Home Page: https://finapp.ilko.me

License: MIT License

JavaScript 13.86% TypeScript 22.65% CSS 0.58% Vue 60.28% Stylus 2.21% Batchfile 0.41%

finapp's Introduction


Open source finance application

Finapp helps you to control personal finances easily and efficiently.

This is Finapp 3. For the 2.x see the 2 branch.

๐Ÿ•น Demo

finapp.ilko.me

๐Ÿž Screenshots

Finapp 2.0.0

๐Ÿš€ Features

  • Works offline on all devices (Service Worker): you can see all your data. Create, edit and delete transactions.
  • Instant synchronization between all device (Firebase).
  • Optimized for mobile and PC.
  • Themes: dark and white.
  • Support multiple currencies with auto conversion.

๐Ÿฆ„ Technologies

  • Vue
  • Nuxt
  • Stylus
  • Tailwind
  • Pug
  • Firebase

๐Ÿ“ฆ Setup

Project setup

# clone the repo
git clone https://github.com/ilkome/finapp.git finapp

# go into app's directory
cd finapp

# install dependencies
yarn

Firebase setup

  • Create a Firebase project in the Firebase console
  • Create Realtime Database
  • Open Realtime Database and go to Rules tab.
  • Change rules to:
{
  "rules": {
    "users": {
      "$uid": {
        ".read": "auth != null && auth.uid == $uid",
        ".write": "auth != null && auth.uid == $uid"
      }
    },
    "currencies": {
      ".read": "auth != null",
      ".write": "auth != null"
    },
    "ratesUsd": {
      ".read": "auth != null",
      ".write": "auth != null"
    }
  }
}
  • Go to the Project Overview and find Get started by adding Firebase to your app click to web.
  • Register an app and you will get your config.
  • You need to replace config in app's directory services/firebase/config.js with your config.
apiKey: 'YOUR_CONFIG',
authDomain: 'YOUR_CONFIG',
databaseURL: 'YOUR_CONFIG',
projectId: 'YOUR_CONFIG',
storageBucket: 'YOUR_CONFIG',
messagingSenderId: 'YOUR_CONFIG'

Enable Google Auth

  • Go to Authentication page
  • Click Sign-in method tab
  • Add Add new provider and select Google

Add your domain to Firebase Authorized domains

  • Go to Authentication page
  • Click Sign-in method tab
  • Scroll to Authorized domains and click Add domain
  • Add your domain name

Open exchange rates setup

OPEN_EXCHANGE_RATES=app_id

If you use netlify or similar services you need add OPEN_EXCHANGE_RATES to env variables.

Development

Compiles and hot-reloads

yarn dev

Production

Compiles and minifies for production

This will give you build folder. You can upload files from this folder to any shared hosting.

yarn build

Upload static files to server

You can add your FTP config in app's directory ftp.config.js

# upload all files from dist folder
yarn upload

# upload only css, js, html files from dist folder
yarn upload-min

๐Ÿคช Stay In Touch

I would like to speak with you about Finapp. I'm looking for awesome projects.

๐Ÿ“„ License

MIT License

finapp's People

Contributors

dependabot[bot] avatar ilkome 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.