diff --git a/quark-shell.xcodeproj/project.pbxproj b/quark-shell.xcodeproj/project.pbxproj
index 5439563..5da7c5a 100644
--- a/quark-shell.xcodeproj/project.pbxproj
+++ b/quark-shell.xcodeproj/project.pbxproj
@@ -483,7 +483,7 @@
 				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
 				GCC_WARN_UNUSED_FUNCTION = YES;
 				GCC_WARN_UNUSED_VARIABLE = YES;
-				MACOSX_DEPLOYMENT_TARGET = 10.9;
+				MACOSX_DEPLOYMENT_TARGET = 10.10;
 				ONLY_ACTIVE_ARCH = YES;
 				SDKROOT = macosx;
 			};
@@ -516,7 +516,7 @@
 				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
 				GCC_WARN_UNUSED_FUNCTION = YES;
 				GCC_WARN_UNUSED_VARIABLE = YES;
-				MACOSX_DEPLOYMENT_TARGET = 10.9;
+				MACOSX_DEPLOYMENT_TARGET = 10.10;
 				SDKROOT = macosx;
 			};
 			name = Release;
diff --git a/quark-shell/Base.lproj/MainMenu.xib b/quark-shell/Base.lproj/MainMenu.xib
index 40079cd..171b3a1 100644
--- a/quark-shell/Base.lproj/MainMenu.xib
+++ b/quark-shell/Base.lproj/MainMenu.xib
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="6250" systemVersion="14B25" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="6254" systemVersion="14B25" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
     <dependencies>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="6250"/>
-        <plugIn identifier="com.apple.WebKitIBPlugin" version="6250"/>
+        <deployment identifier="macosx"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="6254"/>
     </dependencies>
     <objects>
         <customObject id="-2" userLabel="File's Owner" customClass="NSApplication">
@@ -14,7 +14,6 @@
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
         <customObject id="Voe-Tx-rLC" customClass="QSHAppDelegate">
             <connections>
-                <outlet property="webView" destination="kp8-f9-tLw" id="5cx-jf-k0f"/>
                 <outlet property="window" destination="9CT-7c-xhj" id="KBM-Ih-ApP"/>
             </connections>
         </customObject>
@@ -26,14 +25,6 @@
             <view key="contentView" id="K10-CQ-J3N" customClass="QSHWindowBorderView">
                 <rect key="frame" x="0.0" y="0.0" width="320" height="280"/>
                 <autoresizingMask key="autoresizingMask"/>
-                <subviews>
-                    <webView fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="kp8-f9-tLw">
-                        <rect key="frame" x="0.0" y="0.0" width="320" height="270"/>
-                        <webPreferences key="preferences" defaultFontSize="12" defaultFixedFontSize="12">
-                            <nil key="identifier"/>
-                        </webPreferences>
-                    </webView>
-                </subviews>
             </view>
         </window>
         <menu title="Main Menu" systemMenu="main" id="tdM-1d-aZL">
diff --git a/quark-shell/QSHAppDelegate.m b/quark-shell/QSHAppDelegate.m
index 2e9bbe0..35bbf9f 100644
--- a/quark-shell/QSHAppDelegate.m
+++ b/quark-shell/QSHAppDelegate.m
@@ -7,39 +7,35 @@
 //
 
 #import "QSHAppDelegate.h"
-#import "QSHWebViewDelegate.h"
 #import "QSHStatusItemView.h"
 #import "NSWindow+Fade.h"
 
-@interface WebPreferences (WebPreferencesPrivate)
+@interface WKPreferences (WKPrivate)
 
-- (void)_setLocalStorageDatabasePath:(NSString *)path;
-- (void)setLocalStorageEnabled:(BOOL)localStorageEnabled;
+@property (nonatomic, setter=_setDeveloperExtrasEnabled:) BOOL _developerExtrasEnabled;
 
 @end
 
-
 @interface QSHAppDelegate () <NSWindowDelegate>
 
 @property (nonatomic) NSStatusItem *statusItem;
 @property (nonatomic) QSHStatusItemView *statusItemView;
-@property (nonatomic, weak) IBOutlet WebView *webView;
-@property (nonatomic) QSHWebViewDelegate *webViewDelegate;
+@property (nonatomic) WKWebView *webView;
 
 @end
 
 @implementation QSHAppDelegate
 
