diff --git a/client/App.jsx b/client/App.jsx
index 9d47369..709fd87 100644
--- a/client/App.jsx
+++ b/client/App.jsx
@@ -3,6 +3,7 @@ import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import Home from './Home';
import Centering from './layouts/Centering';
+import Sidebar from './layouts/Sidebar';
import StickyFooter from './layouts/StickyFooter';
import StickyHeader from './layouts/StickyHeader';
@@ -12,6 +13,7 @@ const App = () => {
+
diff --git a/client/Home.jsx b/client/Home.jsx
index 1c4b21c..9deaeea 100644
--- a/client/Home.jsx
+++ b/client/Home.jsx
@@ -2,6 +2,7 @@ import React from 'react';
import { Link } from 'react-router-dom';
import CenterCover from './covers/CenterCover';
+import SidebarCover from './covers/SidebarCover';
import StickyFooterCover from './covers/StickyFooterCover';
import StickyHeaderCover from './covers/StickyHeaderCover';
import Layout from './Layout';
@@ -30,6 +31,12 @@ const Home = () => {
Layouts
+
+
+
+
Sidebar
+
+
diff --git a/client/Layout.jsx b/client/Layout.jsx
index 67c38b0..c7714f8 100644
--- a/client/Layout.jsx
+++ b/client/Layout.jsx
@@ -11,22 +11,20 @@ const Layout = ({ children }) => {
{children}
-
+
Other cool things
-
+
-
FormValidation
- - ∙
-
BlurPage
- - ∙
-
React PDF Viewer
diff --git a/client/covers/SidebarCover.jsx b/client/covers/SidebarCover.jsx
new file mode 100644
index 0000000..dbdbf89
--- /dev/null
+++ b/client/covers/SidebarCover.jsx
@@ -0,0 +1,25 @@
+import React from 'react';
+
+import Frame from '../placeholders/Frame';
+import Line from '../placeholders/Line';
+
+const SidebarCover = () => {
+ return (
+
+
+
+ );
+};
+
+export default SidebarCover;
diff --git a/client/helpers/random.js b/client/helpers/random.js
new file mode 100644
index 0000000..72658a7
--- /dev/null
+++ b/client/helpers/random.js
@@ -0,0 +1,2 @@
+const random = (min, max) => min + Math.round(Math.random() * (max - min));
+export default random;
diff --git a/client/helpers/randomFromArray.js b/client/helpers/randomFromArray.js
new file mode 100644
index 0000000..1ba00fd
--- /dev/null
+++ b/client/helpers/randomFromArray.js
@@ -0,0 +1,2 @@
+const randomFromArray = (array) => array[Math.floor(Math.random() * array.length)];
+export default randomFromArray;
diff --git a/client/helpers/shuffe.js b/client/helpers/shuffe.js
new file mode 100644
index 0000000..4572f5d
--- /dev/null
+++ b/client/helpers/shuffe.js
@@ -0,0 +1,6 @@
+const shuffe = (array) => {
+ array.sort(() => Math.random() - 0.5);
+ return array;
+};
+
+export default shuffe;
diff --git a/client/layouts/Sidebar.jsx b/client/layouts/Sidebar.jsx
new file mode 100644
index 0000000..2adbe24
--- /dev/null
+++ b/client/layouts/Sidebar.jsx
@@ -0,0 +1,57 @@
+import React from 'react';
+
+import DetailsLayout from '../DetailsLayout';
+import BrowserFrame from '../placeholders/BrowserFrame';
+import Block from '../placeholders/Block';
+import SampleCode from '../SampleCode';
+import useDocumentTitle from '../useDocumentTitle';
+
+const Sidebar = () => {
+ useDocumentTitle('CSS Layout ∙ Sidebar');
+
+ return (
+
+
Sidebar
+
+
+
+
+ }
+ source={
+
+
+
+
+
+
+ ...
+
+
+`}
+/>
+ }
+ />
+
+ );
+};
+
+export default Sidebar;
diff --git a/client/placeholders/Block.jsx b/client/placeholders/Block.jsx
new file mode 100644
index 0000000..f5e5b52
--- /dev/null
+++ b/client/placeholders/Block.jsx
@@ -0,0 +1,23 @@
+import React from 'react';
+
+import random from '../helpers/random';
+import Rectangle from './Rectangle';
+
+const Block = ({ numberOfBlocks }) => {
+ return (
+
+ {
+ Array(numberOfBlocks).fill(0).map((_, i) => {
+ const s = random(1, 5);
+ return (
+
+
+
+ );
+ })
+ }
+
+ );
+};
+
+export default Block;
diff --git a/client/placeholders/Line.jsx b/client/placeholders/Line.jsx
index 1386d8d..7d41c57 100644
--- a/client/placeholders/Line.jsx
+++ b/client/placeholders/Line.jsx
@@ -1,12 +1,10 @@
import React from 'react';
-const Line = ({ size }) => {
- const h = (size === 'medium' ? '2px' : '1px');
-
+const Line = () => {
return (
);
};
diff --git a/client/placeholders/Rectangle.jsx b/client/placeholders/Rectangle.jsx
new file mode 100644
index 0000000..6b3ba59
--- /dev/null
+++ b/client/placeholders/Rectangle.jsx
@@ -0,0 +1,12 @@
+import React from 'react';
+
+const Rectangle = ({ height }) => {
+ return (
+
+ );
+};
+
+export default Rectangle;