Upgrade to Next-gen

I’ve put together a list of FAQ’s that may be helpful for those of you who have access to Classic and Next-Gen, there’s also a version published here.

Q: Do I have to migrate my Classic app to Next-Gen?

A: No, you do not. Your Classic app and custom code will continue to work as they do today. There is no requirement or deadline to migrate to or start using Next-Gen!

Q: Will my Classic custom code stop working?

A: No. Your Classic custom code will continue to function normally when using the Classic Live App. Classic and Next-Gen are completely separate Live App experiences.

Q: Why are the custom code examples so different between Classic and Next-Gen?

A: Classic and Next-Gen use fundamentally different technologies. Classic uses jQuery and traditional web patterns, while Next-Gen uses React and modern JavaScript patterns. They’re essentially two different platforms that share the same database.

Q: If I make changes to my Classic custom code, will it affect my Next-Gen app?

A: No. Classic and Next-Gen custom code are completely isolated from each other. Changes in one version have zero impact on the other version.

Technical Questions

Q: Can I use my existing Classic JavaScript code in Next-Gen?

A: No, Classic JavaScript code won’t work in Next-Gen due to different architectures. If you want to add custom code to Next-Gen, you’ll need to write new code using Next-Gen patterns.

Q: Do both versions access the same data?

A: Yes. Both Classic and Next-Gen apps work with the same backend database, so your data is identical in both versions.

Q: Can I have custom code in both Classic and Next-Gen versions of my app?

A: Yes. You can have completely different custom code in each version, and they won’t interfere with each other.

Q: Which version should I use for new custom code?

A: It depends on your needs:

  • If you’re comfortable with your current Classic setup, continue using Classic

  • If you want to explore modern web development patterns, consider Next-Gen

  • If you’re unsure, stick with Classic for now and explore Next-Gen at your own pace

Migration and Planning

Q: Is there a tool to automatically convert Classic code to Next-Gen?

A: No. Due to the fundamental differences in architecture, there’s no automatic conversion tool yet. Currently, Next-Gen code needs to be written from scratch using Next-Gen patterns.

Q: Should I plan to eventually move to Next-Gen?

A: If it benefits your specific use case. There’s no requirement from Knack to migrate. Many customers will continue using Classic and many have already started using Next-Gen.

Q: What happens if I want to try Next-Gen but change my mind?

A: You can switch back to Classic at any time. Since the versions are separate, your Classic app and code remain unchanged while you experiment with Next-Gen.

Q: Will Classic eventually be discontinued?

A: There are no current plans to discontinue Classic. Both versions are supported.

Troubleshooting

Q: My code works in Classic but not in Next-Gen. What’s wrong?

A: This is expected. Classic and Next-Gen use different JavaScript patterns and APIs. Code written for one version won’t work in the other.

Q: I’m getting errors when trying to use Classic methods in Next-Gen.

A: Classic methods (like jQuery selectors) don’t exist in Next-Gen. You’ll need to use Next-Gen methods and patterns instead.

Q: Can I copy and paste code examples between Classic and Next-Gen documentation?

A: No. The code examples are version-specific. Always use the documentation that matches your app version.

Summary

You are not required to migrate to Next-Gen custom code. Your Classic apps and existing custom code will continue to work exactly as they do today.

Understanding the Differences

Why Are There Such Major Differences?

Classic and Next-Gen Knack represent two completely different technical approaches:

  • Classic Knack uses traditional web technologies with jQuery-based customization

  • Next-Gen Knack uses modern React-based architecture with different customization patterns and a virtual DOM

Think of them as two separate websites that happen to share the same database. Each version has its own:

  • Custom code editor

  • JavaScript patterns and methods

  • Event system

  • Styling approach

Complete Separation

Your Classic and Next-Gen Live App versions operate independently:

:white_check_mark: Classic custom code only affects your Classic Live app

:white_check_mark: Next-Gen custom code only affects your Next-Gen Live app
:white_check_mark: Changes in one version do not impact the other version at all

:white_check_mark: Same data is accessible from both versions (they share the backend/builder)

No Migration Required

  • Your existing Classic apps will continue to function normally

  • All your current custom code will keep working

  • You can continue building and maintaining Classic customizations

  • There’s no deadline or requirement to switch to Next-Gen

When You Might Consider Next-Gen

You might explore Next-Gen custom code if you:

  • Want to try the latest web development patterns

  • Are starting a completely new project

  • Have specific requirements that benefit from React-based architecture or new CSS classes

Getting Help

If you have questions about:

  • Classic customization - Reference the Classic JavaScript documentation

  • Next-Gen customization - Reference the Next-Gen JavaScript documentation

  • Which version to use - Consider your current setup and future needs

  • Remember: You can use whichever version works best for your needs, and you’re not required to change.

3 Likes