Skip to content

Chai ee Project 1 PTBC5#12

Open
Flashrob wants to merge 21 commits intorocketacademy:mainfrom
LoyChaiEe:main
Open

Chai ee Project 1 PTBC5#12
Flashrob wants to merge 21 commits intorocketacademy:mainfrom
LoyChaiEe:main

Conversation

@Flashrob
Copy link
Copy Markdown

No description provided.

Comment on lines +33 to +40
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Rubik+Mono+One&family=Share+Tech+Mono&display=swap"
rel="stylesheet"
/>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duplicate link tags

Comment on lines +45 to +53
<script
src="https://unpkg.com/react/umd/react.production.min.js"
crossorigin
></script>

<script
src="https://unpkg.com/react-dom/umd/react-dom.production.min.js"
crossorigin
></script>
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think you need to load react via a CDN script, if you are running this app on react already :)!

render() {
return (
<div className="App">
<header className="App-header">
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this header component is redundant if everything is in the header :)! Should remove this, as it is semantically not correct

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can also rewrite to main

Suggested change
<header className="App-header">
<main className="App-header">


import About from "./Components/About";
import Education from "./Components/Education";
import Menu from "./Components/Navbar";
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's call this Navbar, not Menu. Confusing

import Menu from "./Components/Navbar";
import Hero from "./Components/Hero";
import Project from "./Components/Project";
import Work from "./Components/WorkExpereince";
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
import Work from "./Components/WorkExpereince";
import WorkExperience from "./Components/WorkExperience";

Portfolio (Frontend)
</Card.Title>
<span
style={{ color: "magenta", fontSize: "max(0.8vw, 28px)" }}
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have I mentioned I don't like inline styles? :D

Comment on lines +18 to +23
if (isMobile) {
element = <Mobile />;
} else {
element = <PC />;
}
return element;
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

by the way, this kind of pattern reads nicer like so, if you ever want to use it again:

Suggested change
if (isMobile) {
element = <Mobile />;
} else {
element = <PC />;
}
return element;
return isMobile ? <Mobile /> : <PC />

<Row style={{}}>
<Col sm={3} style={{}}>
<Nav variant="pills" className="flex-column">
<Nav.Item>
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

use a map here, to make it less bothersome to write up all this repetitive code.

Comment on lines +11 to +15
const
expert = 85,
basics = 33,
intermediate = 50,
advanced = 70;
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Interesting syntax, first time seeing this.

Comment on lines +43 to +61
<ProgressBar style={{ height: "2.3vh" }}>
<ProgressBar
data-aos="zoom-in-right"
now={advanced}
label={"ADVANCED"}
className="advanced"
style={{ fontSize: "1.4vh", color: "black", fontWeight: "bold" }}
/>
</ProgressBar>
<label
style={{
fontSize: "max(1.5vw, 27px)",
fontWeight: "bold",
}}
>
HTML && CSS
</label>
<ProgressBar style={{ height: "2.3vh" }}>
<ProgressBar
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also very repetitive here, I think would be better to create some objects in an array detailing the dynamic datapoints and then using a map to generate the HTML.

@Flashrob
Copy link
Copy Markdown
Author

@LoyChaiEe here your code review

Comment on lines +163 to +170
<Nav.Item>
<Nav.Link
eventKey="first"
style={{ fontSize: "max(1.2vw, 20px)", fontWeight: "bold" }}
>
NTU(B.Eng)
</Nav.Link>
</Nav.Item>
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<Nav.Item>
<Nav.Link
eventKey="first"
style={{ fontSize: "max(1.2vw, 20px)", fontWeight: "bold" }}
>
NTU(B.Eng)
</Nav.Link>
</Nav.Item>
const tabItems = ["NTU(B.Eng)", ....]
{ tabItems.map((item, index) => (
<Nav.Item>
<Nav.Link
eventKey={index + item}
style={{ fontSize: "max(1.2vw, 20px)", fontWeight: "bold" }}
>
{item}
</Nav.Link>
</Nav.Item>
))}

fontWeight: "bold",
}}
>
React
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[{ label: "React", now: advanced }]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants