Code Monkey home page Code Monkey logo

flowworthapp's Introduction

Flow Worth App

Portfolio valuation and tracking tool for the Do-It-Yourself Investor

This application is part of the OpenAlloc family of open source Swift software tools.

It is formerly a proprietary application now entirely open-sourced in August 2022.

It has been written in Swift language and the SwiftUI framework using Xcode 13.4

The current target is macOS 12.0 (Monterey) and newer, for Intel and Apple Silicon. This requirement will move forward in the future.

There’s strong potential for supporting iPadOS/iOS, but would require further development and testing by interested developers.

See Also

This app is a member of the Open Portfolio Project.

License

Copyright 2021, 2022 OpenAlloc LLC

All application code is licensed under the Mozilla Public License 2, except where noted in individual modules.

Contributing

Contributions are welcome. You are encouraged to submit pull requests to fix bugs, improve documentation, or offer new features.

The pull request need not be a production-ready feature or fix. It can be a draft of proposed changes, or simply a test to show that expected behavior is buggy. Discussion on the pull request can proceed from there.

Contributions should ultimately have adequate test coverage. See tests for current entities to see what coverage is expected.

flowworthapp's People

Stargazers

 avatar  avatar  avatar

flowworthapp's Issues

Replace "Δ% (annualized)" with "Δ% (CAGR)"

Rather than a rough annualized percent (based on period), instead calculate a CAGR (compound annualized growth rate).

Applies to the delta views, including forecast.

Dietz-based performance not affected (at least yet).

Remove KeyWindow dependency

Evaluate recent updates to SwiftUI capabilities to determine whether or not the current KeyWindow dependency is still needed.

If not needed, remove the dependency and make appropriate code changes.

Support for iPadOS/iOS

Currently only macOS is supported for the apps, but there's strong potential for supporting iPadOS/iOS.

There is a relatively small amount of platform-specific code, such as for file selection and saving, that would need equivalent support on iPadOS/iOS.

Once supported, the builds can be made available to users in the iPadOS/iOS App Store, much as the macOS ones are now.

Support explicit currency setting per document (allocatz/worthz) file

At present, both FlowAllocator and FlowWorth assume all accounts are in a common currency, where the currency symbol (and formatting method) is chosen from the locale.

Provide a way for the user to select an alternative currency which will be stored in the DisplaySettings of the document (allocatz/worth) file.

Implementation detail: the unused CurrencyCodePicker in FlowAllocatorApp could be used. Relocate it to FlowUI.

Additional implementation detail: on file load, or when user changes the explicit currency, see if it's possible to make an app-wide change to the locale in the environment to reflect the user's preference. Ideally, the formatters should automatically pick this up.

Create Homebrew Casks for binaries

Needed:

  • for Homebrew-based installation of apps
  • for users who don't/can't use Mac App Store
  • where Mac App Store releases are delayed

Both FlowAllocator and FlowWorth should each have their own cask.

Also, update docs to reflect availability.

May be dependent on #3, a workflow to create binaries.

Create workflow to publish .dmg binaries for download

Needed where:

  • users who don't have Xcode installed, or are unfamiliar with its use
  • users who cannot/don't use Mac App Store
  • Mac App Store releases are delayed
  • Binaries needed for both FlowAllocator and FlowWorth

Also, update docs to reflect availability.

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.