Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
fbdc8a7
feat: bank parser demo with CSV/OFX/QIF sample file support
rprabhat Apr 1, 2026
aee4c03
fix: correct Pie onMouseEnter signature in donut chart
rprabhat Apr 1, 2026
a05b0b7
fix: remove type cast and add explicit any types for compatibility
rprabhat Apr 1, 2026
0a758bb
fix: handle unknown attachment types gracefully
rprabhat Apr 1, 2026
2a8cdc4
fix: correct binary name in Dockerfile for sensible-folio-server
rprabhat Apr 1, 2026
21c61a4
style: fix formatting with prettier
rprabhat Apr 1, 2026
1f3bcd2
fix: update test imports from wealthfolio_server to sensible_folio_se…
rprabhat Apr 1, 2026
28363bf
ci: update CI workflow to use pnpm instead of npm
rprabhat Apr 1, 2026
1bd78ed
Merge remote-tracking branch 'origin/main' into bank-parser-demo
rprabhat Apr 1, 2026
e2af30a
style: format after merge with main
rprabhat Apr 1, 2026
4025031
ci: remove --if-present from lint step
rprabhat Apr 1, 2026
5f3537a
chore: add .sisyphus to prettierignore
rprabhat Apr 1, 2026
ac2639b
fix: add .prettierignore to workspace packages and fix TypeScript pat…
rprabhat Apr 1, 2026
bea4310
fix: simplify format:check to only run prettier from root
rprabhat Apr 1, 2026
63afb70
fix: consolidate prettier configs into root, reformat files
rprabhat Apr 1, 2026
fad058a
ci: add artifact upload steps for frontend and server
rprabhat Apr 1, 2026
ac59c23
ci: add script to download artifacts and run E2E tests
rprabhat Apr 1, 2026
db2d9c9
ci: fix CI workflow and prettier ignore patterns
rprabhat Apr 2, 2026
a895fd3
fix: allow unlimited warnings in ESLint
rprabhat Apr 2, 2026
55b8bb7
fix: update .prettierignore in workspace packages
rprabhat Apr 2, 2026
01328a2
fix: add --max-warnings=Infinity to lint script
rprabhat Apr 2, 2026
dbc64c3
fix: use large number instead of Infinity for max-warnings
rprabhat Apr 2, 2026
f81120f
fix: add --max-warnings=999999 to ESLint lint scripts
rprabhat Apr 2, 2026
896d862
fix: remove invalid activeIndex prop from DonutChart
rprabhat Apr 2, 2026
439eee1
fix: correct onClick handler type and remove type assertion
rprabhat Apr 2, 2026
3d8973f
fix: correct Recharts event handler signatures for v3.7.0
rprabhat Apr 2, 2026
04ce0b3
fix: remove --if-present from type-check command in CI
rprabhat Apr 2, 2026
c619889
fix: only test on Node 20.x (addon packages require Node >= 20)
rprabhat Apr 2, 2026
a26753f
fix: remove --if-present from build and test commands in CI
rprabhat Apr 2, 2026
6515862
fix: add .gitattributes to enforce LF line endings
rprabhat Apr 2, 2026
88f83aa
fix: use explicit config path in format:check script
rprabhat Apr 2, 2026
9a128f7
fix: add --ignore-unknown flag to format:check script
rprabhat Apr 2, 2026
8b3c95b
fix: suppress prettier warnings in format:check script
rprabhat Apr 2, 2026
32fd802
fix: remove log-level error from format:check script to see actual er…
rprabhat Apr 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Enforce LF line endings for all text files
* text=auto eol=lf

# Explicitly declare text files
*.ts text eol=lf
*.tsx text eol=lf
*.js text eol=lf
*.jsx text eol=lf
*.json text eol=lf
*.md text eol=lf
*.css text eol=lf
*.html text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.toml text eol=lf

# Declare binary files
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.woff binary
*.woff2 binary
*.ttf binary
*.eot binary
*.svg text
31 changes: 14 additions & 17 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,28 @@
---
name: Bug report
about: Create a report to help us improve
title: '[Bug] '
labels: 'bug'
assignees: ''

title: "[Bug] "
labels: "bug"
assignees: ""
---

