- Update package.json description to reflect new branding - Add fix_chat_input function to update Pro URL references - Rename all Dyad-related functions and tags to MoreMinimore - Update test files to use new function names - Remove Pro restrictions from Annotator component - Update branding text throughout the application
188 lines
6.4 KiB
Markdown
188 lines
6.4 KiB
Markdown
# MoreMinimore Update and Debranding Script
|
|
|
|
This script (`scripts/update-and-debrand.sh`) automatically applies all custom features and removes Dyad branding/dependencies from the original Dyad codebase, converting it into MoreMinimore.
|
|
|
|
## 🚀 Features Applied
|
|
|
|
### Custom Features
|
|
- ✅ **Remove-limit feature** - Removes all usage limitations and restrictions
|
|
- ✅ **Smart Context for all users** - Previously Pro-only feature now available to everyone
|
|
- ✅ **Annotator tool for all users** - Previously Pro-only feature now available to everyone
|
|
- ✅ **No Pro upgrade buttons** - All Pro restrictions and upgrade prompts removed
|
|
|
|
### Debranding Changes
|
|
- ✅ **Dyad → MoreMinimore** - Complete branding transformation
|
|
- ✅ **Component names updated** - All Dyad* components renamed to MoreMinimore*
|
|
- ✅ **URLs updated** - All dyad.sh links changed to moreminimore.com
|
|
- ✅ **Protocol handlers** - Custom `moreminimore://` protocol instead of `dyad://`
|
|
- ✅ **App metadata** - Title bar and app information updated
|
|
|
|
### API Dependencies Removed
|
|
- ✅ **Dyad Template API** - Uses local templates only
|
|
- ✅ **Dyad Release Notes API** - Release notes check disabled
|
|
- ✅ **Dyad Auto-update API** - Auto-update functionality removed
|
|
- ✅ **Dyad Engine dependencies** - All Dyad Engine references removed
|
|
|
|
### UI/UX Improvements
|
|
- ✅ **YouTube video section removed** - Cleaner setup experience
|
|
- ✅ **ProBanner commented out** - No Pro promotion banners
|
|
- ✅ **ProModeSelector removed** - Simplified chat controls
|
|
- ✅ **Context Settings button** - Improved UI text
|
|
|
|
## 📋 Usage
|
|
|
|
### Quick Start
|
|
```bash
|
|
# Make the script executable
|
|
chmod +x scripts/update-and-debrand.sh
|
|
|
|
# Run the script
|
|
./scripts/update-and-debrand.sh
|
|
```
|
|
|
|
### What the Script Does
|
|
1. **Creates backup** - Automatic backup before making changes
|
|
2. **Applies custom features** - Enables remove-limit and other features
|
|
3. **Removes Dyad dependencies** - Eliminates all external API calls
|
|
4. **Updates branding** - Complete Dyad → MoreMinimore transformation
|
|
5. **Installs dependencies** - Updates package dependencies
|
|
6. **Tests compilation** - Verifies TypeScript compilation
|
|
|
|
### Safety Features
|
|
- ✅ **Automatic backup** - Creates timestamped backup directory
|
|
- ✅ **Error handling** - Script exits on any error
|
|
- ✅ **Compilation test** - Verifies code compiles successfully
|
|
- ✅ **Dependency check** - Ensures all dependencies are installed
|
|
|
|
## 🔄 Update Workflow
|
|
|
|
When you want to update your MoreMinimore with new features from the original Dyad repository:
|
|
|
|
1. **Pull latest changes** from upstream Dyad repository
|
|
2. **Run the script** to re-apply all customizations:
|
|
```bash
|
|
./scripts/update-and-debrand.sh
|
|
```
|
|
3. **Test the application** to ensure everything works:
|
|
```bash
|
|
npm start
|
|
```
|
|
4. **Commit changes** if everything works correctly
|
|
|
|
## 📁 Backup System
|
|
|
|
The script creates automatic backups with timestamp:
|
|
```
|
|
dyad-backup-YYYYMMDD-HHMMSS/
|
|
├── src/ # Source code backup
|
|
├── package.json # Package configuration
|
|
└── scripts/ # Scripts backup
|
|
```
|
|
|
|
## 🛠️ Technical Details
|
|
|
|
### Files Modified
|
|
- `src/custom/index.ts` - Custom feature flags
|
|
- `src/ipc/utils/template_utils.ts` - Template API removal
|
|
- `src/ipc/handlers/release_note_handlers.ts` - Release notes API removal
|
|
- `src/main.ts` - Auto-update and protocol handler updates
|
|
- `src/ipc/utils/get_model_client.ts` - Dyad Engine removal
|
|
- `src/ipc/ipc_host.ts` - Pro handlers removal
|
|
- `src/preload.ts` - Pro IPC channels removal
|
|
- `src/components/ChatInputControls.tsx` - ProModeSelector removal
|
|
- `src/pages/home.tsx` - ProBanner commenting
|
|
- `src/ipc/utils/smart_context_store.ts` - Smart context liberation
|
|
- `src/ipc/shared/language_model_constants.ts` - Provider updates
|
|
- `src/components/SetupBanner.tsx` - YouTube section removal
|
|
- `src/app/TitleBar.tsx` - Title bar branding
|
|
- `package.json` - App description
|
|
- All component files - Dyad → MoreMinimore renaming
|
|
- All files - URL updates and branding text
|
|
|
|
### Key Features Liberated
|
|
1. **Smart Context** - Advanced context management for all users
|
|
2. **Annotator Tool** - Visual editing and annotation capabilities
|
|
3. **Unlimited Usage** - No message limits or restrictions
|
|
4. **Full Feature Access** - All Pro features available to everyone
|
|
|
|
## 🎯 Benefits
|
|
|
|
### For Users
|
|
- **No limitations** - Unlimited access to all features
|
|
- **Better privacy** - No external API calls to Dyad services
|
|
- **Full functionality** - All Pro features available
|
|
- **Clean interface** - No upgrade prompts or restrictions
|
|
|
|
### For Developers
|
|
- **Easy updates** - Single script to re-apply all changes
|
|
- **Safe modifications** - Automatic backup system
|
|
- **Maintainable** - Clear separation of custom features
|
|
- **Extensible** - Easy to add new custom features
|
|
|
|
## 🔧 Troubleshooting
|
|
|
|
### Common Issues
|
|
|
|
#### TypeScript Compilation Errors
|
|
```bash
|
|
# Check TypeScript compilation
|
|
npm run ts
|
|
|
|
# If errors occur, check the backup and restore if needed
|
|
cp -r dyad-backup-YYYYMMDD-HHMMSS/src ./src
|
|
```
|
|
|
|
#### Application Won't Start
|
|
```bash
|
|
# Check dependencies
|
|
npm install
|
|
|
|
# Rebuild the application
|
|
npm run rebuild
|
|
|
|
# Check logs for specific errors
|
|
npm start
|
|
```
|
|
|
|
#### Script Permissions
|
|
```bash
|
|
# Make script executable
|
|
chmod +x scripts/update-and-debrand.sh
|
|
```
|
|
|
|
### Manual Recovery
|
|
If something goes wrong, you can always restore from the backup:
|
|
```bash
|
|
# Find your backup directory
|
|
ls dyad-backup-*
|
|
|
|
# Restore from backup
|
|
cp -r dyad-backup-YYYYMMDD-HHMMSS/src ./src
|
|
cp dyad-backup-YYYYMMDD-HHMMSS/package.json ./package.json
|
|
```
|
|
|
|
## 📝 Customization
|
|
|
|
### Adding New Custom Features
|
|
1. Add your feature flag to `src/custom/index.ts`
|
|
2. Implement the feature in the appropriate files
|
|
3. Update the script to apply your changes automatically
|
|
|
|
### Modifying the Script
|
|
The script is organized into clear functions:
|
|
- `apply_custom_features()` - Apply custom modifications
|
|
- `remove_dyad_apis()` - Remove external dependencies
|
|
- `update_branding()` - Update branding and names
|
|
- `remove_pro_features()` - Remove Pro restrictions
|
|
|
|
## 🎉 Result
|
|
|
|
After running the script, you'll have:
|
|
- **MoreMinimore** - Fully branded application
|
|
- **No limitations** - All features available to all users
|
|
- **No external dependencies** - Complete independence from Dyad APIs
|
|
- **Clean interface** - No Pro upgrade prompts or restrictions
|
|
- **Easy updates** - Simple script to re-apply changes
|
|
|
|
The application will be ready to use with all custom features enabled and no Dyad branding or dependencies.
|