User Management Modules

User Profile:
  1. Content Profile(D6): Use this module to make profiles as nodes. It supports separate profiles for different roles. Will provide some sort of upgrade path to Profile 2 in D7. Content Profile also works with Auto Asign Roles Module, which provides various options for role/profile selection/assignment.
  2. Profile 2(D7): Users get two separate menu links "My account" and "My profile". Profile2 allows for creating multiple profile types, which may be assigned to roles. Supports private profile fields, which are only shown to the user owning the profile. Optionally, profile forms are shown during user account registration. With the new concept of entities in Drupal 7, this module supersedes content profile as general solution. However for any situations where profiles as nodes might be preferable, content profile for Drupal 7 will build upon profile2.
  3. Advanced Profile Kit(D6): Provides building blocks for putting together fancy user profile pages with Page Manager & Panels. Makes use of panels and views (Note: You can create Profile pages using either Panels or Context/Context Layouts, without this module. Refer Drupal Commons v2.0 distribution for a sample). Module maintainer says that there won't be a 7.x version unless someone else wants to take it over. Also that Profile2 and Page Manager don't play nice together so porting isn't even possible until that happens.
  4. Homebox (D6/D7): Allow users to have dashboards with blocks as widgets. Blocks in a Homebox page are resizeable, and reorderable by dragging. Homebox is currently used on Drupal.org for the 'Your Dashboard' feature. Integrates with Views 2 and its exposed Ajax filters.
User Login and Registration:
  1. Admin >> User Management >> Profiles (D6): Select which fields you want 'visible in user registration'.
  2. LoginToboggan(D6/D7): Allow users to login using either their username OR their e-mail address. Allow users to login immediately. Provide a login form on Access Denied pages. Customize the registration form. Redirect the user to a specific page. Integrates with Rules module to do various tasks.
  3. Pageroute(D6): Use the module to create a "route" which leads users through multiple pages, which can be e.g. a node creation form or a node display (using Content Profile module in D6). Profile setup for Drupal 6 works along side the pageroute module to provide additional page types.
  4. Multi-step user registration form using CTools form wizard: If the above pageroute+profile_setup modules doesn't work for, and if you know PHP programming then you can make use of Drupal's Form API (FAPI) and Ctools Form wizard API to build multi-step user registration form. See here. However, if you want to acomplish all this in a modal way (like lightbox2/colourbox) then I am not sure whether it is yet feasible. Check here, Modal forms (with ctools).
Social integration with User registration/Sending invites:
  1. Drupal for Facebook OR Similar other modules (D6/D7): Allow new users to login/register using their Facebook login. These modules provide much more than this functionality.
  2. Contact Importer (D6/D7) + Invite (D6) : Use this free solution to allow new users to send invites to their email contacts in Gmail/Yahoo, etc. Invite module can work along with User Relationships to automatically asign friend relation to users accepting the invite with the user inviting them.
  3. Gigya - Social optimization (D6/D7): Allow new users to login/register usign GIGYA's API which provides integration with many social websites such as Facebook/Twitter/etc. You can allow your users to send invites to their contacts as well. GIGYA provides upto 1000 members free, after which it is a commercial service with reportedly high costs (see here, http://drupal.org/node/769272).
  4. Janrain Engage (formerly RPX) (D6/D7): Allow new users to login/register usign JANRAIN's API which provides integration with many social websites such as Facebook/Twitter/etc. It is not clear whether you can allow users to send invites or not. It is a commercial service, e.g. $10/mo./5000users, $1000/yr./10000users.
Asign role / different profile to users:
  1. Auto Asign Roles Module (D6): Provides various options for role/profile selection/assignment.
  2. Profile role (D6/D7): Relate profile field categories to particular roles, instead of all fields being related to all roles.
  3. Profile 2(D7): Profile2 allows for creating multiple profile types, which may be assigned to roles.
User Taxonomy in User Profiles:
  1. User Terms (D6): Allows a site administrator to assign taxonomy vocabularies to users (If you are using core profile in D6 and not Content profile), from which terms can be applied to users and shown on account pages.
  2. Profile Taxonomy (D6): Profile Taxonomy enables the assignment of taxonomy terms to user profiles. Same as User Terms module.
  3. Content Profile(D6): Since this module makes profiles as nodes, you can associate taxonomy to this node type.
  4. Profile 2(D7): This module provides a new, fieldable 'profile' entity - leverage the power of fields. In D6, taxonomy had to be associated to node types. However, in D7, taxonomy is a field and can be added to node/entity.