Skip to content

feat: resolve issues #514, #517, #518, #519#2

Open
devJaja wants to merge 7 commits into
mainfrom
feat/issues-514-517-518-519
Open

feat: resolve issues #514, #517, #518, #519#2
devJaja wants to merge 7 commits into
mainfrom
feat/issues-514-517-518-519

Conversation

@devJaja
Copy link
Copy Markdown
Owner

@devJaja devJaja commented Jun 1, 2026

What does this PR do?

Implements four issues: adds GET /.well-known/stellar.toml for Stellar federation (OlaGreat#514), replaces hardcoded dashboard stat card trends with real period-over-period data (OlaGreat#517), adds a profile edit page at /profile/[username]/edit (OlaGreat#518), and adds an Edit Profile button visible only to the profile owner (OlaGreat#519). Also fixes a pre-existing build failure in support-panel.tsx.

Related issue

Closes OlaGreat#514
Closes OlaGreat#517
Closes OlaGreat#518
Closes OlaGreat#519

Type of change

  • Bug fix
  • New feature
  • Refactor
  • Docs / config only

How to test

  1. [Backend] Add GET /.well-known/stellar.toml for Stellar federation OlaGreat/NovaSupport#514curl -I http://localhost:4000/.well-known/stellar.tomlContent-Type: text/plain, Access-Control-Allow-Origin: *, Cache-Control: public, max-age=60; body contains NETWORK_PASSPHRASE, FEDERATION_SERVER, and [[ACCOUNTS]] entries for each profile wallet address.
  2. [Frontend] Replace hardcoded dashboard stat card trends with real period-over-period data OlaGreat/NovaSupport#517 — Open /dashboard/[username]; the Total Raised and Contributors stat cards show real +X.X% / -X.X% / No change trends instead of hardcoded values. No +12.5%, Stable, etc. remain.
  3. [Frontend] Add profile edit page at /profile/:username/edit OlaGreat/NovaSupport#518 — Connect Freighter as the profile owner, navigate to /profile/[username]/edit; all fields pre-filled, inline validation works, Save calls PATCH /profiles/:username + PATCH /profiles/:username/assets, success toast shown, redirects to profile. Non-owner is redirected away.
  4. [Frontend] Add Edit Profile button on public profile page for the owner OlaGreat/NovaSupport#519 — On /profile/[username], connect Freighter as the owner; "Edit profile" button appears next to QR/RSS/Share buttons and links to the edit page. Disconnect or use a different wallet — button is not visible.

Checklist

  • I have read the CONTRIBUTING guide
  • My branch is up to date with main
  • Linter passes (npm run lint)
  • Tests pass (npm test) if applicable
  • I have not committed .env files or secrets

ExcelDsigN-tech and others added 7 commits June 1, 2026 01:24
…rips

- Replace localStorage wallet check with live Freighter getAddress()
- Add stellarExpertUrl() helper and replace 8 hardcoded explorer URLs
- Add generateMetadata with OG/Twitter tags to supporters/[address]
- Add recurring drips management UI (owner view + supporter Pause/Cancel)
- Add ?profileId= support to backend GET /recurring-support
…at#519

OlaGreat#514 - Add GET /.well-known/stellar.toml route in backend/src/app.ts
  - Registered before other middleware
  - Queries all profile walletAddresses from DB
  - Returns valid TOML with NETWORK_PASSPHRASE, FEDERATION_SERVER, [[ACCOUNTS]]
  - Sets Content-Type: text/plain, Access-Control-Allow-Origin: *, Cache-Control: public, max-age=60
  - In-memory 60s cache to avoid repeated DB queries

OlaGreat#517 - Replace hardcoded dashboard stat card trends with real data
  - Fetches two consecutive 30-day periods via timeseries endpoint
  - Computes period-over-period % change for totalRaised and txCount
  - Formats as +X.X%, -X.X%, or No change
  - Passes correct positive prop to StatCard for colour
  - Removes all hardcoded +12.5%, +8, -2.4%, Stable values

OlaGreat#518 - Add profile edit page at /profile/[username]/edit
  - Client component with Freighter ownership check (no localStorage)
  - Pre-fills all fields from GET /profiles/:username
  - Inline field-level validation
  - Accepted assets add/remove UI
  - Saves via PATCH /profiles/:username and PATCH /profiles/:username/assets in parallel
  - Success toast + redirect; Cancel link returns to public profile

OlaGreat#519 - Add Edit Profile button on public profile page for owner
  - EditProfileButton client component uses getAddress() from Freighter
  - Renders only when connected wallet matches profile.walletAddress
  - No localStorage used

fix: resolve pre-existing build failure in support-panel.tsx
  - Add missing BASE_FEE, STELLAR_NETWORK imports
  - Add missing state declarations and handlers
…ontend-fixes

feat: wallet auth, network-aware explorer links, OG tags, recurring d…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants