GnuCashX is a Cross-Platform App for the GnuCash Accounting Software

Overview

GnuCashX

GitHub All Releases

Documentation | Installation | Development | Contributors | License

Table of Contents

Introduction

The purpose of GnuCashX is to be true to the exisiting GnuCash application currently in development and to have 1:1 feature parity with GnuCash. Though our app has no relationship to the GnuCash project and shares nothing more than the name, we intend to be 100% interoperable to the .gnucash format and support all export types as found in GnuCash

Installation

GitHub Releases

You can visit releases to download the latest built binaries.

Web App

Visit the stable version of the app built against the latest tagged release or the latest version of the app built against the master branch.

Android & iOS App Stores

In the works, not a priority until we have a decent app. Help us get there by contributing.

Contributing to GnuCashX!

Check out CONTRIBUTING.md to help this project

Development

Setup your environment

You may open this project on your favourite IDE that supports Flutter through a plugin extension.

If you are confused you can pick using VSCode with the flutter extension or use Android Studio with Flutter plugin installed. If you have the flutter-sdk and dart-sdk you can directly run the below commands to build this app.

Setup git hooks

# Setup git hooks
git config core.hooksPath hooks/

Prepare flutter

# Disable analytics
flutter config --no-analytics
# Download dependencies
flutter pub get

Generate freezed code

# Generate freezed code
flutter pub run build_runner build --delete-conflicting-outputs

Run all tests

flutter test

Developing with hot-reload

# Runs you're app on debug mode on a connected device
flutter run 

Debug with performance profiling

# Runs you're app in profile mode on a connected device
flutter run --profile

Build the application for different platforms

# Android APK
flutter build apk
# Build web distribution files
flutter build web
# Build for iOS target
flutter build ios --release --no-codesign

Build API documentation

# Allow dartdoc to be run globally 
flutter pub global activate dartdoc 
# Render docs to doc/api
flutter pub global run dartdoc .

Makefile & Helpers

A lot of the above steps have been implemented in this Makefile. You'll need to have make installed on your machine. To know more visit GNU Make

Contributors

License

GnuCashX is licensed under the GPLv2 License. See LICENSE for more information.

Comments
  • ci: add git hooks

    ci: add git hooks

    • feat: add commit-msg hook
      • ignore merge commits
      • validate semmantic versioning
      • add Signed-off-by:
      • remove duplicate Signed-off-by

    Closes #12

    Signed-off-by: Aakash Hemadri [email protected]

    feat ci 
    opened by aakashhemadri 4
  • Create CI Workflows

    Create CI Workflows

    • [x] ~Automation - greetings.yml~
      • [x] ~Issue Greeting~
      • [x] ~PR Greeting~
    • [x] Continuous Integration - ci.yml
      • [x] Testing
      • [x] Build - iOS
      • [x] Build - Android_Web
    • [x] Pull Request Workflow - pr.yml
      • [x] Semantic check
      • [x] Testing
      • [x] Build - iOS, Android_Web
    • [x] Linting (Super Lint) - linter.yml
    feat ci 
    opened by aakashhemadri 1
  • bug: can't create a bank, there is no way to create a source

    bug: can't create a bank, there is no way to create a source

    Describe the bug I can't use this as a normal GnuCash implement, can't add a withdrawment or payment inside it, Settings tell me to tap to create a book. More -> Settings -> Current GnuCash Book [No source available, tap to create.]

    To Reproduce Steps to reproduce the behavior:

    1. Go to https://gnucashx.aakashhemadri.com/app/stable/
    2. Click on 'More'
    3. Click on 'Settings'
    4. Click the Current GnuCash Book, no more activity show up.

    it happens at android version too.

    Expected behavior it should show a very activity up to help creating GnuCash Book.

    Screenshots If applicable, add screenshots to help explain your problem.

    GnuCashX (please complete the following information):

    • Version: Stable
    • Sample no

    Platform (please complete the following information):

    • Device: Laptop
    • OS: Guix OS
    • Browser Firefox
    • Version: i think it doesn't matter
    bug 
    opened by dG94Cg 1
  • Deployment Workflow

    Deployment Workflow

    • [x] #33
      • [x] {baseUrl}/app/latest <- master branch
      • [x] {baseUrl}/app/stable <- stable branch
      • [x] {baseUrl}/app/tag/v* <- pinned version (latest hotfix only)
      • [x] ~{baseUrl}/app/commit/{sha} <- PRs/Explicitly requested through GA~: Costly and unnecessary
    • [ ] Android - Play Store
    • [ ] #31
    • [ ] #32
      • [ ] {baseUrl}/api <- API
      • [ ] {baseUrl}/wiki/user <- Wiki
      • [ ] {baseUrl}/wiki/dev <- Wiki
      • [ ] {baseUrl}/release/ <- GitHub Release
    ci tracker 
    opened by aakashhemadri 0
  • v0.2.0 Tracker

    v0.2.0 Tracker

    Business Logic

    • [x] Utilities
      • [x] #40
      • [x] #30
    • [ ] #25
      • [x] Create Models
        • [x] #35
        • [x] #39
        • [x] #42
        • [x] #43
        • [x] #44
        • [x] #49
        • [x] #50
      • [x] Local Repositories
        • [x] #45
      • [ ] XML Repositories
      • [ ] SQL Repositories
      • [ ] Syncing Repositories

    User Interface

    • [ ] #34
      • [x] #52
    • [x] Themes
    research tracker 
    opened by aakashhemadri 1
