Skip to content

LaWallet V2 (Oficial) - BIG UPDATE - #6

Merged
Fierillo merged 148 commits into
mainfrom
lawalletOficial
Feb 15, 2026
Merged

LaWallet V2 (Oficial) - BIG UPDATE#6
Fierillo merged 148 commits into
mainfrom
lawalletOficial

Conversation

@Fierillo

Copy link
Copy Markdown
Owner
  • New landing
  • More structure
  • Better documentation

agustinkassis and others added 30 commits January 8, 2026 17:08
Add centralized env config with envsafe
…rastructure

feat: add API response types and error handling utilities
…o-use-standardized-error-handling

Refactor all api routes to use standardized error handling
Setup Pino logger with structured logging
Replace all console.log/error calls with Pino structured logging
Upgrade from Next.js 15.5.9 to 16.1.6 with full migration of breaking changes:
- Migrate all 14 API routes with dynamic params to async pattern (params: Promise<T>)
- Replace .eslintrc.json with ESLint 9 flat config (eslint.config.mjs)
- Remove TypeScript error suppression (ignoreBuildErrors)
- Fix TypeScript errors in admin-auth and shadcn/ui components
- Update ESLint and TypeScript dependencies for compatibility

All builds and type checks pass successfully.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
agustinkassis and others added 28 commits February 6, 2026 23:09
Added pointer-events: none to .glow-card::before so the decorative
border gradient no longer intercepts click events on interactive
elements inside glow cards.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Split the monolithic app/page.tsx (~1360 lines) into individual
component files under components/landing/ for better maintainability.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Disable the button and show a spinner animation while the waitlist
subscription request is in flight.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace two-letter abbreviations with actual SVG logos for TypeScript,
Next.js, React, Tailwind CSS, Prisma, and PostgreSQL in the Tech Stack
tab.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace the terminal command on the Vercel card with a prominent
deploy button that links to the Vercel one-click clone URL.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add gold "Get Early Access" button that opens the demo modal
- Add pulsing pre-alpha badge next to the logo
- Make logo click scroll smoothly to top of page

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Move the @ from the hero section into the fixed background layer with
a much larger size, gradient fill (gold → teal → purple at low
opacity), subtle blur, and scroll-driven parallax movement.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Raise coverage thresholds to 60/75/70/60 (statements/branches/functions/lines),
exclude test files from coverage metrics, and add CI badge to README.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add build verification job (runs after lint/typecheck/test pass), concurrency
control for stale PR runs, and a new security workflow for weekly dependency
auditing via pnpm audit.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…121)

Add Next.js framework detection, git deployment config for main branch,
and security headers (X-Content-Type-Options, X-Frame-Options, Referrer-Policy)
on all API routes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add cardListQuerySchema, payActionQuerySchema to central schemas.
Migrate card scan, card list GET, and pay action to use Zod validation.

Closes #113

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add TooManyRequestsError with retryAfter support
- Create lib/middleware/rate-limit.ts with in-memory sliding window store
- Add rate limit presets (public, auth, sensitive, cardScan, lud16)
- Add env vars: RATE_LIMIT_ENABLED, RATE_LIMIT_WINDOW_MS, RATE_LIMIT_MAX_REQUESTS, etc.
- Add rateLimit config section with Upstash Redis support (optional)
- Update error handler with Retry-After header for 429 responses
- Apply rate limiting to card scan, OTC, activate, and JWT endpoints
- Add comprehensive tests for middleware

Closes #114
Secure the JWT endpoint with NIP-98 authentication and create a unified
auth middleware that accepts both Nostr and Bearer tokens. This replaces
the insecure JWT endpoint that accepted arbitrary userId without
authentication, and enables routes to accept either auth method.

- Rewrite POST /api/jwt to require NIP-98 and embed pubkey/role/permissions in JWT
- Create lib/auth/unified-auth.ts with authenticate(), authenticateWithRole(), withAuth()
- Extract shared resolveRole() to lib/auth/resolve-role.ts
- Rewrite lib/jwt-client.ts with setSigner() + login() NIP-98 flow
- Update 7 routes to use unified auth (users/me, cards, nwc, lightning-address, otc/activate)
- Simplify jwtRequestSchema to only accept expiresIn (remove userId, additionalClaims)
- Update all integration tests to mock unified auth layer

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Comprehensively rewrite JWT_USAGE.md to document the new authentication
architecture: NIP-98 login, unified auth middleware, RBAC claims in JWT,
client-side login flow, route auth matrix, and migration guide.

Update references across roadmap and service docs to reflect the
implemented NIP-98 login -> JWT session approach.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add cardListQuerySchema, payActionQuerySchema to central schemas.
Migrate card scan, card list GET, and pay action to use Zod validation.

Closes #113

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add TooManyRequestsError with retryAfter support
- Create lib/middleware/rate-limit.ts with in-memory sliding window store
- Add rate limit presets (public, auth, sensitive, cardScan, lud16)
- Add env vars: RATE_LIMIT_ENABLED, RATE_LIMIT_WINDOW_MS, RATE_LIMIT_MAX_REQUESTS, etc.
- Add rateLimit config section with Upstash Redis support (optional)
- Update error handler with Retry-After header for 429 responses
- Apply rate limiting to card scan, OTC, activate, and JWT endpoints
- Add comprehensive tests for middleware

Closes #114
@vercel

vercel Bot commented Feb 15, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
lawalletv2 Ready Ready Preview, Comment Feb 15, 2026 9:32pm

@Fierillo
Fierillo merged commit 7662f57 into main Feb 15, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants