A professional portfolio website with integrated Stripe payment processing for project deposits.
- Pricing Calculator: Interactive calculator for different service types and complexity levels
- Stripe Integration: Secure payment processing for 10% project deposits
- Multi-page Layout: Separate pages for Portfolio, Skills, Pricing, Gallery, Contact, and About
- Responsive Design: Works on all devices with glassmorphism UI
- Payment Tracking: Automatically calculates 10% deposit and 90% balance
npm installnpm startOr for development with auto-restart:
npm run devThe server will run on http://localhost:3000
Open your browser and go to:
http://localhost:3000
Your Stripe keys are already configured:
- Publishable Key: Set in
script.js - Secret Key: Set in
server.js
For production deployment:
- Use environment variables for secret keys
- Set up Stripe webhooks for payment notifications
- Add proper database integration to store project data
- Customer visits pricing page
- Selects service type (Website, Mobile App, AI, Blockchain)
- Selects complexity level (Basic, Advanced, Enterprise)
- Sees total cost and 10% deposit amount
- Clicks "Get Started"
- Fills in contact information and project description
- Enters payment details via Stripe
- Pays 10% deposit
- You receive notification and follow up
- 10% deposit paid upfront via Stripe
- 90% balance due after project completion
- All payments are secure and PCI compliant
Creates a Stripe payment intent for the deposit amount.
Request:
{
"amount": 30000, // Amount in cents ($300.00)
"currency": "usd"
}Response:
{
"clientSecret": "pi_xxx_secret_xxx"
}Receives and stores project submission data.
Request:
{
"name": "John Doe",
"email": "john@example.com",
"phone": "+1234567890",
"description": "Project description",
"projectCost": 3000,
"depositAmount": 300,
"service": "Website Development",
"complexity": "Basic Custom-Built"
}-
Set up environment variables:
STRIPE_SECRET_KEY=your_secret_key PORT=3000
-
Update server.js to use environment variables:
const stripe = require('stripe')(process.env.STRIPE_SECRET_KEY);
-
Deploy to your hosting platform (Netlify, Vercel, Heroku, etc.)
-
Set up Stripe webhooks in your Stripe Dashboard to receive payment notifications
For questions or issues, contact: raphael@example.com
© 2025 Raphael. All rights reserved.