# Check PowerShell version (should be 5.0+)
$PSVersionTable.PSVersion
# Check Node.js (should be 18+)
node --version
npm --version
# Check Java (optional - will be downloaded if missing)
java -versionSet-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser# Option A: Simple runner (recommended for demo)
.\run-simple.ps1
# Option B: Advanced runner with auto-download
.\run.ps1
# Option C: VS Code tasks
# Open in VS Code β Ctrl+Shift+P β "Tasks: Run Task" β "Run All"# Wait 60 seconds for both servers to start, then run:
.\verify.ps1Once running, these URLs should work:
Frontend (Main Demo):
- http://localhost:4200 - Angular app
- http://localhost:4200/cards - Cards showcase
Backend APIs:
- http://localhost:8080/api/departments - JSON data
- http://localhost:8080/api/employees - JSON data
- http://localhost:8080/api/reports/employees-by-department.pdf - PDF report
- http://localhost:8080/cards.html - Static cards page
- http://localhost:8080/h2-console - Database console
- Open http://localhost:4200
- Type "dept01" and click Search β Shows 4 employees
- Click "View" on John Doe β Shows employee details
- Click "Edit" β Modify salary to 98000, click Save
- Go back and search "dept01" again β Verify change
- Click "Delete" on an employee β Confirm deletion
- Click "Download PDF Report" in nav β PDF downloads
- Click "Cards Showcase" in nav β Shows product cards
- Visit http://localhost:8080/cards.html β Static version
The scripts will attempt to download Java automatically. If this fails:
- Download Java 17 from https://adoptium.net/temurin/releases/?version=17
- Install and restart PowerShell
- Run the script again
# Kill existing processes
Get-Process | Where-Object {$_.ProcessName -match "java|node"} | Stop-Process -Force
# Or find specific process
netstat -ano | findstr :8080
taskkill /PID <PID> /F# Set execution policy
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
# Run with explicit bypass
PowerShell -ExecutionPolicy Bypass -File run-simple.ps1You know it's working when:
- β Two PowerShell windows open (server and client)
- β Browser opens to http://localhost:4200 automatically
- β You can search for "dept01" and see 4 employees
- β PDF downloads when clicking the nav button
- β All URLs in the demo script respond correctly
The system is now ready for live demonstration. All features work:
- Complete CRUD operations
- PDF report generation
- Static content serving
- Responsive Angular UI
- H2 database with sample data
- Transaction management with rollback
- Error handling and validation