A modern, interactive portfolio platform designed specifically for Gen Z professionals to build, customize, and share their digital career identity.
SkillSpark revolutionizes how young professionals showcase their skills and experience. Built with modern web technologies, it offers an intuitive platform for creating stunning, personality-driven portfolios that stand out in today's competitive job market.
- Interactive Dashboard - Clean, modern interface with smooth animations
- Project Management - Add, edit, and showcase your work with tech stacks
- Timeline Builder - Visual career journey with education and experience
- 4 Personality Themes - Minimalist, Brutalist, Vaporwave, Modern
- Real-time Data Sync - Firebase Firestore integration
- User Authentication - Email/Password + Google OAuth
- PDF Export - High-quality portfolio downloads
- Responsive Design - Perfect on all devices
- Public Sharing - Shareable portfolio URLs
- Drag & Drop - Intuitive content management
- Live Preview - See changes in real-time
- Theme Switching - Instant personality changes
- Performance Optimized - Fast loading with smooth animations
- React.js - Modern UI library
- Tailwind CSS - Utility-first styling
- Framer Motion - Smooth animations
- React Router - Client-side routing
- html2pdf.js - PDF generation
- Node.js - JavaScript runtime
- Express.js - Web framework
- Firebase Admin - Server-side Firebase integration
- Firebase Firestore - NoSQL database
- Firebase Authentication - User management
- Firebase Hosting - Deployment platform
- Create React App - Development setup
- PostCSS - CSS processing
- ESLint - Code linting
- Node.js (v14 or higher)
- npm or yarn
- Firebase account
- Clone the repository
git clone https://github.com/yourusername/skillspark.git
cd skillspark- Install dependencies
# Install client dependencies
cd client
npm install
# Install server dependencies
cd ../server
npm install- Set up Firebase
- Create a Firebase project at console.firebase.google.com
- Enable Authentication (Email/Password + Google)
- Create Firestore database
- Copy your config to
.envfiles (see.env.example)
- Configure environment variables
# Client environment
cp client/.env.example client/.env
# Add your Firebase config
# Server environment
cp server/.env.example server/.env
# Add your Firebase admin config- Start development servers
# Start client (in client directory)
npm start
# Start server (in server directory)
npm run dev- Open your browser
Navigate to
http://localhost:3000
skillspark/
โโโ client/ # React frontend
โ โโโ public/
โ โโโ src/
โ โ โโโ components/ # Reusable components
โ โ โโโ pages/ # Page components
โ โ โโโ utils/ # Utility functions
โ โ โโโ config/ # Configuration files
โ โ โโโ styles/ # Global styles
โ โโโ package.json
โ โโโ tailwind.config.js
โโโ server/ # Node.js backend
โ โโโ routes/ # API routes
โ โโโ middleware/ # Custom middleware
โ โโโ config/ # Server configuration
โ โโโ server.js # Main server file
โโโ docs/ # Documentation
โโโ README.md
- Sign Up - Create account with email or Google
- Add Projects - Showcase your work with descriptions and tech stacks
- Build Timeline - Add education, work experience, and achievements
- Choose Theme - Select from 4 personality-driven designs
- Export & Share - Generate PDF or share public URL
POST /api/auth/register # User registration
POST /api/auth/login # User login
GET /api/user/profile # Get user profile
PUT /api/user/profile # Update profile
GET /api/projects # Get user projects
POST /api/projects # Create project
PUT /api/projects/:id # Update project
DELETE /api/projects/:id # Delete project
GET /api/timeline # Get timeline events
POST /api/timeline # Create timeline event
# Build for production
cd client
npm run build
# Deploy to Vercel
vercel --prod
# Or deploy to Netlify
netlify deploy --prod --dir=build# Deploy to Heroku
cd server
git subtree push --prefix server heroku main
# Or deploy to Railway
railway deploy# Install Firebase CLI
npm install -g firebase-tools
# Login and deploy
firebase login
firebase deployWe welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Prabinder Singh
- GitHub: @prabindersingh
- LinkedIn: Prabinder Singh
- Email: prabindersinghh@gmail.com
- Firebase for backend infrastructure
- Tailwind CSS for styling system
- Framer Motion for animations
- React community for amazing ecosystem
- AI-powered content suggestions
- Social media integrations
- Advanced analytics dashboard
- Team collaboration features
- Mobile app version
- Adobe Firefly API integration
- Custom domain support
- Advanced theme customization
- Lines of Code: ~5,000+
- Components: 15+
- API Endpoints: 12+
- Themes: 4
- Supported Formats: PDF, Web
โญ Star this repository if you found it helpful!
Built with โค๏ธ for the Gen Z developer community