User experience for imported users?

If you already have a transactional relationship with these folks, i.e., you’re moving them to a new platform, there are ways to shortcut the user creation process. It’s for more advanced admins, but here are some command line (rails console) ideas that could work:

u = User.new({username: 'testuser', email: 'testuser@example.com', name: 'Test User', trust_level: 2, password: SecureRandom.hex});
u.activate();
t = u.email_tokens.create(email: u.email);
Jobs.enqueue(:critical_user_email, type: :account_created, user_id: u.id, email_token: t.token);

From my experience, this will create the new user with the details you provide, activate their account so they can receive email, and then send them an email letting them know that an account has been created for them on your Discourse site, and gives them a link to set up their account:

A new account was created for you at Your Discourse Site Name

Click the following link to choose a password for your new account:
https://discourse.example.org/u/password-reset/(randomdigits)

You would need to set up your Announcements category so that all new users are automatically Watching it, which is a site setting.