fin_it 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -0
- data/CONTRIBUTING.md +8 -0
- data/QUICKSTART.md +3 -0
- data/README.md +61 -0
- data/assets/fin_it_logo.png +0 -0
- data/lib/fin_it/version.rb +1 -1
- data/lib/fin_it.rb +0 -1
- metadata +19 -34
- data/lib/fin_it/engine.rb +0 -15
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9c0b6a5df95bc7821279deb1aade2576c428c9ecebfb4c12fd218da56069da36
|
|
4
|
+
data.tar.gz: f8a9b2c5431fb88513e1484948116cebe743aa4de3d1208e2fa76de006b7b71c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0c4295fe20381ef80d1e61c46ea56d6806f80dfa40d2900f64989b955e7c0ea7285798d81e78e868482bef585f5ec483729f34c49ddabaf6f9436379262e1128
|
|
7
|
+
data.tar.gz: b3844b0545e4d2750ea4a9f29cd6b2c8848ae5938330054ab44b77908637e041f72dd8e2c98b11c5498930d5b5a40841d801b6385ec3d494e78c19bab5aea617
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.1.2] - 2026-03-07
|
|
4
|
+
|
|
5
|
+
- Automated patch release from PR #5: chore: retrigger publish after bundler fix (https://github.com/growth-constant/fin_it/pull/5)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## [0.1.1] - 2026-03-07
|
|
9
|
+
|
|
10
|
+
- Automated patch release from PR #3: docs: trigger publish workflow (https://github.com/growth-constant/fin_it/pull/3)
|
|
11
|
+
|
|
12
|
+
|
|
3
13
|
## [0.1.0] - 2026-03-07
|
|
4
14
|
|
|
5
15
|
- Public rebrand to `fin_it`.
|
|
@@ -7,3 +17,5 @@
|
|
|
7
17
|
- Private/sensitive scripts removed and replaced with fictional demos.
|
|
8
18
|
- Added GitHub Actions for PR validation and guarded publish-on-master.
|
|
9
19
|
- Added public-facing documentation set and project branding assets.
|
|
20
|
+
|
|
21
|
+
Release trigger note: patch release automation validation.
|
data/CONTRIBUTING.md
CHANGED
|
@@ -18,3 +18,11 @@ bundle exec rake test
|
|
|
18
18
|
- Add or update tests for behavior changes.
|
|
19
19
|
- Ensure CI is green.
|
|
20
20
|
- Avoid committing private or customer data.
|
|
21
|
+
- Set exactly one release label on the PR: `release:patch`, `release:minor`, or `release:major`.
|
|
22
|
+
|
|
23
|
+
## Release automation
|
|
24
|
+
|
|
25
|
+
- On merge to `main`, the release workflow reads the PR release label.
|
|
26
|
+
- It bumps `lib/fin_it/version.rb` automatically.
|
|
27
|
+
- It updates `CHANGELOG.md` automatically.
|
|
28
|
+
- It runs `bundle exec rake release` to tag, push, and publish to RubyGems.
|
data/QUICKSTART.md
CHANGED
data/README.md
CHANGED
|
@@ -57,6 +57,66 @@ report = FinIt::Reports::IncomeStatement.new(
|
|
|
57
57
|
report.output(FinIt::Outputs::ConsoleOutput)
|
|
58
58
|
```
|
|
59
59
|
|
|
60
|
+
## Generate Excel Reports
|
|
61
|
+
|
|
62
|
+
`fin_it` supports spreadsheet export through `FinIt::Outputs::ZaxcelOutput`.
|
|
63
|
+
|
|
64
|
+
### Single report to `.xlsx`
|
|
65
|
+
|
|
66
|
+
```ruby
|
|
67
|
+
income_statement = FinIt::Reports::IncomeStatement.new(
|
|
68
|
+
model,
|
|
69
|
+
start_date: Date.new(2026, 1, 1),
|
|
70
|
+
end_date: Date.new(2026, 12, 31),
|
|
71
|
+
output_currency: "USD"
|
|
72
|
+
)
|
|
73
|
+
|
|
74
|
+
income_statement.output(
|
|
75
|
+
FinIt::Outputs::ZaxcelOutput,
|
|
76
|
+
filename: "income_statement_2026.xlsx"
|
|
77
|
+
)
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Monthly comparison report in Excel
|
|
81
|
+
|
|
82
|
+
```ruby
|
|
83
|
+
monthly = income_statement.period_summary(period_type: :monthly)
|
|
84
|
+
|
|
85
|
+
income_statement.output(
|
|
86
|
+
FinIt::Outputs::ZaxcelOutput,
|
|
87
|
+
periods: monthly,
|
|
88
|
+
filename: "income_statement_monthly_2026.xlsx"
|
|
89
|
+
)
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Multi-sheet workbook (Income + Balance Sheet)
|
|
93
|
+
|
|
94
|
+
```ruby
|
|
95
|
+
model.generate_transactions(Date.new(2026, 12, 31))
|
|
96
|
+
|
|
97
|
+
balance_sheet = FinIt::Reports::BalanceSheet.new(
|
|
98
|
+
model,
|
|
99
|
+
start_date: Date.new(2026, 1, 1),
|
|
100
|
+
end_date: Date.new(2026, 12, 31),
|
|
101
|
+
output_currency: "USD"
|
|
102
|
+
)
|
|
103
|
+
|
|
104
|
+
FinIt::Outputs::ZaxcelOutput.new(income_statement, {
|
|
105
|
+
reports: [
|
|
106
|
+
{ report: income_statement, sheet_name: "Income 2026", periods: monthly },
|
|
107
|
+
{ report: balance_sheet, sheet_name: "Balance 2026" }
|
|
108
|
+
],
|
|
109
|
+
filename: "financial_package_2026.xlsx"
|
|
110
|
+
}).generate
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## Run Demo Examples
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
ruby test/scripts/generate_demo_reports.rb
|
|
117
|
+
ruby test/scripts/startup_saas_demo.rb
|
|
118
|
+
```
|
|
119
|
+
|
|
60
120
|
## Documentation
|
|
61
121
|
|
|
62
122
|
- [QUICKSTART.md](QUICKSTART.md)
|
|
@@ -72,3 +132,4 @@ This project was rebranded from the previous internal package naming. Public API
|
|
|
72
132
|
## License
|
|
73
133
|
|
|
74
134
|
MIT. See [LICENSE](LICENSE).
|
|
135
|
+
|
data/assets/fin_it_logo.png
CHANGED
|
Binary file
|
data/lib/fin_it/version.rb
CHANGED
data/lib/fin_it.rb
CHANGED
metadata
CHANGED
|
@@ -1,29 +1,15 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fin_it
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Buildit
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
11
|
date: 2026-03-07 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
|
-
- !ruby/object:Gem::Dependency
|
|
14
|
-
name: rails
|
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
|
16
|
-
requirements:
|
|
17
|
-
- - ">="
|
|
18
|
-
- !ruby/object:Gem::Version
|
|
19
|
-
version: '8.0'
|
|
20
|
-
type: :runtime
|
|
21
|
-
prerelease: false
|
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
-
requirements:
|
|
24
|
-
- - ">="
|
|
25
|
-
- !ruby/object:Gem::Version
|
|
26
|
-
version: '8.0'
|
|
27
13
|
- !ruby/object:Gem::Dependency
|
|
28
14
|
name: dentaku
|
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -52,20 +38,6 @@ dependencies:
|
|
|
52
38
|
- - "~>"
|
|
53
39
|
- !ruby/object:Gem::Version
|
|
54
40
|
version: '6.16'
|
|
55
|
-
- !ruby/object:Gem::Dependency
|
|
56
|
-
name: money-rails
|
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
|
58
|
-
requirements:
|
|
59
|
-
- - "~>"
|
|
60
|
-
- !ruby/object:Gem::Version
|
|
61
|
-
version: '1.15'
|
|
62
|
-
type: :runtime
|
|
63
|
-
prerelease: false
|
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
-
requirements:
|
|
66
|
-
- - "~>"
|
|
67
|
-
- !ruby/object:Gem::Version
|
|
68
|
-
version: '1.15'
|
|
69
41
|
- !ruby/object:Gem::Dependency
|
|
70
42
|
name: ancestry
|
|
71
43
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -136,6 +108,20 @@ dependencies:
|
|
|
136
108
|
- - "~>"
|
|
137
109
|
- !ruby/object:Gem::Version
|
|
138
110
|
version: '5.0'
|
|
111
|
+
- !ruby/object:Gem::Dependency
|
|
112
|
+
name: rake
|
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
|
114
|
+
requirements:
|
|
115
|
+
- - "~>"
|
|
116
|
+
- !ruby/object:Gem::Version
|
|
117
|
+
version: '13.0'
|
|
118
|
+
type: :development
|
|
119
|
+
prerelease: false
|
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
121
|
+
requirements:
|
|
122
|
+
- - "~>"
|
|
123
|
+
- !ruby/object:Gem::Version
|
|
124
|
+
version: '13.0'
|
|
139
125
|
- !ruby/object:Gem::Dependency
|
|
140
126
|
name: sqlite3
|
|
141
127
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -184,7 +170,6 @@ files:
|
|
|
184
170
|
- lib/fin_it/dsl/plan_builder.rb
|
|
185
171
|
- lib/fin_it/dsl/project_inheritance_resolver.rb
|
|
186
172
|
- lib/fin_it/dsl/variable_builder.rb
|
|
187
|
-
- lib/fin_it/engine.rb
|
|
188
173
|
- lib/fin_it/financial_model.rb
|
|
189
174
|
- lib/fin_it/financial_model/account_balances.rb
|
|
190
175
|
- lib/fin_it/financial_model/account_hierarchy.rb
|
|
@@ -242,7 +227,7 @@ licenses:
|
|
|
242
227
|
metadata:
|
|
243
228
|
homepage_uri: https://github.com/growth-constant/financials
|
|
244
229
|
source_code_uri: https://github.com/growth-constant/financials
|
|
245
|
-
post_install_message:
|
|
230
|
+
post_install_message:
|
|
246
231
|
rdoc_options: []
|
|
247
232
|
require_paths:
|
|
248
233
|
- lib
|
|
@@ -257,8 +242,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
257
242
|
- !ruby/object:Gem::Version
|
|
258
243
|
version: '0'
|
|
259
244
|
requirements: []
|
|
260
|
-
rubygems_version: 3.
|
|
261
|
-
signing_key:
|
|
245
|
+
rubygems_version: 3.4.19
|
|
246
|
+
signing_key:
|
|
262
247
|
specification_version: 4
|
|
263
248
|
summary: Financial modeling and reporting gem
|
|
264
249
|
test_files: []
|
data/lib/fin_it/engine.rb
DELETED