Skip to content

Commit 9e1c3b7

Browse files
Merge pull request #1 from Deri-Kurniawan/development
Merge branch 'development'
2 parents 37362e9 + e1855cc commit 9e1c3b7

File tree

101 files changed

+16002
-1927
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+16002
-1927
lines changed

.eslintrc.cjs

+1-5
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
11
module.exports = {
22
root: true,
33
env: { browser: true, es2020: true },
4-
extends: [
5-
'eslint:recommended',
6-
'plugin:@typescript-eslint/recommended',
7-
'plugin:react-hooks/recommended',
8-
],
4+
extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'plugin:react-hooks/recommended', 'plugin:storybook/recommended'],
95
ignorePatterns: ['dist', '.eslintrc.cjs'],
106
parser: '@typescript-eslint/parser',
117
plugins: ['react-refresh'],

.gitignore

+3-1
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,6 @@ dist-ssr
2121
*.ntvs*
2222
*.njsproj
2323
*.sln
24-
*.sw?
24+
*.sw?
25+
*storybook.log
26+
.vercel

.storybook/main.ts

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import type { StorybookConfig } from "@storybook/react-vite";
2+
3+
const config: StorybookConfig = {
4+
stories: ["../src/**/*.mdx", "../src/**/*.stories.@(js|jsx|mjs|ts|tsx)"],
5+
6+
addons: [
7+
"@storybook/addon-links",
8+
"@storybook/addon-essentials",
9+
"@chromatic-com/storybook",
10+
"@storybook/addon-interactions",
11+
],
12+
13+
framework: {
14+
name: "@storybook/react-vite",
15+
options: {},
16+
},
17+
18+
docs: {},
19+
20+
typescript: {
21+
reactDocgen: "react-docgen-typescript"
22+
}
23+
};
24+
export default config;

.storybook/preview.ts

+66
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
import type { Preview } from "@storybook/react";
2+
import "../src/index.css";
3+
4+
const preview: Preview = {
5+
parameters: {
6+
controls: {
7+
matchers: {
8+
color: /(background|color)$/i,
9+
date: /Date$/i,
10+
},
11+
},
12+
backgrounds: {
13+
default: "light",
14+
values: [
15+
{
16+
name: "light",
17+
value: "#ffffff",
18+
},
19+
{
20+
name: "dark",
21+
value: "#333333",
22+
},
23+
{
24+
name: "blue",
25+
value: "#00aced",
26+
},
27+
],
28+
},
29+
viewport: {
30+
viewports: {
31+
desktop: {
32+
name: "Desktop",
33+
styles: {
34+
width: "1440px",
35+
height: "100%",
36+
},
37+
},
38+
tablet: {
39+
name: "Tablet",
40+
styles: {
41+
width: "768px",
42+
height: "1024px",
43+
},
44+
},
45+
mobile: {
46+
name: "Mobile",
47+
styles: {
48+
width: "430px",
49+
height: "1024px",
50+
},
51+
},
52+
mobileSmall: {
53+
name: "Mobile Small",
54+
styles: {
55+
width: "320px",
56+
height: "1024px",
57+
},
58+
},
59+
},
60+
defaultViewport: "responsive",
61+
},
62+
},
63+
tags: ["autodocs"],
64+
};
65+
66+
export default preview;

README.md

+39-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,41 @@
1-
# Positivus
1+
# Positivus Landing Page
22

3-
Slicing the Positivus Landing Page Design from [@olgaaverchenko](https://www.figma.com/@olgaaverchenko) on figma's [design](https://www.figma.com/community/file/1230604708032389430) community into a web application using React.js.
3+
![Tech Stack](https://skillicons.dev/icons?i=html,css,react,typescript,vite,jest,storybook)
44

5-
![Positivus Mockup](https://s3-alpha.figma.com/hub/file/4965779768/a5850287-df02-43a7-89cd-ee68469bb109-cover.png)
5+
This project involves slicing the Positivus Landing Page design from [@olgaaverchenko](https://www.figma.com/@olgaaverchenko) on Figma's [community design](https://www.figma.com/community/file/1230604708032389430) into a fully functional web application using **React.js** and **CSS3**.
6+
7+
![Positivus Mockup](/public/mockup.webp)
8+
9+
## Tech Stack
10+
11+
- **HTML5**: Structuring the content of the webpage.
12+
- **CSS3**: Styling and layout, including responsiveness and animations.
13+
- **React.js**: Building dynamic and reusable UI components.
14+
- **TypeScript**: Enhancing JavaScript with static typing for improved developer experience.
15+
- **Vite**: Fast build tool and development server for modern web projects.
16+
- **Storybook**: Developing and documenting UI components in isolation.
17+
- **Chromatic**: Automated visual testing to ensure UI consistency across changes.
18+
- **Jest**: Unit testing framework to ensure component functionality and integrity.
19+
20+
## Features
21+
22+
For developing, documenting, and testing UI components, we utilized:
23+
24+
- **Storybook**: To build and showcase components in isolation.
25+
- **Chromatic**: For automated visual regression testing to maintain UI consistency.
26+
- **Jest**: For unit testing to ensure the components work as expected.
27+
28+
## Live Demo
29+
30+
Experience the live version of the Positivus Landing Page here:
31+
[https://positivus.deri.my.id](https://positivus.deri.my.id)
32+
33+
## Component Library
34+
35+
Explore the component library developed with Storybook and tested with Chromatic:
36+
[https://development--66aea6f354f5805b7d1f6c3f.chromatic.com](https://development--66aea6f354f5805b7d1f6c3f.chromatic.com)
37+
38+
## More Information
39+
40+
For more details about this project and others, visit my portfolio website:
41+
[https://www.deri.my.id](https://www.deri.my.id)

chromatic.config.json

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"onlyChanged": true,
3+
"projectId": "Project:66aea6f354f5805b7d1f6c3f",
4+
"zip": true
5+
}

index.html

+19-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!DOCTYPE html>
1+
<!doctype html>
22
<html lang="en">
33
<head>
44
<meta charset="UTF-8" />
@@ -13,6 +13,24 @@
1313
/>
1414

1515
<title>Positivus</title>
16+
<meta
17+
name="description"
18+
content="Positivus is a landing page designed by Olga on Figma Community and developed by Deri Kurniawan"
19+
/>
20+
<meta
21+
name="keywords"
22+
content="Positivus, Deri Kurniawan, Olga, Figma Community, Landing Page, React, TypeScript, CSS Modules"
23+
/>
24+
<meta name="author" content="Deri Kurniawan" />
25+
<meta name="robots" content="index, follow" />
26+
<meta property="og:image" content="/mockup.webp" />
27+
<meta property="og:title" content="Positivus" />
28+
<meta
29+
property="og:description"
30+
content="Positivus is a landing page designed by Olga on Figma Community and developed by Deri Kurniawan"
31+
/>
32+
<meta property="og:url" content="https://positivus.deri.my.id" />
33+
<meta property="og:type" content="website" />
1634
</head>
1735
<body>
1836
<div id="root"></div>

0 commit comments

Comments
 (0)