Best Practices as per my knowledge. Kindly check the below.
1. Mirror Dynamics 365 Apps Across Environments
If you plan to use standard CRM tables like Opportunity, Lead, Quote, etc., install the same Dynamics 365 app (e.g., Sales) in Dev.
This ensures you can work with the same schema and forms.
2. Add CRM Tables to Your Dev Solution Explicitly
In Dev, go to your unmanaged solution.
Use "Add Existing > Table" to add Opportunity, selecting all relevant assets (views, forms, columns, relationships).
This way, when you export and import to Live, you ensure they’re part of the deployment.
3. Manage Your Power Pages and Power Apps from the Same Solution
This is good! Just make sure you manage dependencies carefully.
When you deploy the managed solution to Live, ensure all needed tables and web roles/permissions are included.
4. Use Environment Variables and ALM Pipelines (Optional)
Consider setting up ALM (Application Lifecycle Management) using Power Platform Pipelines.
This automates deployments and ensures consistent configuration between Dev, Test/UAT, and Live.