A modern file-sharing platform that lets you upload files and generate secure temporary links for sharing. Perfect for quickly sharing files with advanced features and multiple tier options.
CandyShare allows you to:
- Upload files with drag-and-drop interface
- Generate secure links that expire automatically
- Share files instantly with anyone via a simple URL or QR code
- Protect sensitive files with optional password protection
- Track downloads and access patterns with detailed analytics
- Choose your tier - Anonymous, Free, or Pro sharing options
- Manage files with a comprehensive dashboard
- Share photos and videos with family and friends
- Send large documents that won't fit in email
- Temporary file storage for personal projects
- Quick file transfers between devices
- Share project files with clients
- Distribute documents to team members
- Send large presentations or reports
- Temporary file hosting for meetings
- Share code files and assets
- Distribute software builds
- Host temporary documentation
- Share log files for debugging
- Instant Upload: Drag and drop or click to upload files
- Secure Links: Files are accessible only via generated links
- Auto Expiry: Files automatically expire for security
- Password Protection: Add passwords to sensitive files
- QR Code Sharing: Generate QR codes for easy mobile sharing
- Download Tracking: See how many times files are downloaded
- Analytics Dashboard: Detailed insights into file usage and activity
- User Authentication: Secure account management with NextAuth
- Payment Integration: Pro tier subscription with Razorpay
- File Management: Organize and manage your shared files
- Multiple Tiers: Anonymous, Free, and Pro sharing options
- Upload a file by dragging it to the upload area
- Get your share link instantly
- Share the link with anyone who needs the file
- Files expire automatically based on your tier
- No registration required
- Files expire in 24 hours
- Up to 10MB file size
- Basic sharing features
- Account required
- Files expire in 7 days
- Up to 200MB file size
- Password protection available
- Basic analytics
- Full features
- Files expire in 30 days
- Up to 2GB file size
- Advanced analytics and insights
- Priority support
- Custom branding options
- Node.js 18+ or Bun
- PostgreSQL database
- AWS S3 bucket
- Razorpay account (for payments)
- Clone the repository
git clone https://github.com/yourusername/candyshare.git
cd candyshare- Install backend dependencies
cd backend
bun install- Install frontend dependencies
cd ../frontend
npm install- Set up environment variables
Backend (.env):
cp .env.example .env
# Edit .env with your database, AWS, and Razorpay credentialsFrontend (.env.local):
cp .env.example .env.local
# Edit .env.local with your API endpoints- Run database migrations
cd backend
bun run db:generate
bun run db:migrate- Start the development servers
Backend:
cd backend
bun run devFrontend:
cd frontend
npm run devThe application will be available at http://localhost:3000.
Build and run with Docker:
docker build -f docker/Dockerfile.server -t candyshare .
docker run -p 4000:4000 candyshareCandyShare/
βββ backend/ # Bun + Prisma API server
βββ frontend/ # Next.js React application
βββ docker/ # Docker configuration
βββ README.md
Contributions are welcome! Please feel free to submit a Pull Request.
MIT License - see LICENSE file for details.