Skip to content

Commit 186d5df

Browse files
committed
feat:lots of Upgrade on the User Interace
1 parent b45e056 commit 186d5df

50 files changed

Lines changed: 5386 additions & 1521 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,5 @@ scripts/*.py
3232
*.py
3333
task.md
3434
issueTmeplate.md
35-
package-lock.json
36-
**/package-lock.json
3735
vercelerror.md
3836
betterui.md

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Stellar Payment API
1+
# PLUTO API
22

33
Accept Stellar payments (XLM or Stellar assets like USDC) using simple payment links and a developer-friendly API.
44

@@ -28,7 +28,7 @@ This project aims to feel like Stripe/PayPal, but built on Stellar. Merchants cr
2828
## Quick Start (Backend)
2929

3030
1. Install dependencies:
31-
```bash
31+
```bash
3232
cd backend
3333
npm install
3434
```

frontend/content/docs/api-guide.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ curl -X POST http://localhost:4000/api/register-merchant \
2727
-H "Content-Type: application/json" \
2828
-d '{
2929
"email": "merchant@example.com",
30-
"business_name": "Example Store",
30+
"business_name": "PLUTO Shop",
3131
"notification_email": "ops@example.com"
3232
}'
3333
```
@@ -70,7 +70,7 @@ curl -X POST http://localhost:4000/api/create-payment \
7070
"asset": "XLM",
7171
"recipient": "GAAZI4TCR3TY5OJHCTJC2A4QSY6CJWJH5IAJTGKIN2ER7LBNVKOCCWN",
7272
"description": "Order #2048",
73-
"webhook_url": "https://merchant.example/webhooks/stellar"
73+
"webhook_url": "https://merchant.example/webhooks/pluto"
7474
}'
7575
```
7676

@@ -82,9 +82,9 @@ curl -X POST http://localhost:4000/api/create-payment \
8282
"payment_link": "http://localhost:3000/pay/6aa64d44-faf1-41f0-a7e7-c8f9cce62f2f",
8383
"status": "pending",
8484
"branding_config": {
85-
"primary_color": "#5ef2c0",
86-
"secondary_color": "#b8ffe2",
87-
"background_color": "#050608"
85+
"primary_color": "#00F5D4",
86+
"secondary_color": "#6C5CE7",
87+
"background_color": "#0B0F1A"
8888
}
8989
}
9090
```
@@ -157,7 +157,7 @@ with:
157157

158158
```json
159159
{
160-
"webhook_url": "https://merchant.example/webhooks/stellar"
160+
"webhook_url": "https://merchant.example/webhooks/pluto"
161161
}
162162
```
163163

frontend/content/docs/api-guide.mdx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ curl -X POST http://localhost:4000/api/register-merchant \
2727
-H "Content-Type: application/json" \
2828
-d '{
2929
"email": "merchant@example.com",
30-
"business_name": "Example Store",
30+
"business_name": "PLUTO Shop",
3131
"notification_email": "ops@example.com"
3232
}'
3333
```
@@ -70,7 +70,7 @@ curl -X POST http://localhost:4000/api/create-payment \
7070
"asset": "XLM",
7171
"recipient": "GAAZI4TCR3TY5OJHCTJC2A4QSY6CJWJH5IAJTGKIN2ER7LBNVKOCCWN",
7272
"description": "Order #2048",
73-
"webhook_url": "https://merchant.example/webhooks/stellar"
73+
"webhook_url": "https://merchant.example/webhooks/pluto"
7474
}'
7575
```
7676

