diff --git profile2.module profile2.module
index 0a7a55a..1cce4c7 100644
--- profile2.module
+++ profile2.module
@@ -725,3 +725,12 @@ function profile2_user_get_properties($account, array $options, $name) {
   return $profile ? $profile : NULL;
 }
 
+/**
+ * Implements hook_views_api().
+ */
+function profile2_views_api() {
+  return array(
+    'api' => '3.0-alpha1',
+    'path' => drupal_get_path('module', 'profile2') . '/views',
+  );
+}
diff --git views/profile2.views.inc views/profile2.views.inc
new file mode 100644
index 0000000..f8535fb
--- /dev/null
+++ views/profile2.views.inc
@@ -0,0 +1,38 @@
+<?php
+
+/**
+ * @file
+ * Provide views data and handlers for profile2.module
+ */
+
+/**
+ * Implements hook_views_data()
+ */
+function profile2_views_data() {
+  // Define the base group of this table. Fields that don't
+  // have a group defined will go into this field by default.
+  $data['profile']['table']['group']  = t('Profile');
+
+  $data['profile']['table']['base'] = array(
+    'field' => 'uid',
+    'title' => t('Profile'),
+    'help' => t('Profiles of the users who have created accounts on your site.'),
+    'access query tag' => 'user_access',
+  );
+
+  $data['profile']['uid'] = array(
+    'title' => t('User'),
+    'help' => t('The user associated with this profile'), // The help that appears on the UI,
+    'relationship' => array(
+      'title' => t('User'),
+      'help' => t('Relate profiles to the users associated with them.'),
+      'handler' => 'views_handler_relationship',
+      'base' => 'users',
+      'base field' => 'uid',
+      'field' => 'uid',
+      'label' => t('user'),
+    ),
+  );
+
+  return $data;
+}