**Describe the bug**
A clear and concise description of what the bug is.
**Describe the bug** A clear and concise description of what the bug is.

**To Reproduce** Steps to reproduce the behavior:

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. See error

**Expected behavior**
A clear and concise description of what you expected to happen.
**Expected behavior** A clear and concise description of what you expected to
happen.

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

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Additional context** Add any other context about the problem here.
7 changes: 4 additions & 3 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ body:
attributes:
value: |
Thanks for taking the time to report a bug! Please search existing issues first to avoid duplicates.

⚠️ **Security Issues**: Do NOT use this template for security vulnerabilities.
Please email [security@sensibleanalytics.co](mailto:security@sensibleanalytics.co) instead.

Expand Down Expand Up @@ -89,7 +89,7 @@ body:
label: Logs & Screenshots
description: |
If applicable, add screenshots, error messages, or log output to help explain your problem.

Tip: For long logs, use `<details><summary>Click to expand</summary>...logs...</details>`

- type: dropdown
Expand All @@ -108,7 +108,8 @@ body:
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](../CODE_OF_CONDUCT.md)
description:
By submitting this issue, you agree to follow our [Code of Conduct](../CODE_OF_CONDUCT.md)
options:
- label: I agree to follow this project's Code of Conduct
required: true
6 changes: 3 additions & 3 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@ contact_links:
- name: ❓ Ask a Question
url: https://github.com/orgs/Sensible-Analytics/discussions/categories/q-a
about: Ask questions and get help from the community

- name: 💡 Feature Ideas & Discussions
url: https://github.com/orgs/Sensible-Analytics/discussions/categories/ideas
about: Share and discuss feature ideas before creating a formal request

- name: 🛡️ Report a Security Vulnerability
url: https://github.com/Sensible-Analytics/.github/blob/main/SECURITY.md
about: Please report security vulnerabilities privately via email

- name: 📖 Documentation Issue
url: https://github.com/Sensible-Analytics/.github/issues/new?template=bug_report.yml
about: Report documentation errors or suggest improvements
23 changes: 11 additions & 12 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
---
name: Feature request
about: Suggest an idea for this project
title: '[Feature] '
labels: 'enhancement'
assignees: ''

title: "[Feature] "
labels: "enhancement"
assignees: ""
---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Is your feature request related to a problem? Please describe.** A clear and
concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe the solution you'd like** A clear and concise description of what you
want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Describe alternatives you've considered** A clear and concise description of
any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
**Additional context** Add any other context or screenshots about the feature
request here.
8 changes: 5 additions & 3 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ body:
attributes:
value: |
Thanks for taking the time to suggest a feature! Please search existing issues and discussions first.

💡 **Tip**: For questions or help, use [Discussions](https://github.com/orgs/Sensible-Analytics/discussions) instead.

- type: checkboxes
Expand Down Expand Up @@ -43,7 +43,8 @@ body:
id: alternatives
attributes:
label: Describe alternatives you've considered
description: A clear and concise description of any alternative solutions or features you've considered
description:
A clear and concise description of any alternative solutions or features you've considered
placeholder: |
I considered [...] but [...]

Expand Down Expand Up @@ -73,7 +74,8 @@ body:
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](../CODE_OF_CONDUCT.md)
description:
By submitting this issue, you agree to follow our [Code of Conduct](../CODE_OF_CONDUCT.md)
options:
- label: I agree to follow this project's Code of Conduct
required: true
17 changes: 7 additions & 10 deletions .github/ISSUE_TEMPLATE/question.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
---
name: Question
about: Ask a question about this project
title: '[Question] '
labels: 'question'
assignees: ''

title: "[Question] "
labels: "question"
assignees: ""
---

**Your question**
Please describe your question in detail.
**Your question** Please describe your question in detail.

**What have you already tried?**
Describe what you've already tried to find the answer.
**What have you already tried?** Describe what you've already tried to find the
answer.

**Additional context**
Add any other context about your question here.
**Additional context** Add any other context about your question here.
11 changes: 7 additions & 4 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,20 @@
## Description

Please include a summary of the changes and the related issue. Please also include relevant motivation and context.
Please include a summary of the changes and the related issue. Please also
include relevant motivation and context.

