Skip to content

Commit 2152707

Browse files
authored
UPDATE (MIGRATION) frontend to Next.js and update wallet integration (#18)
UPDATE (MIGRATION) frontend to Next.js and update wallet integration
2 parents 9114758 + 0de28c1 commit 2152707

119 files changed

Lines changed: 7885 additions & 5750 deletions

File tree

Some content is hidden

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

.dockerignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,12 @@
1010
**/.astro
1111

1212
# Build outputs
13+
**/.next
1314
**/dist
1415
**/build
16+
**/.next
17+
**/*.tsbuildinfo
18+
**/.dccache
1519
**/*.exe
1620
**/*.exe~
1721
**/*.dll

.github/workflows/ci-cd.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@ jobs:
3333
with:
3434
node-version: ${{ env.NODE_VERSION }}
3535
cache: 'npm'
36-
cache-dependency-path: frontend/package-lock.json
36+
cache-dependency-path: |
37+
frontend/package-lock.json
38+
wallet-ui/package-lock.json
3739
3840
- name: Install dependencies
3941
working-directory: frontend
@@ -355,8 +357,10 @@ jobs:
355357
CI: true
356358

357359
- name: Build wallet frontend bundle
358-
working-directory: frontend
359-
run: npm run build:wallet
360+
working-directory: wallet-ui
361+
run: |
362+
npm ci
363+
npm run build
360364
env:
361365
CI: true
362366

.github/workflows/ghcr-publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ jobs:
7979
dockerfile: docker/Dockerfile.frontend
8080
context: .
8181
build_args: ""
82-
description: React UI for ProtocolSoup
82+
description: Next.js App Router UI for ProtocolSoup
8383
- name: wallet
8484
image: protocolsoup-wallet
8585
dockerfile: docker/Dockerfile.wallet-harness

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ vendor/
66
dist/
77
build/
88
.astro/
9+
.next/
10+
**/.next/
11+
*.tsbuildinfo
12+
**/.dccache
913
*.exe
1014
*.exe~
1115
*.dll

README.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,7 @@ ProtocolSoup/
272272
|------------|---------|---------|
273273
| React | 18.3 | UI framework |
274274
| TypeScript | 5.6 | Type safety |
275-
| Vite | 7.3 | Build tool |
275+
| Next.js | 16.x | SSR/SSG app framework (App Router) |
276276
| Tailwind CSS | 3.4 | Styling |
277277
| Framer Motion | 11.5 | Animations |
278278
| Zustand | 4.5 | State management |
@@ -340,6 +340,7 @@ npm run dev
340340
|----------|---------|-------------|
341341
| `SHOWCASE_LISTEN_ADDR` | `:8080` | Server listen address |
342342
| `SHOWCASE_BASE_URL` | `http://localhost:8080` | Public base URL |
343+
| `SHOWCASE_FRONTEND_ORIGIN` | (empty) | Optional Next.js runtime origin for backend web-route proxying |
343344
| `SHOWCASE_CORS_ORIGINS` | `http://localhost:3000,http://localhost:5173` | Allowed CORS origins |
344345
| `SHOWCASE_SPIFFE_ENABLED` | `false` | Enable SPIFFE integration |
345346
| `SHOWCASE_SPIFFE_SOCKET_PATH` | `unix:///run/spire/sockets/agent.sock` | Workload API socket |
@@ -383,7 +384,7 @@ This starts:
383384
- **Federation** - OAuth 2.0, OIDC, SAML
384385
- **SCIM** - User and group provisioning
385386
- **SSF** - Shared Signals Framework
386-
- **Frontend** - React UI at `http://localhost:3000`
387+
- **Frontend** - Next.js App Router UI at `http://localhost:3000`
387388
- **Gateway API** - Available at `http://localhost:8080`
388389

389390
### SPIFFE/SPIRE Overlay
@@ -456,7 +457,7 @@ Pre-built container images are available from GitHub Container Registry. Use the
456457
| `ghcr.io/parlesec/protocolsoup-scim` | SCIM 2.0 provisioning | [scim.md](docs/packages/scim.md) |
457458
| `ghcr.io/parlesec/protocolsoup-ssf` | Shared Signals Framework | [ssf.md](docs/packages/ssf.md) |
458459
| `ghcr.io/parlesec/protocolsoup-spiffe` | SPIFFE workload identity | [spiffe.md](docs/packages/spiffe.md) |
459-
| `ghcr.io/parlesec/protocolsoup-frontend` | React frontend UI | [frontend.md](docs/packages/frontend.md) |
460+
| `ghcr.io/parlesec/protocolsoup-frontend` | Next.js App Router frontend UI | [frontend.md](docs/packages/frontend.md) |
460461
| `ghcr.io/parlesec/protocolsoup-vc` | OID4VCI + OID4VP verifiable credentials APIs | [vc.md](docs/packages/vc.md) |
461462
| `ghcr.io/parlesec/protocolsoup-wallet` | OID4VP wallet harness | [wallet.md](docs/packages/wallet.md) |
462463
| `ghcr.io/parlesec/protocolsoup-spire-server` | SPIRE Server (CA) | [spire-server.md](docs/packages/spire-server.md) |

backend/cmd/server/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ import (
1212
"github.com/ParleSec/ProtocolSoup/internal/core"
1313
"github.com/ParleSec/ProtocolSoup/internal/plugin"
1414
"github.com/ParleSec/ProtocolSoup/internal/protocols/oauth2"
15-
"github.com/ParleSec/ProtocolSoup/internal/protocols/oidc"
1615
"github.com/ParleSec/ProtocolSoup/internal/protocols/oid4vci"
1716
"github.com/ParleSec/ProtocolSoup/internal/protocols/oid4vp"
17+
"github.com/ParleSec/ProtocolSoup/internal/protocols/oidc"
1818
"github.com/ParleSec/ProtocolSoup/internal/protocols/saml"
1919
"github.com/ParleSec/ProtocolSoup/internal/protocols/scim"
2020
"github.com/ParleSec/ProtocolSoup/internal/protocols/spiffe"

0 commit comments

Comments
 (0)