Getting Updates
FastSvelte is yours to customize and extend. You can stay connected to receive bug fixes and improvements, or disconnect completely and own your codebase.
Two Approaches
Stay Connected (Recommended for New Projects)
Keep FastSvelte as an upstream remote to selectively apply updates:
# During initial setup (instead of removing origin)
git clone https://github.com/harunzafer/fastsvelte.git my-project
cd my-project
git remote rename origin upstream
git remote add origin <your-repo-url>
git push -u origin main
# Later, when you want updates
git fetch upstream
# View available updates
git log --oneline HEAD..upstream/main
# Cherry-pick specific commits you want
git cherry-pick <commit-hash>
# Or cherry-pick a range of commits
git cherry-pick <start-commit>..<end-commit>
# Test the changes
cd backend && pytest # For backend changes
cd frontend && npm run build && npm run test # For frontend changes
cd landing && npm run build && npm run check # For landing page changes
# Push to your repository
git push origin main
Best for: All projects - gives you full control over which updates to apply.
Disconnect (Recommended for Customized Projects)
Remove the FastSvelte remote and manually apply updates when needed:
# During initial setup (default approach in Getting Started)
git clone https://github.com/harunzafer/fastsvelte.git my-project
cd my-project
git remote remove origin
git remote add origin <your-repo-url>
git push -u origin main
# Later, check GitHub for updates you want
# Manually copy relevant changes to your project
Best for: Projects with heavy customization or teams that prefer full control.
Switching Approaches
You can switch at any time:
# To disconnect: remove the upstream remote
git remote remove upstream
# To reconnect: add FastSvelte as upstream
git remote add upstream https://github.com/harunzafer/fastsvelte.git
Update Strategy
For Security Patches: Apply immediately regardless of approach.
For Bug Fixes: Review and apply if relevant to your project.
For New Features: Evaluate if they benefit your use case.
For Breaking Changes: Read migration guides before updating.
Best Practices
- Always test updates in development first - Never update production directly
- Create a backup branch before major updates
- Review release notes to understand what changed
- Cherry-pick selectively - Apply only the commits you need instead of merging everything
- Test after each cherry-pick - Run tests to verify compatibility before continuing
- Resolve conflicts carefully - Cherry-pick will pause if conflicts occur, resolve them then continue with
git cherry-pick --continue
Next Steps: - Development Guide - Build your application - Deployment - Deploy to production