First Success Validation ✅
This comprehensive validation guide ensures your Ring Platform installation is working correctly. Follow each step systematically to verify all core features before proceeding with customization or deployment.
10-15 minutes to complete all validation steps.
🎯 Pre-Validation Setup
Before starting validation, ensure:
- Ring Platform is running:
npm run devshould show "Ready - started server on 0.0.0.0:3000" - Database is accessible: PostgreSQL or Firebase connection established
- Environment variables are set:
.env.localcontains all required keys - Browser cache cleared: Hard refresh (Ctrl+F5) to avoid cached issues
🔍 Step-by-Step Validation
Phase 1: Application Startup
Goal: Verify the application starts correctly and serves the homepage.
1.1 Check Application Logs
In your Ring Platform directory
npm run devExpected output:
▲ Next.js 15.x.x
- Local: http://localhost:3000
- Environments: .env.local
- Ready - started server on 0.0.0.0:3000
❌ Common Issues:
- "Port 3000 already in use" → Kill other processes:
lsof -ti:3000 | xargs kill - "Module not found" → Run
npm installto install dependencies - "Database connection failed" → Check database credentials in
.env.local
1.2 Test Homepage Access
Test HTTP response
curl -I http://localhost:3000Expected: HTTP/1.1 200 OK
Test page content
curl -s http://localhost:3000 | head -20Expected: HTML content with Ring Platform branding
1.3 Browser Validation
- Open
http://localhost:3000in your browser - Verify the page loads without JavaScript errors
- Check browser console (F12) for any error messages
- Confirm the Ring Platform logo and hero section appear
Phase 2: Authentication System
Goal: Verify Auth.js v5 setup and OAuth providers work correctly.
2.1 Test Authentication Page
Visit http://localhost:3000/auth/signin
Expected:
- Clean login page with provider buttons
- No JavaScript errors in console
- Responsive design on mobile/desktop
2.2 Google OAuth Flow
- Click "Sign in with Google"
- Complete Google OAuth flow
- Verify redirect to dashboard/profile page
- Check session persistence (refresh page)
Validation Commands: Test OAuth callback endpoint Expected: HTTP/1.1 302 Found (redirect)
curl -I "http://localhost:3000/api/auth/callback/google"2.3 Session Validation
API Test: Test session endpoint
curl -X GET "http://localhost:3000/api/auth/session" -H "Cookie: $(curl -c cookies.txt -b cookies.txt http://localhost:3000/api/auth/session | grep -o 'next-auth.session-token=[^;]*')"Expected Response:
"user": {
"id": "user-id",
"name": "User Name",
"email": "user@example.com",
"image": "https://...",
"role": "MEMBER"
},
"expires": "2025-..."
}2.4 Profile Access
- Visit
/profileor/[locale]/profile - Verify user information displays correctly
- Check profile picture loads from Google
- Confirm logout functionality works
Phase 3: Database Connectivity
Goal: Verify database operations work correctly.
3.1 API Health Check
Test health endpoint
curl http://localhost:3000/api/healthExpected Response:
"status": "ok",
"timestamp": "2025-10-16T...",
"database": "connected",
"version": "0.9.18"
}3.2 Entities System
Create Test Entity:
- Visit
http://localhost:3000/entities - Click "Create Entity" or "Add Entity"
- Fill form: Name, Type, Description
- Submit and verify entity appears in list
API Validation: List entities Expected: Array of entities or empty array
curl "http://localhost:3000/api/entities"3.3 Database Connection Test
PostgreSQL Test: Direct database test (if using local PostgreSQL) Expected: Count >= 1 (your user account)
psql -h localhost -U ring_user -d ring_platform -c "SELECT COUNT(*) FROM users;"Firebase Test (if using Firebase): Test Firestore connection Expected: Success message
curl "http://localhost:3000/api/test-db"Phase 4: Core Features
Goal: Validate opportunities, messaging, and real-time features.
4.1 Opportunities System
- Visit
http://localhost:3000/opportunities - Verify opportunities list loads
- Create a test opportunity
- Test search and filtering
API Test: Test opportunities endpoint
curl "http://localhost:3000/api/opportunities?limit=5"Expected: Array of opportunities or empty array
4.2 Real-time Features
WebSocket Test: Test tunnel transport endpoint
curl -X POST "http://localhost:3000/api/tunnel/test" -H "Content-Type: application/json" -d '{"test": "connection"}'Notification Test:
- Create an opportunity (triggers notification)
- Verify notification appears in real-time
- Check notification count in UI
4.3 Messaging System (Optional)
- Visit messaging interface
- Start a conversation
- Send test messages
- Verify real-time delivery
Phase 5: Web3 & Wallet Features
Goal: Validate blockchain integration and wallet functionality.
5.1 Wallet Creation
- Visit
/profileor/wallet - Check if wallet is auto-created
- Verify wallet address display
API Test: Test wallet endpoint Expected: Wallet balance information
curl "http://localhost:3000/api/wallet/balance"5.2 MetaMask Integration (Optional)
- Install MetaMask extension
- Connect wallet to Ring Platform
- Test wallet operations
- Verify transaction signing
5.3 RING Token Features (Optional)
- Check token balance display
- Test token transfer functionality
- Verify transaction history
🧪 Advanced Validation Tests
Performance Testing
Test response times
curl -w "@curl-format.txt" -o /dev/null -s "http://localhost:3000/api/health"Create curl-format.txt:
time_namelookup: %{time_namelookup}\n
time_connect: %{time_connect}\n
time_appconnect: %{time_appconnect}\n
time_pretransfer: %{time_pretransfer}\n
time_redirect: %{time_redirect}\n
time_starttransfer: %{time_starttransfer}\n
----------\n
time_total: %{time_total}\n
Expected: Total time < 2 seconds
Load Testing
Simple load test
for i in {1..10}; do
curl -s "http://localhost:3000/api/health" &
done
waitExpected: All requests return 200 OK
Error Handling Test
Test 404 handling Expected: 404 Not Found Test API error handling Expected: Proper error response
curl -I "http://localhost:3000/nonexistent-page"
curl "http://localhost:3000/api/entities/invalid-id"🚨 Troubleshooting Guide
Authentication Issues
"Sign in failed" or OAuth errors:
- Check Google Cloud Console OAuth configuration
- Verify redirect URIs match exactly
- Ensure Google+ API is enabled
- Check
.env.localcredentials format
Session not persisting:
- Verify
AUTH_SECRETis set (32+ characters) - Check cookie settings in browser
- Clear browser cache and cookies
Database Issues
"Database connection failed": PostgreSQL Test connection
sudo systemctl status postgresql # Linux
brew services list | grep postgresql # macOS
psql -h localhost -U ring_user -d ring_platformFirebase connection issues: Check Firebase config
firebase projects:list
firebase use your-project-idAPI Issues
"API endpoint not found":
- Verify Next.js server is running
- Check API route file exists
- Review server logs for errors
CORS errors:
- Check
NEXTAUTH_URLmatches your domain - Verify API routes have proper CORS headers
Real-time Issues
WebSocket not connecting:
- Check browser network tab for connection attempts
- Verify tunnel transport configuration
- Test with different browsers
Notifications not appearing:
- Check browser notification permissions
- Verify user is logged in
- Test with different trigger events
Performance Issues
Slow page loads: Check bundle size Profile with browser dev tools Network tab: Check for large assets Performance tab: Record and analyze
npm run build
ls -lh .next/static/chunks/Memory issues: Monitor Node.js process Or use PM2: pm2 monit
top -p $(pgrep -f "next-server")📊 Validation Checklist Summary
| Component | Status | Notes |
|---|---|---|
| Application Startup | ☐ | Server starts, homepage loads |
| Authentication | ☐ | Google OAuth works, sessions persist |
| Database | ☐ | Connections work, data operations succeed |
| Entities | ☐ | CRUD operations function correctly |
| Opportunities | ☐ | Listing, creation, search works |
| Real-time | ☐ | WebSocket connections, notifications |
| Wallet | ☐ | Address creation, balance display |
| API Health | ☐ | All endpoints respond correctly |
| Performance | ☐ | Response times < 2s |
| Error Handling | ☐ | Proper error responses |
🎯 Success Criteria
✅ FULL SUCCESS - All checkboxes above are checked
- Application runs without errors
- All core features work end-to-end
- Performance meets expectations
- No critical issues remain
⚠️ PARTIAL SUCCESS - 70%+ of features work
- Core authentication and database work
- Most features functional with minor issues
- Can proceed with development/customization
❌ NEEDS ATTENTION - < 70% functional
- Review troubleshooting section
- Check prerequisites setup
- Revisit installation steps
🚀 Next Steps After Success
Congratulations! Your Ring Platform installation is fully functional. You're now ready to:
- Explore Features - Discover all platform capabilities
- Customize Branding - Make it your own
- Add New Features - Extend functionality
- Deploy to Production - Share with the world
- Join Community - Connect with other developers
Need help customizing? Check our white-label guide for advanced customization options.
Having issues? Check our troubleshooting guide or join our Discord community for support.