Commit Graph

1496 Commits

Author SHA1 Message Date
Juan José Mata
53adc4f2e8 Expose AI_DEBUG_MODE in .env.local.example
Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
2025-09-29 16:13:47 +02:00
Juan José Mata
617876f140 Add dummy PLAID_CLIENT_ID and PLAID_SECRET to env (#165)
Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
2025-09-25 15:05:53 +02:00
Juan José Mata
dfd467ccb5 Add "Reset account" followed by sample data preload (#163)
* Add reset with sample data option on profile settings

* No need for "member" user in preload

* Cleanup/shorten copy
2025-09-25 11:43:23 +02:00
Juan José Mata
3264a96249 Getting ready for v0.6.4
Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
2025-09-25 11:31:06 +02:00
Juan José Mata
5706280dd7 More rebranding changes (#159)
* Replace Maybe for Sure in select code areas

* Make sure passwords are consistent

* Remove (admin|member) from demo data first name

* Database and schema names finally to `sure`

* Fix broken test

* Another (benchmarking) database name to `sure_*`

* More rebranding to Sure

* Missed this Maybe mention in the same page

* Random nitpicks and more Maybes

* Demo data accounts and more Maybes

* Test data account updates

* Impersonation test accounts

* Consistency with `compose.example.yml`
2025-09-24 00:19:51 +02:00
Juan José Mata
7245dd79a2 LLM context files cleanup 2025-09-24 00:19:09 +02:00
Alessio Cappa
2716fad72c fix: Check user's theme preference during page load (#156) 2025-09-23 15:43:36 +02:00
Juan José Mata
d2f631ec5c Still in use 2025-09-22 19:26:38 +02:00
Juan José Mata
c1480f800a Removing orphaned assets (#155) 2025-09-22 11:32:22 +02:00
dependabot[bot]
24cf830c34 Bump rexml from 3.4.1 to 3.4.2 (#148)
Bumps [rexml](https://github.com/ruby/rexml) from 3.4.1 to 3.4.2.
- [Release notes](https://github.com/ruby/rexml/releases)
- [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/rexml/compare/v3.4.1...v3.4.2)

---
updated-dependencies:
- dependency-name: rexml
  dependency-version: 3.4.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-22 09:29:52 +02:00
Mark Hendriksen
f3fecc40ba Add ability to delete invite codes (#153)
* Add ability to delete invite codes

Implemented destroy action in InviteCodesController and updated routes to support invite code deletion. Updated invite code partial to include a delete button and improved styling. Also refactored the generate tokens button in invite code settings to use DS::Button.

* Show advanced settings only to admin users

Updated the settings navigation to display the advanced section only for admin users. Also improved handling of hidden elements in the invite code CSS.
2025-09-22 09:29:23 +02:00
Mark Hendriksen
b4aa5194e8 Adjust color styles for checkboxes and text utilities (#152)
* Adjust color styles for checkboxes and text utilities

Updated checkbox hover and checked states for light and dark themes, including background and SVG fill colors. Modified text and foreground utility classes to use different gray shades in dark mode for improved contrast and consistency.

* Update selection bar and checkbox styles

Refines the selection bar appearance by updating its background, border, and text color classes. Adjusts the checkbox to use the light variant and improves disabled and checked state styles in the design system CSS, including correcting SVG fill colors for checkboxes.
2025-09-22 09:26:06 +02:00
Mark Hendriksen
5f97f2fc4d Add new date format and 10-year period option (#154)
Added 'YYYYMMDD' to supported date formats in Family model.
Introduced a 'last_10_years' period option in Period model with appropriate labels and date range.
2025-09-22 09:21:06 +02:00
Juan José Mata
2892ebb2fe Codex environment script 2025-09-21 19:17:21 +02:00
Matthieu Ev
60f54f9bae doc: added copilot instructions (#130)
* doc: added copilot instructions

* fix: rename file and fix border

* fix: Update outdated job class references

* fix: change copilot instruction location

* small nitpick fixes

* rename file

* hotfix design-system
2025-09-20 10:34:55 +02:00
Phillip Boushy
f8e420c5d1 Move plaid PR mention to note (#144)
* maybe#2419 was recreated as sure#1 but message wasn't removed.
 * Information in maybe#2419 gives more details that are helpful for
   users wanting to setup Plaid
2025-09-18 11:47:22 +02:00
Juan José Mata
e005995163 Updating LLM context files (#147)
Text/`.mdc` changes only.
2025-09-16 15:12:19 +02:00
Juan José Mata
67fe147ed4 Rename package from 'maybe' to 'sure'
Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
2025-09-16 13:54:33 +02:00
Juan José Mata
c993351474 Add OpenAI Codex instructions via AGENTS.md
Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
2025-08-27 08:07:10 +02:00
Juan José Mata
5d6915a994 Add OpenAI token configuration to self-hosting settings (#122)
* feat: add OpenAI settings partial
2025-08-23 08:04:59 +02:00
Juan José Mata
d054cd0bb2 Reorganize Settings sections + add LLM model/prompt configs (#116)
* Reshuffle/organize settings UI
* Settings: AI prompt display/minor touch-ups
* API key settings tests
* Moved import/export together
* Collapsible LLM prompt DIVs
* Add export tests
2025-08-22 20:43:24 +02:00
Juan José Mata
fb6e094f78 Disable Gemini Code Assist for now (#115) 2025-08-15 06:38:35 +02:00
Himank Dave
d162c58732 build(docker): ensure build-stage packages installed with fresh apt metadata (#114)
* quick fix for failing image build

* build: optimize Dockerfile for smaller image and perms

- combine apt-get update and cleanup into single layer
- combine bundle install and bootsnap into one RUN
- copy build artifacts with --chown to set ownership
- create non-root rails user before copying files
2025-08-15 06:16:06 +02:00
Amr Awad
26c18427c7 Add a 'Bank Sync' page in Settings (#111)
* add initial pages for Bank Sync and Lunch Flow

* update breadcrumbs on Lunch Flow page

* update content for Lunch Flow page

* add norefeerrer to Github link

* update lunch flow url

* nest lunch_flow resource under bank_sync

* add a provider link partial

* remove trailing whitespaces

* update providers style to match merchants page

* remove separate lunch flow page

* fix hover on dark mode

* point lunch flow to custom sure landing page

* [i18n] Bank Sync label

* [i18n] API Keys

* [i18n] Self-Hosting consistency

* Security breadcrum, not "securities" default

---------

Co-authored-by: Juan José Mata <juanjo.mata@gmail.com>
2025-08-15 03:07:15 +02:00
dependabot[bot]
a9caab2166 Bump activerecord from 7.2.2.1 to 7.2.2.2 (#106)
Bumps [activerecord](https://github.com/rails/rails) from 7.2.2.1 to 7.2.2.2.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.0.2.1/activerecord/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.2.2.1...v7.2.2.2)

---
updated-dependencies:
- dependency-name: activerecord
  dependency-version: 7.2.2.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-14 03:08:30 +02:00
Juan José Mata
16a1569eab Bump version
Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
v0.6.3
2025-08-12 03:42:32 +02:00
Himmelschmidt
7e36b1c7c5 Feature/simplefin integration (#94)
* Add HTTParty gem for SimpleFin API integration

- Add HTTParty gem for making HTTP requests to SimpleFin API
- Required for SimpleFin protocol implementation

* Add SimpleFin database schema

- Create simplefin_items table for SimpleFin connections
- Create simplefin_accounts table for account metadata
- Add simplefin_account_id to accounts table for linking
- Add external_id to transactions for deduplication
- Enable encrypted storage of SimpleFin access URLs

* Implement SimpleFin API client and data models

- Add SimplefinItem model with sync capabilities and encryption
- Add SimplefinAccount model for account data mapping
- Implement Provider::Simplefin API client with token exchange
- Add SimpleFin protocol support with proper error handling
- Include sync jobs, importers, and processors for data flow
- Add family SimpleFin connectivity mixin

* Update core models for SimpleFin integration

- Add SimpleFin account creation methods to Account model
- Implement intelligent account type mapping from names
- Add SimpleFin linkable functionality to Account
- Include SimpleFin items in Family model associations
- Support account creation with user-selected types

* Add SimpleFin controllers and routing

- Create SimplefinItemsController with CRUD operations
- Add account setup flow with user type selection
- Include sync management and error handling
- Update AccountsController to display SimpleFin items
- Add routes for SimpleFin item management and setup

* Add SimpleFin user interface components

- Create SimpleFin connection management views
- Add account setup modal with type selection
- Include connection form with token input and instructions
- Update accounts index to display SimpleFin items
- Add SimpleFin option to account method selector
- Include SimpleFin in settings navigation

* Add user account type selection workflow

- Add pending_account_setup field to SimpleFin items
- Enable pausing sync for user account type selection
- Allow users to choose account types during import
- Prevent automatic account creation until user confirms

* Add tests for SimpleFin integration

- Add SimplefinItem model tests with fixtures
- Add SimplefinAccount model tests
- Add SimplefinItemsController tests
- Include test coverage for sync and account creation

* Fix account show page for SimpleFin accounts

- Update sync button routing to handle SimpleFin accounts
- Add SimpleFin item sync path alongside existing Plaid support
- Prevent NoMethodError when viewing SimpleFin-linked accounts
- Support proper sync routing for Plaid, SimpleFin, and manual accounts

* Complete subtype selection for SimpleFin accounts

- Add subtype database columns to all accountable models
- Create Stimulus controller for dynamic subtype dropdown interaction
- Add delegation from Account to accountable subtype for clean API access
- Update SimpleFin account setup form with working subtype selection
- Fix account display to show proper subtype labels instead of generic "Cash"

Users can now select both account type and subtype during SimpleFin import,
and the selected subtypes are properly saved and displayed in the UI.

* Fix dark mode compatibility for SimpleFin UI components

- Replace hardcoded colors with design system tokens throughout SimpleFin views
- Fix method selector hover states to use bg-surface instead of bg-gray-50
- Update SimpleFin form to use styled_form_with and standard form patterns
- Replace custom button styling with design system button components
- Fix info boxes and containers to use bg-surface and border-primary
- Replace hardcoded green/blue colors with text-primary, text-secondary, text-link
- Remove custom text area styling to allow form builder defaults (dark mode support)

All SimpleFin components now properly adapt to both light and dark themes
with correct contrast and visibility.

* Fix SimpleFin integration bugs and improve code quality

- Fix upsert method to handle string/symbol keys with indifferent access
- Add missing show route and view for SimpleFin items
- Fix test fixtures to use correct user references
- Update test data to match real-world JSON format (string keys, BigDecimal)
- Apply code formatting and linting fixes (rubocop, erb_lint)
- Ensure all SimpleFin tests pass (16/16 passing)

* Remove SimpleFin demo file with outdated setup token

* Update SimpleFin User-Agent to use Sure Finance branding

* Remove unused SimpleFin account type mapping logic

- Remove map_simplefin_type_to_accountable_type method (no longer needed)
- Remove create_from_simplefin_account method (manual setup only)
- Simplify account type selection UI to not pre-select defaults
- Update processor to log error if account missing (safety check)
- All account creation now goes through manual user selection flow

* Gate SimpleFin option behind US region check

SimpleFin is primarily for North American financial institutions,
so only show the option when US banking connections are available.

* Refactor SimpleFin controller to use model method

- Move SimpleFin item creation logic from controller to Family#create_simplefin_item!
- Remove duplication between controller and model
- Simplify controller to focus on web request/response handling
- Remove unused simplefin_provider method
- Follow Rails best practices for fat models, skinny controllers

* Fix critical data integrity issue in SimpleFin date parsing

- Remove fallback to Date.current when transaction dates fail to parse
- Raise ArgumentError instead to ensure data integrity
- Log detailed error messages for debugging
- Skip transactions with invalid dates rather than using incorrect dates
- Prevents hard-to-debug issues with balances and financial reports

* Address all Gemini code review feedback for SimpleFin integration

- Remove debug console.log statements from JavaScript controller
- Consolidate duplicate SimpleFin account creation methods into single method
- Refactor SimplefinItemsController to reduce complexity with helper methods
- Fix HTTParty thread-safety by moving SSL options to class level
- Remove redundant HTTParty options from individual requests
- Add proper error logging for invalid currency URIs
- Extract sync button path logic to AccountsHelper#sync_path_for method
- DRY up repeated subtype dropdown code with reusable partial and data structure

All SimpleFin tests passing (16/16). Code quality improvements maintain
backward compatibility while following Rails best practices.

* Fix tests for subtype delegation to accountable models

The subtype attribute was moved from Account to individual accountable models
to enable users to select specific subtypes during SimpleFin account import.
This change allows for better account categorization and more precise display
of account types (e.g., "HSA" instead of generic "Cash").

However, tests and the PlaidAccount processor weren't updated to work with
the new delegation pattern. This commit fixes:

- PlaidAccount::Processor now sets subtype on accountable and uses enrichable
  pattern to respect user locks
- PropertiesController updated to handle subtype via accountable_attributes
- Test fixtures corrected to set subtype on accountable models not Account
- Tests updated to work with the delegated subtype pattern

All originally failing tests now pass:
- PropertiesControllerTest#test_updates_property_overview
- PlaidAccount::ProcessorTest (2 failing tests)
- AccountTest#test_gets_short/long_subtype_label

* Fix trailing whitespace (rubocop auto-fix)

* Add option to "skip" adding an account

* Revert "Gate SimpleFin option behind US region check"

This reverts commit 43b339940b.

* Fix SimpleFin transaction syncing and clean up debug logging

- Fix transaction creation to use Entry/entryable pattern instead of creating Transaction directly
- Handle both string and symbol keys in transaction data using with_indifferent_access
- Fix amount parsing to use BigDecimal instead of converting to cents
- Use plaid_id field for external ID storage to prevent duplicates
- Remove excessive debug logging while keeping essential error logging

SimpleFin transaction sync now works correctly, creating proper Entry records
with accurate dollar amounts and preventing duplicate transactions.

* Not sure how skipping worked for me the first time

* Fix SimpleFin new account setup flow and UI dark mode issues

- Fix accounts showing as 'unknown' by displaying proper account type from Account model
- Fix new accounts in existing connections not triggering setup flow with correct query
- Fix dark mode colors throughout SimpleFin views using design system tokens
- Improve UI logic to show existing accounts alongside new account setup prompt
- Remove balance attribute error when creating CreditCard accounts
- Simplify CreditCard subtype selection (auto-default to credit_card)

* Fix linter issues (trailing whitespace and ERB formatting)

* Remove SimpleFin button from create accounts view

SimpleFin doesn't work like Plaid - no need for separate connection creation for new accounts, just refresh existing connection.

* Add missing SimpleFin attributes and fix balance attribute error

- Add balance_date field to SimpleFin accounts to capture balance timestamp from protocol
- Enhanced build_simplefin_accountable_attributes to set available_credit for CreditCard accounts
- Fixed model mismatch where balance was being set on accountable models instead of Account model
- Updated tests to verify balance_date parsing functionality

This addresses the balance attribute error from commit 6681537b and ensures we're capturing
all available SimpleFin protocol data properly.

* Store all SimpleFin protocol fields in JSONB following existing patterns

* Fix SimpleFin API date parameter format and improve error handling

- Change date parameters from string format to Unix timestamps as required by SimpleFin API
- Add better error handling for 400 Bad Request responses
- Add more detailed error logging for debugging failed API calls

This fixes the issue where SimpleFin was only returning recent transactions
instead of historical data when start_date was provided.

* Implement comprehensive historical transaction sync for SimpleFin

- Add start_date parameter to SimpleFin API calls for historical data
- Use 100-year lookback for first sync to capture all available history
- Use 7-day buffer for incremental syncs to catch late-posting transactions
- Fix transaction storage to prevent data loss during account updates
- Remove verbose logging for cleaner output

This ensures users get all their historical transactions on first sync,
not just recent ones.

* Fix SimpleFin transaction sign convention to match Maybe's format

- Negate SimpleFin amounts to convert from banking convention to Maybe's format
- SimpleFin: expenses negative, income positive (banking convention)
- Maybe: expenses positive, income negative (internal convention)
- Improve date parsing to handle multiple date formats (Unix timestamps, strings, Date objects)

This fixes the issue where expenses showed as negative in the UI instead of positive.

* Add SimpleFin account association and fix balance handling for liabilities

- Add belongs_to :simplefin_account association to Account model
- Fix balance handling for credit cards and loans (use absolute value)
- SimpleFin returns negative balances for liabilities, but Maybe expects positive

This enables displaying organization names and ensures correct balance display.

* Display organization names throughout SimpleFin interface

- Show institution names under SimpleFin connection titles
- Display organization names next to account names (e.g., "360 Checking • Capital One")
- Add organization info to all SimpleFin account displays:
  - Account setup page
  - SimpleFin item details page
  - Regular account lists for SimpleFin accounts
- Use org_data from SimpleFin accounts with fallback to institution_name

This improves account identification by showing which financial institution
each account belongs to throughout the SimpleFin workflow.

* Fix SimpleFin UI styling to match design system

- Replace custom styles with DS components (DS::FilledIcon, DS::Link, DS::Button)
- Use proper design system tokens instead of hardcoded colors
- Fix form select styling to match design system patterns
- Update empty states to use consistent styling
- Ensure all SimpleFin views follow the app's design system

This makes the SimpleFin interface consistent with the rest of the app.

---------

Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
Co-authored-by: Juan José Mata <juanjo.mata@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-08-12 02:59:16 +02:00
Aluisio Pereira
6d4a5dd743 Add customizable menu order for user accounts (#44)
* Add customizable menu order for user accounts

Introduces a MenuOrder model and concern to allow users to select their preferred account ordering (by name or balance, ascending or descending). Adds a default_order field to users, updates user preferences UI, and applies the selected order to balance sheet account listings.

* Rename MenuOrder to AccountOrder and update user order field

Refactors the MenuOrder model to AccountOrder and updates all references accordingly. Replaces the user's default_order field with default_account_order, including migration changes, validations, and form fields. Updates localization and schema to reflect the new naming.

* Update balance_sheet.rb

* Fix for nil Current.user when rake runs in balance_sheet model

---------

Signed-off-by: Aluisio Pereira <oaluiser@gmail.com>
Co-authored-by: Juan José Mata <juanjo.mata@gmail.com>
2025-08-11 22:58:44 +02:00
Juan José Mata
dd0cb60b56 feat: Add Brand Fetch logo link for logos (see #43) (#99)
* feat: Add Brand Fetch logo link for logos

* docs: brand fetch integration docs

* Document CLIENT_ID location?

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Juan José Mata <jjmata@jjmata.com>

---------

Signed-off-by: Juan José Mata <jjmata@jjmata.com>
Co-authored-by: Vincent Teo <vinteo@gmail.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-08-11 22:34:54 +02:00
Himank Dave
1ae9e3e8fb feat(devcontainer): upgrade dev environment with better prompts, extensions, and configs (#95)
* chore(devcontainer): optimize Dockerfile for Ruby dev environment

* chore(devcontainer): update container name and improve VSCode settings

- Rename devcontainer from 'Maybe' to 'Sure'
- Add GIT_EDITOR env var for VSCode integration
- Add Shopify Ruby extensions pack

* feat(devcontainer): add custom Bash prompt with Git info

- Implement Git branch, status markers in prompt
- Show username, current dir, and Git info with colors
- Mount custom .bashrc into container for prompt enhancements

* fix(devcontainer): improve branch detection & status markers in prompt

- Support detached HEAD by showing short SHA
- Show detailed git states: rebase, merge, bisect, am
- Fix prompt formatting and trailing colors

* Better solution to GitHub Codespaces CSRF issue

* feat(devcontainer): add Git autocompletion support in bashrc

* refactor(devcontainer): reorder volumes and service settings

- Added volume mounts for workspace & bundle cache to worker service.

---------

Co-authored-by: Juan José Mata <juanjo.mata@gmail.com>
2025-08-10 07:53:46 +02:00
ByteBard
b7d9c89471 Correct Dialog Close Button (#85)
* correct dialog#close -> DS--dialog#close

* additional ds-- add

* stop reload on close

* Added option for reload_on_close var

* Fix test to allow query param in redirect URL
2025-08-08 02:05:03 +03:00
Juan José Mata
f6dde1a098 Add Langfuse-based LLM observability (#86)
* Add Langfuse-based LLM observability

* Document Langfuse configuration

* Don't hardcode model in use
2025-08-06 23:23:07 +02:00
Juan José Mata
099425d240 First quick Sure rebrand (#74)
* First cut of smallest rebrand, pending icons

* Leave SQL schema tokens/user names the same for now

* First batch of logos

* Release notes/what's new

* /releases missing

* redirect_uri for sureapp://

* Padded logo

* Test the correct /releases URL

* Missed a few mobile URIs

* Some icons/asssets from /website/ repo

* Seed/sample data user @sure.local now

* New screenshot

* Want to keep their legal "boilerplate" from the upstream repo
v0.6.2
2025-08-05 23:35:01 +02:00
Musab Ustun
64c62bffbc chore: Add Complete Turkish Localization and Improvements Based on Code Review (#31)
* Turkish language files added

* Apply suggestions from code review

Expensive to use LLMs as linters, but hey!

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Juan José Mata <jjmata@jjmata.com>

* Negative language files have been added for Turkish.

* Sure naming

Co-authored-by: Michaël De Boey <info@michaeldeboey.be>
Signed-off-by: Juan José Mata <jjmata@jjmata.com>

* Sure naming

Co-authored-by: Michaël De Boey <info@michaeldeboey.be>
Signed-off-by: Juan José Mata <jjmata@jjmata.com>

* Sure naming

Co-authored-by: Michaël De Boey <info@michaeldeboey.be>
Signed-off-by: Juan José Mata <jjmata@jjmata.com>

* Sure naming

Co-authored-by: Michaël De Boey <info@michaeldeboey.be>
Signed-off-by: Juan José Mata <jjmata@jjmata.com>

* Sure naming

Co-authored-by: Michaël De Boey <info@michaeldeboey.be>
Signed-off-by: Juan José Mata <jjmata@jjmata.com>

* Sure naming

Co-authored-by: Michaël De Boey <info@michaeldeboey.be>
Signed-off-by: Juan José Mata <jjmata@jjmata.com>

* Sure naming

Co-authored-by: Michaël De Boey <info@michaeldeboey.be>
Signed-off-by: Juan José Mata <jjmata@jjmata.com>

---------

Signed-off-by: Juan José Mata <jjmata@jjmata.com>
Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
Co-authored-by: Juan José Mata <jjmata@jjmata.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Michaël De Boey <info@michaeldeboey.be>
Co-authored-by: Juan José Mata <juanjo.mata@gmail.com>
2025-08-05 22:50:58 +02:00
Matthieu Ev
dcd0fdce8f Better Sankey chart (#67)
* feat: added hover effect on the sankey chart

* small tweek for the opacity

* Update app/javascript/controllers/sankey_chart_controller.js

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Matthieu Ev <95125079+matthieuEv@users.noreply.github.com>

* Update app/javascript/controllers/sankey_chart_controller.js

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Matthieu Ev <95125079+matthieuEv@users.noreply.github.com>

* feat: add tooltip to sankey chart

* feat: switch sankey-graph and net-worth-graph

---------

Signed-off-by: Matthieu Ev <95125079+matthieuEv@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-08-05 22:25:55 +02:00
Rupert28
47da993a16 README Cleanup: Fix typos, grammar, and clarity (#79)
* Fix typos, grammar, and clarity in README

* rm whitespace; Update README.md

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Rupert28 <104603523+Rupert28@users.noreply.github.com>

* rm duplicate line; Update README.md

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Rupert28 <104603523+Rupert28@users.noreply.github.com>

* Added trailing whitespace

---------

Signed-off-by: Rupert28 <104603523+Rupert28@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-08-05 20:46:54 +02:00
Matthieu Ev
ef7d736409 fix: update account sidebar tab (#81) 2025-08-05 20:09:57 +02:00
Himank Dave
eba42e2f71 build: allow main branch publishing and add comprehensive OCI metadata for multi-arch images (#65)
* feat(ci): add OCI annotations and metadata to multi-arch images

- Include created, source, revision, ref-name, vendor & license
- Add title and description for Sure Rails app multi-arch image
- Dynamically annotate version when tag builds are triggered

* chore(ci): add nightly tag with weekday pattern to tag config

* fix(ci): allow publish workflow to push images from main branch

- Update conditional checks to include refs/heads/main
- Reflect new condition in workflow comments for clarity

* fix(ci): set image version label only for tag builds in metadata

* fix(ci): avoid quotations being passed as CLI argument

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Himank Dave <93311724+steadyfall@users.noreply.github.com>

* refactor(ci): remove deprecated `::set-output` command

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Himank Dave <93311724+steadyfall@users.noreply.github.com>

---------

Signed-off-by: Himank Dave <93311724+steadyfall@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-08-05 00:41:05 +02:00
Matthieu Ev
b3af64dce1 fix: show user small picture and fallback when loading (#63)
* fix: show user small picture and fallback when loading

* fix: add alt to avatar

* fix: fixed version
2025-08-03 08:57:00 +02:00
Himank Dave
a14b0535ec feat: introduce multi-arch build matrix and OCI-compliant multi-arch images (#46)
* chore: update Docker image description to 'Sure'

* chore: adjust Docker metadata tags in publish workflow

- Disable automatic 'latest' tag generation
- Add 'nightly' tag for scheduled builds

* feat: add optional 'push' input to control image publishing

- Allow toggling push behavior via workflow input
- Allow push to 'ghcr.io' on tags, scheduled events, or when
	input is true

* chore: switch Docker cache to use registry-based build cache

* feat(ci): add multi-arch matrix image build & manifest merge

- Build and push images for amd64 and arm64 with platform-specific cache
- Export and upload image digests for each platform
- Merge digests into multi-arch manifest with retry logic
- Remove QEMU setup, use platform-specific runners
- Dynamic tag configuration for nightly, stable, and SHA tags

* chore(deps): pin external actions to specific minor versions

* Bump actions/checkout to v4.2.0
* Bump docker/setup-buildx-action to v3.10.0
* Bump docker/login-action to v3.3.0
* Bump docker/metadata-action to v5.6.0
* Bump docker/build-push-action to v6.16.0

* chore(ci): improve publish workflow robustness

- Set artifact upload to error if no files found & limit retention to 1 day

* chore(ci): enable OCI media types in Docker build outputs

* feat(ci): add scheduled nightly publish at 01:30 UTC

* chore(ci): refine image publish workflow and clarify multi-arch steps

- Add reference and conditions for push in workflow comments
- Rename build step for clarity on published platform target
- Ensure oci-mediatypes is preserved for annotations to show
- Rename merge job to indicate pushing multi-arch manifest tag
2025-08-03 08:23:49 +02:00
balvalat
25ccb8471c Fix data exporting (#61)
* give the worker process access to rails storage

* add db dependence on worker on our compose example file
2025-08-03 07:45:46 +02:00
Bishal Shrestha
efd96f606c added multi_select_controller and added multi-select support for tags without Ctrl/Shift in transaction forms (#55)
* added multi_select_controller and added multi-select support for tags without Ctrl/Shift in transaction forms

* fix: prevent memory leak by properly cleaning up event listener in multi-select controller

* chore: updated indentation
2025-08-03 07:35:34 +02:00
Vincent Teo
46c31e1937 fix: dark mode ui issue for transaction header (#64) 2025-08-03 07:27:42 +02:00
Juan José Mata
a6d830c263 *cowboy* Remove hosted version notice
Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
2025-08-02 04:20:22 +02:00
Juan José Mata
54bc37a651 Remove Synth Finance references (#47)
* Remove Synth Finance integration

* Linter noise

* Fix failing (old) test, use it for Twelve Data

---------

Signed-off-by: Juan José Mata <juanjo.mata@gmail.com>
2025-08-02 00:28:55 +02:00
Juan José Mata
656f7e9495 Remove Intercom integration (#51)
* Remove Intercom integration

* New Sure name

* More documentation/Discord link updates

* Bump to 0.6.1

* More copy fixes/Sure branding

* Make LLMs happy
v0.6.1
2025-08-01 19:47:48 +02:00
Vincent Teo
d04c87449d feat: split provider check and remove hardcoded synth check (#45) 2025-08-01 08:07:34 +02:00
Vincent Teo
66a87c852c fix: correct some dark mode ui issues (#52) 2025-08-01 07:49:08 +02:00
Steven A.J.
efcd356abf Merge pull request #42 from we-promise/jjmata/update-readme
More readme updates
2025-07-31 21:10:12 -05:00
Vincent Teo
5bdefe6e63 feat: Add Twelve Data provider for exchange rates and securities (#2)
* feat: Add Twelve Data provider for exchange rates and securities

* test: fix hosting controller test, linting

* fix: add countries gem to handle country codes in Twelve Data provider

* fix: allow security search combobox to have no logo

* refactor: update Twelve Data provider use time series endpoint

* fix: set twelve data as default provider
2025-07-31 23:31:37 +02:00