maybe-finance / maybe

The OS for your personal finances
https://maybe.co
GNU Affero General Public License v3.0
28.71k stars 2.19k forks source link

Account namespace updates: part 1 (accountable types) #893

Closed zachgoll closed 2 weeks ago

zachgoll commented 2 weeks ago

See #892 for a detailed proposal of these changes. I will be opening several PRs to achieve the final state so there is a semi-readable history of the changes.

Part 1 is intended to:

  1. Add system tests for creating various types of accounts
  2. Move accountable "subtypes" to the global namespace

Before this PR:

app/models
├── account
│   ├── balance
│   │   └── calculator.rb
│   ├── balance.rb
│   ├── credit.rb
│   ├── crypto.rb
│   ├── depository.rb
│   ├── investment.rb
│   ├── loan.rb
│   ├── other_asset.rb
│   ├── other_liability.rb
│   ├── property.rb
│   ├── syncable.rb
│   └── vehicle.rb
├── account.rb

After this PR:

app/models
├── account
│   ├── balance
│   │   └── calculator.rb
│   ├── balance.rb
│   └── syncable.rb
├── account.rb
├── credit_card.rb
├── crypto.rb
├── depository.rb
├── investment.rb
├── loan.rb
├── other_asset.rb
├── other_liability.rb
├── property.rb
└── vehicle.rb