diff --git a/client/App.tsx b/client/App.tsx
index 7e48bbf..c124daa 100644
--- a/client/App.tsx
+++ b/client/App.tsx
@@ -37,9 +37,8 @@ const App = () => {
-
-
-
+
+
diff --git a/client/Home.tsx b/client/Home.tsx
index 161903b..d95b9d5 100644
--- a/client/Home.tsx
+++ b/client/Home.tsx
@@ -91,6 +91,7 @@ const Home = () => {
+
diff --git a/client/constants/Pattern.ts b/client/constants/Pattern.ts
index 5d58adf..7bec69e 100644
--- a/client/constants/Pattern.ts
+++ b/client/constants/Pattern.ts
@@ -21,6 +21,7 @@ enum Pattern {
ProgressBar = 'Progress bar',
QuestionsAndAnswers = 'Questions and answers',
RadioSwitch = 'Radio switch',
+ Rating = 'Rating',
SameHeightColumns = 'Same height columns',
SearchBox = 'Search box',
Separator = 'Separator',
diff --git a/client/patterns/rating/Cover.tsx b/client/patterns/rating/Cover.tsx
new file mode 100644
index 0000000..d25d967
--- /dev/null
+++ b/client/patterns/rating/Cover.tsx
@@ -0,0 +1,36 @@
+import React from 'react';
+
+import Frame from '../../placeholders/Frame';
+
+const Cover: React.FC<{}> = () => {
+ return (
+
+
+
+ );
+};
+
+export default Cover;
diff --git a/client/patterns/rating/Details.tsx b/client/patterns/rating/Details.tsx
new file mode 100644
index 0000000..6f4ca6f
--- /dev/null
+++ b/client/patterns/rating/Details.tsx
@@ -0,0 +1,85 @@
+import React from 'react';
+
+import DetailsLayout from '../../layouts/DetailsLayout';
+import BrowserFrame from '../../placeholders/BrowserFrame';
+import Star from './Star';
+
+const Details: React.FC<{}> = () => {
+ return (
+
+
+ )}
+ source={`
+
+
+
+
+
+
+
+
+
+`}
+ />
+
+
+ );
+};
+
+export default Details;
diff --git a/client/patterns/rating/Star.tsx b/client/patterns/rating/Star.tsx
new file mode 100644
index 0000000..acae76c
--- /dev/null
+++ b/client/patterns/rating/Star.tsx
@@ -0,0 +1,17 @@
+import React from 'react';
+
+import './star.css';
+
+interface StarProps {
+ isActive: boolean;
+}
+
+const Star: React.FC = ({ isActive }) => {
+ return (
+
+ );
+};
+
+export default Star;
diff --git a/client/patterns/rating/star.css b/client/patterns/rating/star.css
new file mode 100644
index 0000000..d44bd5b
--- /dev/null
+++ b/client/patterns/rating/star.css
@@ -0,0 +1,26 @@
+.rating {
+ align-items: center;
+ display: flex;
+ font-size: 32px;
+ justify-content: center;
+ flex-direction: row-reverse;
+}
+
+.rating .star:hover, .rating .star:hover ~ .star {
+ color: transparent;
+}
+
+.rating .star:hover:before, .rating .star:hover ~ .star:before {
+ color: #00449e;
+ content: '\2605';
+ left: 0;
+ position: absolute;
+}
+
+.star {
+ background-color: transparent;
+ border: transparent;
+ margin: 0 2px;
+ padding: 0;
+ position: relative;
+}
diff --git a/client/placeholders/Frame.tsx b/client/placeholders/Frame.tsx
index 1437ddc..e789bff 100644
--- a/client/placeholders/Frame.tsx
+++ b/client/placeholders/Frame.tsx
@@ -3,8 +3,9 @@ import React from 'react';
const Frame: React.FC<{}> = ({ children }) => {
return (
https://csslayout.io/property-list
https://csslayout.io/questions-and-answers
https://csslayout.io/radio-switch
+ https://csslayout.io/rating
https://csslayout.io/same-height-columns
https://csslayout.io/search-box
https://csslayout.io/separator