- π Features
- π Quick Start
- ποΈ Architecture
- π³ Subscription Plans
- π± Screenshots
- π οΈ Technology Stack
- π§ Installation
- π API Documentation
- π€ Contributing
- π License
- Multi-page Portfolios: Create unlimited pages (based on subscription tier)
- Professional Templates: Choose from beautifully designed templates
- Drag & Drop Gallery: Showcase your work with an intuitive gallery system
- Custom Pages: Home, About, Services, Projects, Contact, and more
- Mobile Responsive: Perfect display on all devices
- Password Protection: Secure specific pages (RISE/BLAZE tiers)
- Public/Private Toggle: Control page visibility
- OAuth Integration: Google Sign-in support
- Email Verification: Secure account creation
- Visitor Tracking: Monitor portfolio views and engagement
- Geographic Analytics: See where your visitors are from
- Device Statistics: Understand your audience's browsing habits
- Trend Analysis: Track performance over time
- Resume Management: Upload and share professional resumes
- Verification System: Get verified badges for credibility (BLAZE tier)
- Social Media Integration: Connect all your professional profiles
- SEO Optimization: Built-in SEO features for better discoverability
Feature | STARTER (Free) | RISE ($9.99/mo) | BLAZE ($24.99/mo) |
---|---|---|---|
Pages | 1 | 10 | Unlimited |
Templates | 3 | 8 | All Premium |
Social Links | 5 | 15 | Unlimited |
Password Protection | β | β | β |
Analytics | β | β | β |
Verification Badge | β | β | β |
Custom Domain | β | β | β |
Priority Support | β | β | β |
- Node.js 18+
- PostgreSQL 13+
- npm or yarn
git clone https://github.com/AWESOME04/SparkLink.git
cd SparkLink
Create .env
files in both client
and server
directories:
Server .env
:
DATABASE_URL="postgresql://username:password@localhost:5432/sparklink"
JWT_SECRET="your-super-secret-jwt-key"
CLOUDINARY_CLOUD_NAME="your-cloudinary-name"
CLOUDINARY_API_KEY="your-api-key"
CLOUDINARY_API_SECRET="your-api-secret"
GOOGLE_CLIENT_ID="your-google-oauth-client-id"
GOOGLE_CLIENT_SECRET="your-google-oauth-secret"
PAYSTACK_SECRET_KEY="your-paystack-secret"
EMAIL_SERVICE_API_KEY="your-email-service-key"
FRONTEND_URL="http://localhost:5173"
PORT=3001
Client .env
:
VITE_API_URL="http://localhost:3001/api"
VITE_GOOGLE_CLIENT_ID="your-google-oauth-client-id"
# Install server dependencies
cd server
npm install
# Install client dependencies
cd ../client
npm install
cd server
npx prisma generate
npx prisma db push
# Terminal 1 - Start server
cd server
npm run dev
# Terminal 2 - Start client
cd client
npm run dev
Visit http://localhost:5173
to see your SparkLink application!
SparkLink/
βββ client/ # React Frontend
β βββ src/
β β βββ components/ # Reusable UI components
β β βββ pages/ # Page components
β β βββ services/ # API services
β β βββ hooks/ # Custom React hooks
β β βββ context/ # React context providers
β β βββ utils/ # Utility functions
β βββ public/ # Static assets
βββ server/ # Node.js Backend
β βββ src/
β β βββ controllers/ # API controllers
β β βββ routes/ # API routes
β β βββ middleware/ # Express middleware
β β βββ services/ # Business logic
β β βββ config/ # Configuration files
β βββ prisma/ # Database schema & migrations
βββ README.md # This file
- Perfect for getting started with your first portfolio
- 1 customizable page
- 3 professional templates
- Basic profile customization
- Mobile-optimized and SEO-ready
- Ideal for professionals and freelancers
- Up to 10 pages
- 8 premium templates
- Password protection for pages
- Advanced analytics
- Custom domain support
- Complete solution for businesses and agencies
- Unlimited pages and templates
- Verification badge system
- Priority customer support
- Advanced privacy controls
- All premium features
Login to SparkLink
Signup to SparkLink
Comprehensive dashboard showing analytics, recent activity, and quick actions
Intuitive drag-and-drop page builder with real-time preview
Professional gallery system with categorization and reordering
Detailed analytics with charts, geographic data, and trend analysis
Clean subscription interface with plan comparison and billing
- React 19 - Latest React with modern features
- TypeScript - Type-safe development
- Vite - Lightning-fast build tool
- Tailwind CSS - Utility-first styling
- Framer Motion - Smooth animations
- React Hook Form - Form management
- Zod - Schema validation
- Axios - HTTP client
- Node.js - JavaScript runtime
- Express.js - Web framework
- TypeScript - Type-safe server development
- Prisma - Modern database toolkit
- PostgreSQL - Robust relational database
- JWT - Authentication tokens
- Cloudinary - Image management
- Paystack - Payment processing
- Vercel - Frontend hosting
- Render - Backend hosting
- PostgreSQL Cloud (Neon) - Database hosting
- Cloudinary - CDN for media files
SparkLink provides a comprehensive REST API. Key endpoints include:
POST /api/auth/register
- User registrationPOST /api/auth/login
- User loginGET /api/auth/google
- Google OAuth
GET /api/profile
- Get user profilePUT /api/profile
- Update profilePOST /api/profile/upload/profile-picture
- Upload avatar
GET /api/pages
- Get all pagesPOST /api/pages
- Create new pagePUT /api/pages/:id
- Update pageDELETE /api/pages/:id
- Delete page
GET /api/gallery
- Get gallery itemsPOST /api/gallery/upload
- Upload mediaPUT /api/gallery/:id
- Update item
For complete API documentation, see Postman Documentation
We welcome contributions to SparkLink! Here's how you can help:
- Check existing issues first
- Create a detailed bug report
- Include steps to reproduce
- Add screenshots if applicable
- Open a feature request issue
- Describe the feature clearly
- Explain the use case
- Discuss implementation approach
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
- Use TypeScript for all new code
- Follow existing patterns and conventions
- Add proper JSDoc comments
- Ensure responsive design
- Test on multiple devices
- π― Active Users: Growing community of professionals
- π Success Rate: 95% user satisfaction
- π Performance: < 2s page load times
- π± Mobile: 100% responsive design
- π Security: Enterprise-grade protection
- Mobile app (iOS/Android)
- Advanced template builder
- Team collaboration features
- Integration marketplace
- White-label solutions
- Public portfolio view
- AI-powered content suggestions
- Advanced analytics dashboard
- Multi-language support
- Custom domain management
- Advanced SEO tools
- Design inspiration from modern portfolio platforms
- Open source community for excellent libraries
- Beta testers for valuable feedback
- Contributors who make SparkLink better
Made with β€οΈ by the SparkLink Team
β Star us on GitHub if you find SparkLink useful!