;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [Tile],
+ }).compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(Tile);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it("should create a Tile", () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/tiles/tile.component.ts b/src/tiles/tile.component.ts
new file mode 100644
index 0000000000..45b895c8e3
--- /dev/null
+++ b/src/tiles/tile.component.ts
@@ -0,0 +1,27 @@
+import {
+ Component,
+ HostBinding
+} from "@angular/core";
+
+/**
+ * Build application's tiles using this component.
+ *
+ * ## Basic usage
+ *
+ * ```html
+ *
+ * tile content
+ *
+ * ```
+ *
+ * @export
+ * @class Tile
+ * @implements {OnInit}
+ */
+@Component({
+ selector: "ibm-tile",
+ template: ``
+})
+export class Tile {
+ @HostBinding("class") tileClass = "bx--tile";
+}
diff --git a/src/tiles/tiles.module.ts b/src/tiles/tiles.module.ts
new file mode 100644
index 0000000000..710eec72f6
--- /dev/null
+++ b/src/tiles/tiles.module.ts
@@ -0,0 +1,25 @@
+import { NgModule } from "@angular/core";
+import { CommonModule } from "@angular/common";
+import { TranslateModule } from "@ngx-translate/core";
+
+import { Tile } from "./tile.component";
+import { ClickableTile } from "./clickable-tile.component";
+
+export { Tile } from "./tile.component";
+export { ClickableTile } from "./clickable-tile.component";
+
+@NgModule({
+ declarations: [
+ Tile,
+ ClickableTile
+ ],
+ exports: [
+ Tile,
+ ClickableTile
+ ],
+ imports: [
+ CommonModule,
+ TranslateModule.forChild()
+ ]
+})
+export class TilesModule {}
diff --git a/src/tiles/tiles.stories.ts b/src/tiles/tiles.stories.ts
new file mode 100644
index 0000000000..8232dbbc4f
--- /dev/null
+++ b/src/tiles/tiles.stories.ts
@@ -0,0 +1,51 @@
+import { storiesOf, moduleMetadata } from "@storybook/angular";
+import { withKnobs } from "@storybook/addon-knobs/angular";
+
+import { TranslateModule } from "@ngx-translate/core";
+
+import { TilesModule } from "../";
+
+storiesOf("Tiles", module)
+ .addDecorator(
+ moduleMetadata({
+ imports: [
+ TilesModule,
+ TranslateModule.forRoot()
+ ]
+ })
+ )
+ .addDecorator(withKnobs)
+ .add("Basic", () => ({
+ template: `
+
+ tile content goes here...
+
+ `
+ }))
+ .add("Multiple", () => ({
+ template: `
+
+
+ Tile 1
+
+
+ Tile 2
+
+
+ Tile 3
+
+
+ `
+ }))
+ .add("Clickable", () => ({
+ template: `
+ Normal
+
+ clickable tile content goes here...
+
+ Disabled
+
+ clickable tile content goes here...
+
+ `
+ }));