Any suggestions for a good profile management module?

I’m just starting out with Meteor and I’m amazed at how powerful it is. The accounts-* modules, in particular, were really impressive.

Now I’m looking for something to do profile management, and I’m hoping that someone can point me to a module that is equally magical. Here’s my ideal profile design; is there a module that does some / all of this?

  • There is a view route and an edit route, let’s say /profile/:username and /profile/:username/edit. These should default but be overridable.
  • The .../edit route will either create or update a profile as needed.
  • The module allows me to specify, autoform style, a list of fields that will constitute the profile.
  • Similar to how the accounts-google module’s loginButtons template element will generate the login form for me, the profile module will generate the profile form for me if I do something like: <template name="profile"> {{editProfile}} </template>
  • The fields in the profile will default themselves from the Meteor.users.profile subdoc, or from other places per my specification. (e.g., I could tell it to default the email from users.profile.email or from services.google.email if no profile is found.)
  • The form will do validation (required fields, etc) a la autoform
  • Data from the form will be stored in Meteor.users.profile by default
  • The process will be secure – no trusting the client, only a logged-in user can create/edit a profile and only their own profile, etc
  • Hits to the /profile/joebloggs/edit route should take you to /profile/joebloggs if you’re not eligible to edit that profile.

Is there something that would work for this? If not, I can take a shot at writing it, although I don’t guarantee that I can. In the case that it doesn’t exist and I start working on it, do you have any other design suggestions for how it should work?