# Versioning of the application
## Introduction to Application Versioning in FAB Builder
Application versioning in **FAB Builder** ensures seamless development and efficient management of changes. It allows users to track updates, maintain a structured workflow, and ensure application stability throughout the development process. By maintaining versions, users can confidently make edits and sync changes without compromising previous configurations.
FAB Builder's intuitive versioning system simplifies the development process, making it easy for teams to manage and review progress effectively. This approach enhances **collaboration**, **improves data integrity**, and ensures **optimal application performance** at every stage.
## Key Concepts
### Local Draft Mode
In **FAB Builder**, applications initially reside in Local Draft Mode. Changes and configurations made in this mode remain unsynced, ensuring they don’t affect the server version until explicitly synced. This provides a safe environment for iterative development without impacting live data or functionality.
### Syncing to the Server
Syncing transfers the application’s draft state to the server. Once synced, the server version is updated, while retaining the previous version for rollback or comparison. If the source code isn’t built yet, further edits can still be made, preserving flexibility in version management.
## Editable State
In **FAB Builder**, applications remain **editable** even after syncing, provided the **source code** hasn’t been built. This ensures users retain flexibility to refine configurations or make updates before finalising the application.
This feature allows seamless iteration without disrupting the existing workflow, making it ideal for dynamic development needs. For more details, visit[ FAB Builder](https://studio.fabbuilder.com/).
## Version Stability
In FAB Builder, applications retain the same **version** if no source code is generated after syncing. This ensures version stability, allowing developers to make iterative changes without altering the existing version. Consistent versions simplify tracking, prevent unnecessary conflicts, and provide a stable environment during development.
## **Best Practices**
To optimise your application versioning in **FAB Builder**, follow these best practices:
* **Periodic Syncing**: Regularly **sync** changes to ensure no progress is lost during development.
* **Thorough Reviews**: Review all **configurations** and **updates** before building the source code for accuracy and efficiency.
Implementing these practices ensures seamless development and better version control.
## **Conclusion**
Versioning in **FAB Builder** ensures **efficient tracking**, **flexibility**, and **stability** during application development. By leveraging local drafts, syncing capabilities, and editable states, users can manage changes seamlessly. Adopt versioning practices to optimise your development process and maintain application reliability.