Releases(v0.1.1)
  • v0.1.1(May 25, 2022)

    Overview

    • A basic MaterialApp with precursory views.
    • Settings persistence and support for Material and Dynamic Themes.
    • Groundwork for the models, repositories and providers

    What's Changed

    Models

    • feat: add Makefile by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/30
    • feat: add models & constants by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/35
    • feat: add sample sqlite database by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/39
    • feat: add decode_gzip action by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/40
    • feat: update hooks by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/41
    • feat: build runner to generate serializable json classes by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/42
    • feat: add build step to generate code by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/43
    • feat: update models by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/44
    • fix(41483ed): add missing pub get step by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/47
    • refactor: clean pubspec by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/48
    • feat: use freezed for data models by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/49
    • test: write tests for models by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/50

    Settings

    • feat: add settings repository by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/45
    • feat: add settings view by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/52

    Documentation

    • docs: update readme by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/4
    • docs: update README by @niteshkumar2000 in https://github.com/aakashhemadri/GnuCashX/pull/16
    • docs: update README by @jeivardan in https://github.com/aakashhemadri/GnuCashX/pull/19
    • feat: add sample account tree by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/28
    • chore: update flutter & resources by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/51
    • docs: update docs & web metadata by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/54

    CI/CD

    • ci: add git hooks by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/13
    • ci: add semantic commit ga workflow by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/20
    • ci: create clean-workflow.yml by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/17
    • ci: use self-hosted runners by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/23
    • fix: too much hassle by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/24
    • fix(6a47f029): use flutter format over dart format by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/29
    • ci: replace linter by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/38
    • ci: add code generation to test job by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/46
    • ci: add deployments and release links by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/53

    New Contributors

    • @niteshkumar2000 made their first contribution in https://github.com/aakashhemadri/GnuCashX/pull/16
    • @jeivardan made their first contribution in https://github.com/aakashhemadri/GnuCashX/pull/19

    Full Changelog: https://github.com/aakashhemadri/GnuCashX/compare/v0.1.0...v0.1.1


    Deployments

    | Variant | | ------- | | Web @ stable | | Web @ latest | | Web @ v0.1.1 |

    Downloads

    | Variant | SHA-256 | | ------- | ------- | | Android APK | bb90071499aa083964a8e41509caf4929fba096f8da7f2fef8d15dd44bf1b635 | | Android Bundle | 5d1693b3f88434cc8c41c1b8f1c67452c4a37224f63735baa19869c4da9f1cbe | | iOS | 4df779318669e86677fb697b012f7d16f26e430dd8fc110fda87aaa4c2c38b17 | | Web | cc6ee3c0bc32427e1c55b17fe4136b293cba1946b1ab6f9db8c4cfa78b50c53a |

    Source code(tar.gz)
    Source code(zip)
    gnucashx-ios-v0.1.1.tar(172.30 MB)
    gnucashx-v0.1.1.aab(17.41 MB)
    gnucashx-v0.1.1.apk(17.38 MB)
    gnucashx-web-v0.1.1.tar(19.99 MB)
  • v0.1.0(Apr 16, 2022)

    This is just an empty flutter project!


    What's Changed

    • feat: add ci, pr & linting workflows by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/2
    • fix: release errors in ci by @aakashhemadri in https://github.com/aakashhemadri/GnuCashX/pull/9

    New Contributors

    • @aakashhemadri made their first contribution in https://github.com/aakashhemadri/GnuCashX/pull/2

    Full Changelog: https://github.com/aakashhemadri/GnuCashX/commits/v0.1.0


    Checksums

    | Variant | SHA-256 | | ------- | ------- | | Android APK | d01ba39b77a16d542a507c07c52b394dde36ff5eb09cf6fb36624a714540bde1 | | Android Bundle | 9a51986393a66353fab046d3267f0ee19aba3086842ae0eea204d2a9b92906ff | | iOS | 41c1333e24805aa8c4c9d2956b82426a946142661ce42cb53861f04e0fa7946d | | Web | 9944aa187e73f487cd06b05f0b8952f4a85e364a0f0699ca1a631e8f6e8837f4 |

    Source code(tar.gz)
    Source code(zip)
    gnucashx-ios-v0.1.0.tar(169.04 MB)
    gnucashx-v0.1.0.aab(15.81 MB)
    gnucashx-v0.1.0.apk(15.78 MB)
    gnucashx-web-v0.1.0.tar(19.52 MB)
