Giter Site home page Giter Site logo

nickvisionmoney's Introduction

Money

A personal finance manager

Features

  • Manage multiple accounts at a time, with a familiar tab interface
  • Easily filter transactions by type, group, or date
  • Easily repeat transactions, such as bills that occur every month
  • Transfer money from one account to another
  • Export an account as a CSV file and import a CSV file to bulk add transactions to an account

Installation

Download on Flathub

Chat

Join our room

Screenshots

MainWindow OpenAccount DarkMode TransactionDialog

Translating

Everyone is welcome to translate this app into their native or known languages, so that the application is accessible to everyone.

To translate the app, fork the repository and clone it locally. Make sure that meson is installed. Run the commands in your shell while in the directory of repository:

meson build
cd build
meson compile org.nickvision.money-pot

Or, if you are using GNOME Builder, build the app and then run in the Builder's terminal:

flatpak run --command=sh org.gnome.Builder
cd _build
meson compile org.nickvision.money-pot

This would generate a NickvisionMoney/po/org.nickvision.money.pot file, now you can use this file to translate the strings into your target language. You may use Gtranslator or Poedit if you do not know how to translate manually in text itself. After translating (either through tools or directly in text editor), make sure to include the required metadata on the top of translation file (see existing files in NickvisionMoney/po/ directory.)

One particular thing you should keep in mind is that some strings in this project are bifurcated into multiple strings to cater to responsiveness of the application, like:

msgid ""
"If checked, the currency symbol will be displayed on the right of a monetary "
"value."

You should use the same format for translated strings as well. But, because all languages do not have the same sentence structure, you may not need to follow this word-by-word, rather you should bifurcate the string in about the same ratio. (For examples, look into translations of languages which do not have a English-like structure in NickvisionMoney/po/)

Put your translated file in NickvisionMoney/po directory in format <LANG>.po where <LANG> is the language code.

Put the language code of your language in NickvisionMoney/po/LINGUAS (this file, as a convention, should remain in alphabetical order.)

Add information in NickvisionMoney/po/CREDITS.json so your name will appear in the app's About dialog:

"Jango Fett": {
    "lang": "Mandalorian",
    "email": "[email protected]"
}

If you made multiple translations, use an array to list all languages:

"C-3PO": {
    "lang": ["Ewokese", "Wookieespeak", "Jawaese"],
    "url": "https://free.droids"
}

To test your translation in GNOME Builder, press Ctrl+Alt+T to open a terminal inside the app's environment and then run:

LC_ALL=<LOCALE> /app/bin/org.nickvision.money

where <LOCALE> is your locale (e.g. it_IT.UTF-8.)

Commit these changes, and then create a pull request to the project.

As more strings may be added in the application in future, the following command needs to be ran to update all the .po files, which would add new strings to be translated without altering the already translated strings. But, because running this command would do this for all the languages, generally a maintainer would do that.

meson compile org.nickvision.money-update-po

The upper command needs to be run in build directory generated by meson.

Dependencies

Special Thanks

nickvisionmoney's People

Contributors

nlogozzo avatar fsobolev avatar zothma avatar milotype avatar imhemish avatar bordam avatar vistaus avatar martin-desktops avatar vanillajonathan avatar dariasteam avatar rene-coty 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.