@@ -82,9 +82,9 @@ curl -X POST http://localhost:4000/api/create-payment \
8282
"payment_link": "http://localhost:3000/pay/6aa64d44-faf1-41f0-a7e7-c8f9cce62f2f",
8383
"status": "pending",
8484
"branding_config": {
85-
"primary_color": "#5ef2c0",
86-
"secondary_color": "#b8ffe2",
87-
"background_color": "#050608"
85+
"primary_color": "#00F5D4",
86+
"secondary_color": "#6C5CE7",
87+
"background_color": "#0B0F1A"
8888
}
8989
}
9090
```

frontend/content/docs/hmac-signatures.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ Webhook signing in this repository lives in `backend/src/lib/webhooks.js`.
77
When a webhook secret is available, the backend sends:
88

99
```text
10-
Stellar-Signature: sha256=<hex_digest>
10+
PLUTO-Signature: sha256=<hex_digest>
1111
```
1212

1313
The digest is generated from the exact JSON string body using HMAC-SHA256.
@@ -42,12 +42,12 @@ import express from "express";
4242
const app = express();
4343

4444
app.post(
45-
"/webhooks/stellar",
45+
"/webhooks/pluto",
4646
express.raw({type: "application/json"}),
4747
(req, res) => {
4848
const secret = process.env.STELLAR_WEBHOOK_SECRET;
4949
const rawBody = req.body.toString("utf8");
50-
const incoming = req.get("Stellar-Signature") || "";
50+
const incoming = req.get("PLUTO-Signature") || "";
5151

5252
const expected = `sha256=${crypto
5353
.createHmac("sha256", secret)
@@ -113,6 +113,6 @@ Your webhook handler should therefore be:
113113
- Save the `webhook_secret` returned during merchant registration.
114114
- Read the raw request body before JSON parsing changes it.
115115
- Compute `HMAC-SHA256` over that exact raw body.
116-
- Compare against the `Stellar-Signature` header.
116+
- Compare against the `PLUTO-Signature` header.
117117
- Reject invalid signatures with `401`.
118118
- Treat webhook events as retryable and idempotent.

frontend/content/docs/hmac-signatures.mdx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ Webhook signing in this repository lives in `backend/src/lib/webhooks.js`.
77
When a webhook secret is available, the backend sends:
88

99
```text
10-
Stellar-Signature: sha256=<hex_digest>
10+
PLUTO-Signature: sha256=<hex_digest>
1111
```
1212

1313
The digest is generated from the exact JSON string body using HMAC-SHA256.
@@ -42,12 +42,12 @@ import express from "express";
4242
const app = express();
4343

4444
app.post(
45-
"/webhooks/stellar",
45+
"/webhooks/pluto",
4646
express.raw({type: "application/json"}),
4747
(req, res) => {
4848
const secret = process.env.STELLAR_WEBHOOK_SECRET;
4949
const rawBody = req.body.toString("utf8");
50-
const incoming = req.get("Stellar-Signature") || "";
50+
const incoming = req.get("PLUTO-Signature") || "";
5151

5252
const expected = `sha256=${crypto
5353
.createHmac("sha256", secret)
@@ -113,6 +113,6 @@ Your webhook handler should therefore be:
113113
- Save the `webhook_secret` returned during merchant registration.
114114
- Read the raw request body before JSON parsing changes it.
115115
- Compute `HMAC-SHA256` over that exact raw body.
116-
- Compare against the `Stellar-Signature` header.
116+
- Compare against the `PLUTO-Signature` header.
117117
- Reject invalid signatures with `401`.
118118
- Treat webhook events as retryable and idempotent.

frontend/messages/en.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
},
4848
"dashboardPage": {
4949
"title": "Merchant Overview",
50-
"description": "Monitor your transaction volume, track payments in real-time, and manage your Stellar integration.",
50+
"description": "Monitor your transaction volume, track payments in real-time, and manage your PLUTO integration.",
5151
"paymentMetrics": "Payment Metrics",
5252
"recentActivity": "Recent Activity",
5353
"viewAllPayments": "View all payments",
@@ -61,7 +61,7 @@
6161
"createPaymentPage": {
6262
"eyebrow": "Dashboard",
6363
"title": "Create Payment Link",
64-
"description": "Set an amount, choose an asset, and enter a Stellar recipient address to generate a shareable payment link.",
64+
"description": "Set an amount, choose an asset, and enter a recipient address to generate a shareable PLUTO payment link.",
6565
"newHere": "New here?",
6666
"registerMerchant": "Register a merchant account"
6767
},
@@ -79,7 +79,7 @@
7979
"readyDescription": "Share this link with your customer to collect payment.",
8080
"shareLink": "Share Link",
8181
"shareTitle": "Payment link ready",
82-
"shareText": "Open this Stellar payment link.",
82+
"shareText": "Open this PLUTO payment link.",
8383
"shareFailed": "Native sharing is unavailable right now.",
8484
"paymentLink": "Payment Link",
8585
"paymentId": "Payment ID",
@@ -221,7 +221,7 @@
221221
"walletConnectWaiting": "Waiting for wallet...",
222222
"noProjectId": "(no project ID)",
223223
"notInstalled": "(not installed)",
224-
"scanTitle": "Scan with your Stellar wallet app",
224+
"scanTitle": "Scan with your compatible wallet app",
225225
"pairingFailed": "WalletConnect pairing failed"
226226
},
227227
"checkout": {
@@ -237,7 +237,7 @@
237237
"doNotClose": "Do not close this tab",
238238
"recipient": "Recipient",
239239
"scanToPay": "Scan to Pay",
240-
"scanDescription": "Scan with Freighter or any Stellar wallet",
240+
"scanDescription": "Scan with Freighter or any compatible wallet",
241241
"openQrModal": "Pay with QR code",
242242
"qrModalTitle": "Pay with QR code",
243243
"qrModalDescription": "Scan this code on another device or share it with your wallet app.",
@@ -277,7 +277,7 @@
277277
"cancel": "Cancel",
278278
"confirmPayment": "Confirm Payment",
279279
"receivedTitle": "This payment has been received.",
280-
"receivedDescription": "The transaction was confirmed on the Stellar network.",
280+
"receivedDescription": "The transaction was confirmed on-chain via PLUTO.",
281281
"downloadReceipt": "Download Receipt",
282282
"downloadReceiptLoading": "Preparing Receipt...",
283283
"receiptDownloaded": "Receipt download started.",

frontend/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"name": "stellar-payment-frontend",
2+
"name": "pluto-frontend",
33
"version": "0.1.0",
44
"private": true,
55
"scripts": {

frontend/public/manifest.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
{
2-
"name": "Stellar Payment API",
3-
"short_name": "StellarPay",
4-
"description": "Secure and fast Stellar payments",
2+
"name": "PLUTO",
3+
"short_name": "PLUTO",
4+
"description": "Secure and fast Web3 payments on Stellar",
55
"start_url": "/",
66
"display": "standalone",
7-
"background_color": "#050608",
8-
"theme_color": "#5ef2c0",
7+
"background_color": "#000000",
8+
"theme_color": "#00F5D4",
99
"icons": [
1010
{
1111
"src": "/icons/icon-192x192.png",

frontend/public/sw.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)