diff --git a/client/constants/Pattern.ts b/client/constants/Pattern.ts
index e8e6681..ebf74a9 100644
--- a/client/constants/Pattern.ts
+++ b/client/constants/Pattern.ts
@@ -5,6 +5,7 @@ enum Pattern {
ButtonWithIcon = 'Button with icon',
Card = 'Card',
Centering = 'Centering',
+ CircularNavigation = 'Circular navigation',
DockedAtCorner = 'Docked at corner',
DotLeader = 'Dot leader',
DotNavigation = 'Dot navigation',
diff --git a/client/layouts/Layout.tsx b/client/layouts/Layout.tsx
index c831f3a..073692a 100644
--- a/client/layouts/Layout.tsx
+++ b/client/layouts/Layout.tsx
@@ -28,10 +28,31 @@ this
expect(r).is(superFastWebsite);
expect(r).is(seoFriendly);
})
- .finally(() => {/* Give me 1 star */}) 🎉 /* https://github.com/phuoc-ng/csslayout */
`}
/>
+
);
};
diff --git a/client/pages/ExplorePage.tsx b/client/pages/ExplorePage.tsx
index c93b560..178ab28 100644
--- a/client/pages/ExplorePage.tsx
+++ b/client/pages/ExplorePage.tsx
@@ -89,6 +89,7 @@ const ExplorePage = () => {
+
diff --git a/client/pages/HomePage.tsx b/client/pages/HomePage.tsx
index 935fba9..5aa37b7 100644
--- a/client/pages/HomePage.tsx
+++ b/client/pages/HomePage.tsx
@@ -201,6 +201,7 @@ const HomePage = () => {
+
diff --git a/client/patterns/circular-navigation/Cover.tsx b/client/patterns/circular-navigation/Cover.tsx
new file mode 100644
index 0000000..f54f869
--- /dev/null
+++ b/client/patterns/circular-navigation/Cover.tsx
@@ -0,0 +1,106 @@
+import React from 'react';
+
+import Frame from '../../placeholders/Frame';
+
+const Cover: React.FC<{}> = () => {
+ return (
+
+
+
+ );
+};
+
+export default Cover;
diff --git a/client/patterns/circular-navigation/Details.tsx b/client/patterns/circular-navigation/Details.tsx
new file mode 100644
index 0000000..2066628
--- /dev/null
+++ b/client/patterns/circular-navigation/Details.tsx
@@ -0,0 +1,131 @@
+import React from 'react';
+
+import DetailsLayout from '../../layouts/DetailsLayout';
+import BrowserFrame from '../../placeholders/BrowserFrame';
+import Square from '../../placeholders/Square';
+
+interface CircularItemProps {
+ degree: number;
+}
+
+const CircularItem: React.FC = ({ degree, children }) => {
+ return (
+
+ );
+};
+
+const Details: React.FC<{}> = () => {
+ const numItems = 6;
+
+ return (
+
+
+
+
+
+
+
+ {
+ Array(numItems).fill(0).map((_, i) => {
+ return (
+
{i + 1}
+ );
+ })
+ }
+
+
+ )}
+ source={`
+
+
+ ...
+
+
+
+
+
+ ...
+
+`}
+ />
+
+
+ );
+};
+
+export default Details;
diff --git a/public/sitemap.xml b/public/sitemap.xml
index 063a222..15bc30c 100644
--- a/public/sitemap.xml
+++ b/public/sitemap.xml
@@ -11,6 +11,7 @@
https://csslayout.io/patterns/button-with-icon
https://csslayout.io/patterns/card
https://csslayout.io/patterns/centering
+ https://csslayout.io/patterns/circular-navigation
https://csslayout.io/patterns/docked-at-corner
https://csslayout.io/patterns/dot-leader
https://csslayout.io/patterns/dot-navigation