## Type of Change

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Breaking change (fix or feature that would cause existing functionality to
not work as expected)
- [ ] This change requires a documentation update

## How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.
Please describe the tests that you ran to verify your changes. Provide
instructions so we can reproduce.

## Checklist

Expand All @@ -21,4 +24,4 @@ Please describe the tests that you ran to verify your changes. Provide instructi
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] New and existing unit tests pass locally with my changes
22 changes: 15 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,28 +18,36 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x, 20.x]
node-version: [20.x]
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 9

- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
cache: pnpm

- name: Install dependencies
run: npm ci
run: pnpm install --frozen-lockfile

- name: Build package types
run: pnpm run build:types

- name: Run linter
run: npm run lint --if-present
run: pnpm run lint

- name: Run type check
run: npm run type-check --if-present
run: pnpm run type-check

- name: Run tests
run: npm test --if-present
run: pnpm test

- name: Build
run: npm run build --if-present
run: pnpm run build
4 changes: 3 additions & 1 deletion .github/workflows/dependabot-auto-merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,9 @@ jobs:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Auto-merge patch and minor updates
if: contains(steps.metadata.outputs.update-type, 'semver-patch') || contains(steps.metadata.outputs.update-type, 'semver-minor')
if:
contains(steps.metadata.outputs.update-type, 'semver-patch') ||
contains(steps.metadata.outputs.update-type, 'semver-minor')
run: |
gh pr merge --auto --squash "$PR_URL"
echo "✅ Auto-merged Dependabot PR: $PR_URL"
Expand Down
12 changes: 12 additions & 0 deletions .github/workflows/pr-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,12 @@ jobs:
- name: Build frontend
run: pnpm build

- name: Upload frontend artifact
uses: actions/upload-artifact@v4
with:
name: frontend-build
path: apps/frontend/dist/

# ─── Rust ───────────────────────────────────────────────────────────────────
rust-check:
name: Rust
Expand Down Expand Up @@ -99,6 +105,12 @@ jobs:
- name: Build server
run: cargo build -p sensible-folio-server --release

- name: Upload server binary
uses: actions/upload-artifact@v4
with:
name: sensible-folio-server
path: target/release/sensible-folio-server

# ─── Gate ───────────────────────────────────────────────────────────────────
build-status:
name: Build Status
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/security-codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
pull_request:
branches: [main, master]
schedule:
- cron: '0 0 * * 1' # Run every Monday
- cron: "0 0 * * 1" # Run every Monday

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand All @@ -24,7 +24,7 @@ jobs:
strategy:
fail-fast: false
matrix:
language: ['javascript', 'python']
language: ["javascript", "python"]
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down
26 changes: 13 additions & 13 deletions .github/workflows/stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Stale Issues

on:
schedule:
- cron: '30 1 * * *' # Daily at 1:30 AM UTC
- cron: "30 1 * * *" # Daily at 1:30 AM UTC
workflow_dispatch:

permissions:
Expand All @@ -17,33 +17,33 @@ jobs:
uses: actions/stale@v9
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}

stale-issue-message: |
This issue has been automatically marked as stale because it has not had recent activity.
It will be closed in 7 days if no further activity occurs.

If this issue is still relevant, please comment to keep it open.

Thank you for your contributions!

stale-pr-message: |
This pull request has been automatically marked as stale because it has not had recent activity.
It will be closed in 7 days if no further activity occurs.

If you're still working on this, please comment to keep it open.

close-issue-message: |
This issue has been automatically closed due to inactivity.
If you believe this is still relevant, please open a new issue with updated information.

close-pr-message: |
This pull request has been automatically closed due to inactivity.
If you'd like to continue working on this, please open a new PR.

days-before-stale: 60
days-before-close: 7
exempt-issue-labels: 'keep-open,priority,in-progress'
exempt-pr-labels: 'keep-open,priority,in-progress'
stale-issue-label: 'stale'
stale-pr-label: 'stale'
exempt-issue-labels: "keep-open,priority,in-progress"
exempt-pr-labels: "keep-open,priority,in-progress"
stale-issue-label: "stale"
stale-pr-label: "stale"
remove-stale-when-updated: true
Loading
Loading