Technology-Specific Examples
React/TypeScript Projects
Section titled “React/TypeScript Projects”Component Renaming
Section titled “Component Renaming”# Rename a React component across the entire projectrenamify rename UserCard ProfileCard \ --include "src/**/*.{tsx,ts,js,jsx}" \ --exclude "**/*.test.*"
# Or use specific pathsrenamify rename UserCard ProfileCard src/components/ src/pages/
Changes made:
- Component files:
UserCard.tsx
→ProfileCard.tsx
- Test files:
UserCard.test.tsx
→ProfileCard.test.tsx
(if not excluded) - Import statements:
import UserCard from './UserCard'
- JSX usage:
<UserCard />
→<ProfileCard />
- Type definitions:
UserCardProps
→ProfileCardProps
Hook Renaming
Section titled “Hook Renaming”# Rename a custom React hookrenamify rename useUserData useProfileData \ --include "src/**/*.{ts,tsx}"
# Or target specific directoriesrenamify rename useUserData useProfileData src/hooks/ src/components/
Changes made:
// Beforefunction useUserData(id: string) { ... }const { data, loading } = useUserData(userId);
// Afterfunction useProfileData(id: string) { ... }const { data, loading } = useProfileData(userId);
Python Projects
Section titled “Python Projects”Django Model Renaming
Section titled “Django Model Renaming”# Rename Django models and related coderenamify rename UserProfile AccountProfile \ --include "**/*.py" \ --exclude "migrations/**"
# Or target specific app directoriesrenamify rename UserProfile AccountProfile apps/users/ apps/accounts/
Changes made:
# models.py - Beforeclass UserProfile(models.Model): def get_user_profile_display(self): ...
# models.py - Afterclass AccountProfile(models.Model): def get_account_profile_display(self): ...
# views.py - Beforedef user_profile_view(request): ...profile = UserProfile.objects.get(id=1)
# views.py - Afterdef account_profile_view(request): ...profile = AccountProfile.objects.get(id=1)
Flask API Renaming
Section titled “Flask API Renaming”# Rename Flask route handlersrenamify rename getUserData fetchUserProfile \ --include "**/*.py" \ --exclude "venv/**"
# Or target specific modulesrenamify rename getUserData fetchUserProfile app/ routes/
Rust Projects
Section titled “Rust Projects”Module Renaming
Section titled “Module Renaming”# Rename Rust modules and functionsrenamify rename user_manager profile_manager \ --include "**/*.rs" \ --exclude "target/**"
# Or target specific source directoriesrenamify rename user_manager profile_manager src/ lib/
Changes made:
// Beforemod user_manager { pub fn get_user_manager() -> UserManager { ... }}use user_manager::UserManager;
// Aftermod profile_manager { pub fn get_profile_manager() -> ProfileManager { ... }}use profile_manager::ProfileManager;
Cargo.toml Updates
Section titled “Cargo.toml Updates”# Rename crate referencesrenamify rename my_crate awesome_crate \ --include "**/Cargo.toml,**/*.rs"
Go Projects
Section titled “Go Projects”Package Renaming
Section titled “Package Renaming”# Rename Go packagesrenamify rename userservice profileservice \ --include "**/*.go" \ --exclude "vendor/**"
# Or target specific packagesrenamify rename userservice profileservice pkg/ cmd/
Changes made:
// Beforepackage userservice
func GetUserService() *UserService { ... }
// Afterpackage profileservice
func GetProfileService() *ProfileService { ... }
Node.js/JavaScript Projects
Section titled “Node.js/JavaScript Projects”NPM Package Renaming
Section titled “NPM Package Renaming”# Rename throughout a Node.js projectrenamify rename mypackage awesome_package \ --include "**/*.{js,json,md}" \ --exclude "node_modules/**"
# Or target specific directoriesrenamify rename mypackage awesome_package src/ lib/ docs/
Changes made:
package.json
name field- Import statements:
require('mypackage')
- Documentation references
- Configuration files
Express.js Routes
Section titled “Express.js Routes”# Rename Express route handlersrenamify rename userRoutes profileRoutes \ --include "**/*.js" \ --exclude "node_modules/**"
# Or target route directoriesrenamify rename userRoutes profileRoutes routes/ controllers/
Database Projects
Section titled “Database Projects”SQL Schema Renaming
Section titled “SQL Schema Renaming”# Rename database tables and columns (be careful!)renamify rename user_data profile_data \ --include "**/*.sql" \ --exclude "migrations/**" \ --dry-run # Always dry-run first for SQL!
Changes made:
-- BeforeCREATE TABLE user_data ( id SERIAL PRIMARY KEY, user_data_json JSONB);
-- AfterCREATE TABLE profile_data ( id SERIAL PRIMARY KEY, profile_data_json JSONB);
Configuration Files
Section titled “Configuration Files”Environment Variables
Section titled “Environment Variables”# Update environment variable namesrenamify rename DATABASE_HOST DB_HOST \ --include "**/*.{env,yml,yaml,json}"
Docker and K8s
Section titled “Docker and K8s”# Rename service references in Docker/K8s filesrenamify rename userservice profileservice \ --include "**/*.{yml,yaml,dockerfile}"
Multi-Language Projects
Section titled “Multi-Language Projects”Microservices Architecture
Section titled “Microservices Architecture”# Rename across multiple languages in a microservice setuprenamify rename userservice profileservice \ --include "**/*.{js,py,go,rs,yml,yaml,json}" \ --exclude "**/node_modules/**,**/target/**,**/__pycache__/**"
# Or target specific service directoriesrenamify rename userservice profileservice services/ api/ config/
This handles:
- Service names in configuration files
- API endpoint references
- Docker service names
- Inter-service communication code
- Documentation updates
Framework-Specific Tips
Section titled “Framework-Specific Tips”Next.js Projects
Section titled “Next.js Projects”# Include Next.js specific filesrenamify rename oldPage newPage \ --include "**/*.{tsx,ts,js,jsx}" \ --include "pages/**" \ --include "app/**"
# Or target specific Next.js directoriesrenamify rename oldPage newPage pages/ app/ components/
Vue.js Projects
Section titled “Vue.js Projects”# Include Vue single file componentsrenamify rename UserWidget ProfileWidget \ --include "**/*.{vue,js,ts}" \ --include "src/components/**"
# Or target Vue directoriesrenamify rename UserWidget ProfileWidget src/components/ src/views/
Laravel Projects
Section titled “Laravel Projects”# PHP Laravel project renamingrenamify rename UserController ProfileController \ --include "**/*.php" \ --exclude "vendor/**"
# Or target specific Laravel directoriesrenamify rename UserController ProfileController app/Http/Controllers/ app/Models/
Best Practices by Technology
Section titled “Best Practices by Technology”Always Exclude Dependencies
Section titled “Always Exclude Dependencies”- Node.js:
--exclude "node_modules/**"
- Rust:
--exclude "target/**"
- Python:
--exclude "venv/**,__pycache__/**"
- Go:
--exclude "vendor/**"
Include Relevant Extensions
Section titled “Include Relevant Extensions”- Web:
--include "**/*.{js,ts,tsx,jsx,html,css,scss}"
- Backend:
--include "**/*.{py,js,go,rs,rb,php}"
- Config:
--include "**/*.{json,yml,yaml,toml,env}"
Test Safely First
Section titled “Test Safely First”# Always start with dry-run for unfamiliar codebasesrenamify dry-run pattern replacement --include "src/**"