38 Commits

Author SHA1 Message Date
Alexis Bruneteau
b83c7a7d6d feat(migration): migrate from Angular 20 to Next.js 15
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 1m31s
Complete framework migration from Angular to Next.js with full feature parity.

## What Changed
- Migrated from Angular 20 to Next.js 15 with App Router
- Replaced Angular components with React functional components
- Implemented React Context API for state management (replacing RxJS)
- Integrated React Hook Form for form handling
- Added shadcn/ui component library
- Configured Tailwind CSS 4.1 with @tailwindcss/postcss
- Implemented JWT authentication with middleware protection

## Core Features Implemented
-  User registration and login with validation
-  JWT token authentication with localStorage
-  Protected dashboard route with middleware
-  Portfolio listing with status indicators
-  Create portfolio functionality
-  ZIP file upload with progress tracking
-  Portfolio deployment
-  Responsive design with Tailwind CSS

## Technical Stack
- Framework: Next.js 15 (App Router)
- Language: TypeScript 5.8
- Styling: Tailwind CSS 4.1
- UI Components: shadcn/ui + Lucide icons
- State: React Context API + hooks
- Forms: React Hook Form
- API Client: Native fetch with custom wrapper

## File Structure
- /app - Next.js pages (landing, login, register, dashboard)
- /components - React components (ui primitives, auth provider)
- /lib - API client, types, utilities
- /hooks - Custom hooks (useAuth, usePortfolios)
- /middleware.ts - Route protection
- /angular-backup - Preserved Angular source code

## API Compatibility
- All backend endpoints remain unchanged
- JWT Bearer token authentication preserved
- API response format maintained

## Build Output
- Production build: 7 routes compiled successfully
- Bundle size: ~102kB shared JS (optimized)
- First Load JS: 103-126kB per route

## Documentation
- Updated README.md with Next.js setup guide
- Created OpenSpec proposal in openspec/changes/migrate-to-nextjs-launchui/
- Added project context in openspec/project.md

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
PROD-v1.0.0 v1.0.0-nextjs
2025-10-17 00:34:43 +02:00
Alexis Bruneteau
609940cafe env
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 38s
PROD-v0.0.11
2025-06-05 03:30:17 +02:00
Alexis Bruneteau
49e1bcac81 working good
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 38s
PROD-v0.0.10
2025-06-04 21:52:54 +02:00
Alexis Bruneteau
1fdf7516a5 tag 2025-06-04 03:32:57 +02:00
Alexis Bruneteau
d5c4a99281 set production API
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 47s
PROD-v0.0.8
2025-06-02 14:32:07 +02:00
Alexis Bruneteau
e785ea0ea6 fixed ingress
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 38s
PROD-v0.0.6
2025-06-02 12:17:44 +02:00
Alexis Bruneteau
cd89d07f70 changed docker image tag
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 40s
PROD-v0.0.3
2025-06-02 10:13:46 +02:00
Alexis Bruneteau
3ade4d1bd1 changed icon
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 38s
PROD-v0.0.2
2025-06-02 10:04:42 +02:00
Alexis Bruneteau
120fc26d01 DNS
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 38s
PROD-v0.0.1
2025-06-01 15:34:02 +02:00
Alexis Bruneteau
a55a295164 pre-alpha test
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 39s
PRE_ALPHA-v0.0.6
2025-06-01 14:04:20 +02:00
Alexis Bruneteau
e616a400ed optimized Dockerfile
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 38s
PRE_ALPHA-v0.0.5
2025-06-01 03:14:46 +02:00
Alexis Bruneteau
8acf22a953 optimized Dockerfile
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 40s
PRE_ALPHA-v0.0.4
2025-06-01 03:07:08 +02:00
Alexis Bruneteau
295c15f03b landing
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 1m7s
PRE_ALPHA-v0.0.3
2025-06-01 03:03:04 +02:00
Alexis Bruneteau
ee5daffdba landing
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 36s
PRE_ALPHA-v0.0.2
2025-06-01 03:01:58 +02:00
Alexis Bruneteau
3849e2d0dc tag
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 1m10s
PRE_ALPHA-v0.0.1
2025-05-31 18:14:35 +02:00
Alexis Bruneteau
46e5797d85 tag
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 1m19s
PRE_ALPHA-v0
2025-05-31 18:13:16 +02:00
Alexis Bruneteau
43ddc32e17 tag
Some checks failed
Build and Deploy to k3s / build-and-deploy (push) Failing after 1m25s
PRE-ALPHA-v0
2025-05-31 18:12:23 +02:00
Alexis Bruneteau
40793eceab tag 2025-05-31 18:10:58 +02:00
Alexis Bruneteau
4d2b176816 tag 2025-05-31 18:00:35 +02:00
Alexis Bruneteau
85ab22d566 dingz 2025-05-31 17:58:30 +02:00
Alexis Bruneteau
97520d404a retesting 2025-05-31 17:47:59 +02:00
Alexis Bruneteau
225c0654cc retesting 2025-05-31 17:44:22 +02:00
Alexis Bruneteau
00f4158d57 retesting 2025-05-31 17:41:54 +02:00
Alexis Bruneteau
f2c2b55cb1 testing 2025-05-31 17:36:34 +02:00
Alexis Bruneteau
24c382d520 debugging 2025-05-31 17:23:30 +02:00
Alexis Bruneteau
128d87636a tag 2025-05-31 17:17:16 +02:00
Alexis Bruneteau
54083e4233 tag 2025-05-31 17:15:36 +02:00
Alexis Bruneteau
fe14d9f790 tag 2025-05-31 16:51:52 +02:00
Alexis Bruneteau
6f76ba2f6e tag 2025-05-31 16:09:37 +02:00
Alexis Bruneteau
0643d4fb08 tag 2025-05-31 16:08:09 +02:00
Alexis Bruneteau
7e0cd37851 tag 2025-05-31 15:54:58 +02:00
Alexis Bruneteau
e378e7fa11 tag 2025-05-31 15:33:13 +02:00
Alexis Bruneteau
1a862b1efc fix 2025-05-31 03:38:25 +02:00
Alexis Bruneteau
9d25fbc935 fix 2025-05-31 03:28:06 +02:00
Alexis Bruneteau
c03360713f fix 2025-05-31 03:11:55 +02:00
Alexis Bruneteau
ae2b3b106a waouh 2025-05-31 02:43:51 +02:00
Alexis Bruneteau
70f799ea73 first commit 2025-05-31 01:02:43 +02:00
Alexis Bruneteau
4762cc8a05 initial commit 2025-05-30 13:25:49 +02:00