What I’m trying to do:
Hide the client-side python source of the main application before the user logs in.
To simplify: I want a Login form, and a Working form
The Login form just handles login. If you do a view source on it, you see it makes a server call to whatever it uses in the server module to log in or maybe just something like:
It would not load the WorkingForm python code to the browser until after login
I’m not as concerned with being able to view the entire client-side source code from people who have logged in, but I AM concerned with unknown people being able to read the entire client-side source code without logging in first. It just surfaces too much information.
What I’ve tried and what’s not working:
I’ve tried using a module as the startup
I’ve tried putting the WorkingForm in a package
Things I have not tried yet:
Have a login application and then pass control onto the main app
Did you check the box to share login status between the apps? You have to do that in the Users service in all the apps that will share the login status.
Huh…I see different options in an older app, but in a newly created app I see the same options you’re seeing. Not sure what’s going on with newer apps, or the shared login feature.
The whole app is loaded to the client when it starts.
You could create two apps that share the users table and the login. One app manages the login and redirects to the second app after the login. The second app redirects to the first after the logout.
The problem with this is that the first app doesn’t expose the code of the second app, but exposes its url, and anyone can go to the second url and load the code. The second app will only render a form that says “please login”, or it will immediately redirect to the first app, but the client side code will be visible.