Owner
Aakash Hemadri
Linux | C | Bash | Rustling
Aakash Hemadri
Time-Tracker is a cross platform software integrated with Firebase and this is the mobile version created with Flutter.

Time Tracker | Flutter Time tracker is a cloud based task manager where you can manage your tasks in your mobile or web browser in a same time or in a

AmirHossein Mohammadi 10 Oct 25, 2022
NetcastsOSS - Podcasts (netcasts) consumer app powered by open source software, by Flutter

Netcasts OSS Simple podcasts (netcasts) management powered by open source software Homepage Drawer Explore Discover Podcast Episodes Player Settings W

Mihir Patel 56 Sep 16, 2022
A movies app made with Flutter focused on solid software structure patterns.

Flutter Movies App An application made with Flutter to practice the principles of Clean Architecture. Even being focused on architecture, the project

Márcio Valim 59 Dec 12, 2022
A Flutter Enterprise Software Development Architecture. Start to develop your bigger app easily.

A Flutter Enterprise Software Development Architecture. Start to develop your bigger app easily.

Shibaji Debnath 36 Jan 7, 2023
Intel Corporation 238 Dec 24, 2022
Backs up Android devices on Linux, macOS and Windows. Backup your device without vendor lock-ins, using insecure software or root.

Backs up Android devices on Linux, macOS and Windows. Backup your device without vendor lock-ins, using insecure software or root. Supports encryption and compression out of the box.

null 255 Dec 31, 2022
🟧 Lints for Dart and Flutter based on software industry standards and best practices.

Solid Lints Flutter/Dart lints configuration based on software engineering industry standards (ISO/IEC, NIST) and best practices. Usage Add dependency

Solid Software 17 Oct 12, 2022
Software Developer Portfolio Template built using Dart, Flutter web

Dev Portfolio Software Developer Portfolio Template that helps you showcase your work and skills as a software developer. A lightweight, customizable

Rezky Maulana 9 Dec 10, 2022
Flutter-for-Wordpress-App - Cross platform wordpress news app built with Flutter and WP REST API

Flutter for Wordpress A flutter app for a wordpress websites with clean and elegant design. This app is available in free and pro version. You can cho

Madhav Poudel 243 Dec 23, 2022
Flutter-Wordpress-App - Cross platform wordpress news app built with Flutter

Flutter for Wordpress A flutter app for a wordpress websites with clean and elegant design. This app is available in free and pro version. You can cho

Madhav Poudel 243 Dec 23, 2022
A cross-platform Flutter home workout app that respects your privacy. THIS IS A GITLAB MIRROR, file issues and contribute there.

Feeel Feeel is an open-source workout app for doing simple at-home exercises. This is a rewrite of the original app in Flutter, to make development ea

null 27 Dec 26, 2022
Cross Platform app in Flutter with Firebase Auth and Firestore. Available for Mobile,Web,Desktop

NavokiNotes Navoki Notes, a note app app, will sync data to cloud and on all devices. We have application for Android, iOS, Web App, PWA, Windows, mac

shivam srivastava 93 Dec 27, 2022
Aditya 93 Dec 25, 2022
A beautiful cross platform mobile web app use this and ENJOY (2 page) - Flutter UI from scratch

course_app A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if th

Mobin 2 Feb 9, 2022
Cross-platform mobile app for tracking GPS with IoT technologies.

IoT Tracking Cross-platform mobile app for tracking GPS with IoT technologies. Table of Contents Introduction Requirements Installation Build & Run Kn

0xShikYe 4 Oct 2, 2022
A cross platform-app made with flutter of latest updates of Covid-19

Covid Updates A Flutter project inspired by @tmrw. Download app Android IOS Download the zip from the latest master action Extract the ipa App will re

Ashish Khuraishy 98 Nov 23, 2022
A comprehensive guide on learning how to code cross platform mobile applications with the Flutter framework, from the ground up.

✳️ The Ultimate Guide to App Development with Flutter ✳️ A complete and comprehensive guide to learning Flutter with explanations, screenshots, tips,

Anthony 243 Jan 1, 2023
Cross Platform mobile application built using Flutter for a group project

splitz A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this i

Utkarsh Omer 0 Jul 30, 2022