This is a quick response to this post
Please do edit and point to other resources
If you have an existing database powered app, here is a rough guide to thinking about migrating to atproto
Figure out which data is private, this will stay in your database
Figure out what the main data is. Look around for an existing lexicon or create your own.
When creating new records, write them to the user PDS.
You’ll need to start aggregating your lexicon types from the network.
Create OAuth based atproto logins and link them to your existing accounts. Deprecate user / pass login.
For signup, either run your own PDS or point to Bluesky or community PDS
Prompt the user to migrate their records to their PDS.