diff --git a/src/profileeditor.h b/src/profileeditor.h
new file mode 100644
index 0000000..4bb073b
--- /dev/null
+++ b/src/profileeditor.h
@@ -0,0 +1,51 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
+/*
+ * Copyright (c) 2013, Regents of the University of California
+ *                     Yingdi Yu
+ *
+ * BSD license, See the LICENSE file for more information
+ *
+ * Author: Yingdi Yu <yingdi@cs.ucla.edu>
+ */
+
+#ifndef PROFILEEDITOR_H
+#define PROFILEEDITOR_H
+
+#include <QDialog>
+#include <QtSql/QSqlTableModel>
+
+#ifndef Q_MOC_RUN
+#include "contact-storage.h"
+#endif
+
+namespace Ui {
+class ProfileEditor;
+}
+
+class ProfileEditor : public QDialog
+{
+    Q_OBJECT
+
+public:
+  explicit ProfileEditor(ndn::Ptr<ContactStorage> contactStorage, QWidget *parent = 0);
+  
+  ~ProfileEditor();
+  
+private slots:
+  void
+  onAddClicked();
+
+  void
+  onDeleteClicked();
+
+  void
+  onOkClicked();
+
+
+private:
+  Ui::ProfileEditor *ui;
+  QSqlTableModel* m_tableModel;
+  ndn::Ptr<ContactStorage> m_contactStorage;
+};
+
+#endif // PROFILEEDITOR_H
