1. First, we need fresh reactjs setup, and for that, we need to run below commands into out terminal, and also we should have latest node version installed on our system:
npx create-react-app my-awesome-project
cd my-awesome-project
npm start
2. Now we need to run below commands into our project terminal to get bootstrap and related modules into our reactjs application:
npm install [email protected] --save
npm start //For start project again
3. Finally for the main output, we need to add below code into our my-awesome-project/src/App.js file or if you have fresh setup then you can replace my-awesome-project/src/App.js file code with below code:
import React from 'react';
import './App.css';
import 'bootstrap/dist/css/bootstrap.min.css';
function App() {
return (
<div>
<div class="container bootstrap snippets bootdey">
<div class="row">
<div class="col-md-12">
<h1><strong>Microsoft Metro Tiles with bootstrap</strong></h1>
</div>
</div>
<div class="row">
<div class="col-sm-4">
<div class="tile purple">
<h3 class="title">Purple Tile</h3>
<p>Hello Purple, this is a colored tile.</p>
</div>
</div>
<div class="col-sm-4">
<div class="tile red">
<h3 class="title">Red Tile</h3>
<p>Hello Red, this is a colored tile.</p>
</div>
</div>
<div class="col-sm-4">
<div class="tile orange">
<h3 class="title">Orange Tile</h3>
<p>Hello Orange, this is a colored tile.</p>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-4">
<div class="tile green">
<h3 class="title">Green Tile</h3>
<p>Hello Green, this is a colored tile.</p>
</div>
</div>
<div class="col-sm-4">
<div class="tile blue">
<h3 class="title">Blue Tile</h3>
<p>Hello Blue, this is a colored tile.</p>
</div>
</div>
</div>
</div>
</div>
);
}
export default App;
4. Now we need to add below code into our my-awesome-project/src/App.css file :
p, span, a, ul, li, button {
font-family: inherit;
font-size: inherit;
font-weight: inherit;
line-height: inherit;
}
strong {
font-weight: 600;
}
h1, h2, h3, h4, h5, h6 {
font-family: 'Open Sans', "Segoe UI", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serify;
line-height: 1.5em;
font-weight: 300;
}
strong {
font-weight: 400;
}
.tile {
width: 100%;
display: inline-block;
box-sizing: border-box;
background: #fff;
padding: 20px;
margin-bottom: 30px;
}
.title {
margin-top: 0px;
}
.purple, .blue, .red, .orange, .green {
color: #fff;
}
.purple {
background: #5133AB;
}
.purple:hover {
background: darken(#5133AB, 10%);
}
.red { background: #AC193D;}
.red:hover {
background: darken(#AC193D, 10%);
}
.green {background: #00A600;}
.green:hover {
background: darken(#00A600, 10%);
}
.blue { background: #2672EC;}
.blue:hover {
background: darken(#2672EC, 10%);
}
.orange { background: #DC572E;}
.orange:hover {
background: darken(#DC572E, 10%);
}