+#pragma mark - Initialize
+
 - (void)applicationDidFinishLaunching:(NSNotification *)aNotification
 {
-    // TODO: bundle identifier should be generated from manifest.json
-    WebPreferences *webPrefs = [WebPreferences standardPreferences];
-    NSString *bundleIdentifier = [[NSBundle mainBundle] infoDictionary][@"CFBundleIdentifier"];
-    NSString *applicationSupportFile = [@"~/Library/Application Support/" stringByExpandingTildeInPath];
-    NSString *savePath = [NSString pathWithComponents:@[applicationSupportFile, bundleIdentifier, @"LocalStorage"]];
-    [webPrefs _setLocalStorageDatabasePath:savePath];
-    [webPrefs setLocalStorageEnabled:YES];
+    [self setupStatusItemAndWindow];
+    [self setupWebView];
+}
 
+- (void)setupStatusItemAndWindow
+{
     NSStatusBar *bar = [NSStatusBar systemStatusBar];
 
     self.statusItem = [bar statusItemWithLength:NSSquareStatusItemLength];
@@ -65,24 +61,20 @@ - (void)applicationDidFinishLaunching:(NSNotification *)aNotification
     self.window.delegate = self;
     [self.window setOpaque:NO];
     [self.window setBackgroundColor:[NSColor clearColor]];
+}
+
+- (void)setupWebView
+{
+    self.webView = [[WKWebView alloc] initWithFrame:NSMakeRect(0, 5, 320, 260)];
+    self.webView.configuration.preferences._developerExtrasEnabled = YES;
+    [self.window.contentView addSubview:self.webView];
 
-    self.webView.wantsLayer = YES;
-    self.webView.layer.cornerRadius = 5;
-    self.webView.layer.masksToBounds = YES;
-    [self.webView setDrawsBackground:NO];
-
-    NSString *url = [[NSURL URLWithString:kIndexPath relativeToURL:[[NSBundle mainBundle] resourceURL]] absoluteString];
-    self.webView.mainFrameURL = url;
-
-    self.webViewDelegate = [[QSHWebViewDelegate alloc] init];
-    self.webViewDelegate.appDelegate = self;
-    self.webViewDelegate.statusItem = self.statusItem;
-    self.webViewDelegate.statusItemView = self.statusItemView;
-    self.webViewDelegate.webView = self.webView;
-    self.webView.frameLoadDelegate = self.webViewDelegate;
-    self.webView.UIDelegate = self.webViewDelegate;
+    NSURL *URL = [NSURL URLWithString:kIndexPath relativeToURL:[[NSBundle mainBundle] resourceURL]];
+    [self.webView loadRequest:[NSURLRequest requestWithURL:URL]];
 }
 
+#pragma mark -
+
 - (void)windowDidResignKey:(NSNotification *)notification
 {
     if (!self.pinned) {
diff --git a/quark-shell/QSHWindowBorderView.m b/quark-shell/QSHWindowBorderView.m
index 62d69cd..c681617 100644
--- a/quark-shell/QSHWindowBorderView.m
+++ b/quark-shell/QSHWindowBorderView.m
@@ -42,6 +42,17 @@ - (void)drawRect:(NSRect)dirtyRect
 
     [[NSColor controlColor] setFill];
     [roundedRectanglePath fill];
+
+    // fill bottom rect with white
+    NSRect bottomRect = NSMakeRect(0, 0, NSWidth(self.bounds), 10);
+    NSRect bottomInnerRect = NSInsetRect(bottomRect, roundedRectangleCornerRadius, roundedRectangleCornerRadius);
+    NSBezierPath *bottomPath = [NSBezierPath bezierPath];
+    [bottomPath appendBezierPathWithArcWithCenter:NSMakePoint(NSMinX(bottomInnerRect), NSMinY(bottomInnerRect)) radius: roundedRectangleCornerRadius startAngle:180 endAngle:270];
+    [bottomPath appendBezierPathWithArcWithCenter:NSMakePoint(NSMaxX(bottomInnerRect), NSMinY(bottomInnerRect)) radius: roundedRectangleCornerRadius startAngle:270 endAngle:360];
+    [bottomPath closePath];
+
+    [[NSColor whiteColor] setFill];
+    [bottomPath fill];
 }
 
 @end
diff --git a/sample/index.html b/sample/index.html
index 0e78cb2..d1015a8 100644
--- a/sample/index.html
+++ b/sample/index.html
@@ -4,7 +4,7 @@
   <title>Quark Shell</title>
   <style>
   html {
-    height: 100%;
+    height: 260px;
     width: 100%;
     overflow: hidden;
     background-color: white;
@@ -13,7 +13,7 @@
     height: 100%;
     width: 100%;
     margin: 0;
-    overflow: auto;
+    overflow: hidden;
     font-family: -apple-system-font, sans-serif;
   }
   h1 {
@@ -22,7 +22,7 @@
     font-weight: normal;
     color: #333;
     margin: 0;
-    padding: 12px 0 10px 0;
+    padding: 7px 0 10px 0;
     font-size: 16px;
     border-bottom: 1px solid #ccc;
   }
