Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit c42bec7

Browse files
author
visualdennis
committed
four cards newbie
1 parent 7312e03 commit c42bec7

File tree

17 files changed

+517
-2
lines changed

17 files changed

+517
-2
lines changed

β€Žsrc/App.jsβ€Ž

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import AdviceGenerator from './components/junior/adviceGenerator/AdviceGenerator
1212
import Pages from './pages/Pages';
1313
import ParfumCard from './components/newbie/parfumCard/ParfumCard';
1414
import Faq from './components/newbie/Faq/Faq';
15+
import FourCards from './components/newbie/FourCards/FourCards';
1516

1617
const App = () => {
1718

@@ -32,12 +33,13 @@ AOS.init({
3233
<Route path='/components/advice-gen' element={<AdviceGenerator></AdviceGenerator>}/>
3334
<Route path='/components/perfume-card' element={<ParfumCard></ParfumCard>}/>
3435
<Route path='/components/faq' element={<Faq></Faq>}/>
36+
<Route path='/components/four-cards' element={<FourCards></FourCards>}/>
3537

3638
{/* Pages */}
3739
<Route path='/pages' element={<Pages></Pages>}/>
3840

3941
{/* Working on currently */}
40-
{/* <Route path='/build' element={<Faq></Faq>}/> */}
42+
{/* <Route path='/build' element={<FourCards></FourCards>}/> */}
4143
</Routes>
4244
</Router>
4345
</div>

β€Žsrc/components/data.jsβ€Ž

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,14 @@ export const componentCardData = [
3434
category:"newbie",
3535
type: "component",
3636
link:"/components/faq",
37-
}
37+
},
38+
{
39+
id:"5",
40+
title: "Four card feature section",
41+
desc: "Multi-column and responsive layouts with CSS Flexbox",
42+
img: "https://res.cloudinary.com/dz209s6jk/image/upload/f_auto,q_auto,w_700/Challenges/a3b5gbgtfbtiqrdawpwp.jpg",
43+
category:"newbie",
44+
type: "component",
45+
link:"/components/four-cards",
46+
},
3847
]
Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;400;600&display=swap');
2+
3+
/* ## Colors
4+
5+
### Primary
6+
7+
- Red: hsl(0, 78%, 62%)
8+
- Cyan: hsl(180, 62%, 55%)
9+
- Orange: hsl(34, 97%, 64%)
10+
- Blue: hsl(212, 86%, 64%)
11+
12+
### Neutral
13+
14+
- Very Dark Blue: hsl(234, 12%, 34%)
15+
- Grayish Blue: hsl(229, 6%, 66%)
16+
- Very Light Gray: hsl(0, 0%, 98%)
17+
18+
19+
### Fonts
20+
21+
- Family: [Poppins](https://fonts.google.com/specimen/Poppins)
22+
- Weights: 200, 400, 600
23+
*/
24+
25+
.fourCards {
26+
min-height: 100vh;
27+
font-family: 'Poppins', sans-serif;
28+
padding: 80px 20px;
29+
background-color: hsl(0, 0%, 98%);
30+
}
31+
32+
.fourCards-title {
33+
font-size: 24px;
34+
font-weight: 200;
35+
text-align: center;
36+
}
37+
38+
.fourCards-title:last-of-type {
39+
font-weight: 600;
40+
color: hsl(234, 12%, 34%);
41+
}
42+
43+
.fourCards-desc {
44+
margin: 20px 0px;
45+
margin-bottom: 40px;
46+
text-align: center;
47+
font-size: 14px;
48+
color: hsl(229, 6%, 66%);
49+
max-width: 400px;
50+
}
51+
52+
.fourCards-cards-container {
53+
display: flex;
54+
flex-direction: column;
55+
align-items: center;
56+
gap: 20px;
57+
}
58+
59+
.fourCards-card-item {
60+
padding: 20px;
61+
display: flex;
62+
flex-direction: column;
63+
/* justify-content: center; */
64+
align-items: flex-start;
65+
border-radius: 10px;
66+
box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
67+
max-width: 350px;
68+
}
69+
70+
.fourCards-cyan {
71+
border-top: 4px solid hsl(180, 62%, 55%);
72+
}
73+
.fourCards-red {
74+
border-top: 4px solid hsl(0, 78%, 62%);
75+
}
76+
.fourCards-orange {
77+
border-top: 4px solid hsl(34, 97%, 64%);
78+
}
79+
.fourCards-blue {
80+
border-top: 4px solid hsl(212, 86%, 64%);
81+
}
82+
83+
.fourCards-card-item-title {
84+
font-size: 18px;
85+
font-weight: 600;
86+
color: hsl(234, 12%, 34%);
87+
}
88+
89+
.fourCards-card-item-desc {
90+
font-weight: 400;
91+
color: hsl(229, 6%, 66%);
92+
font-size: 14px;
93+
line-height: 1.5;
94+
margin: 10px 0px;
95+
}
96+
97+
.fourCards-card-item-img {
98+
align-self: flex-end;
99+
}
100+
101+
.fourCards-cards-center {
102+
display: flex;
103+
flex-direction: column;
104+
gap: 20px;
105+
}
106+
107+
@media only screen and (min-width: 700px) {
108+
.fourCards-cards-container {
109+
flex-direction: row;
110+
}
111+
112+
.fourCards {
113+
display: flex;
114+
flex-direction: column;
115+
align-items: center;
116+
}
117+
}
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
import React from 'react'
2+
import './FourCards.css'
3+
4+
import calculator from '../FourCards/assets/four-card-feature-section-master/images/icon-calculator.svg'
5+
import karma from '../FourCards/assets/four-card-feature-section-master/images/icon-karma.svg'
6+
import supervisor from '../FourCards/assets/four-card-feature-section-master/images/icon-supervisor.svg'
7+
import teambuilder from '../FourCards/assets/four-card-feature-section-master/images/icon-team-builder.svg'
8+
9+
const FourCards = () => {
10+
11+
const card = [
12+
{
13+
title: "Supervisor",
14+
desc: "Monitors activity to identify project roadblocks",
15+
img: supervisor,
16+
},
17+
{
18+
title: "Team Builder",
19+
desc: "Scans our talent network to create the optimal team for your project",
20+
img: teambuilder,
21+
},
22+
{
23+
title: "Karma",
24+
desc: "Regularly evaluates our talent to ensure quality",
25+
img: karma,
26+
},
27+
{
28+
title: "Calculator",
29+
desc: "Uses data from past projects to provide better delivery estimates",
30+
img: calculator,
31+
},
32+
]
33+
34+
35+
return (
36+
<div className='fourCards'>
37+
<h1 className="fourCards-title">
38+
Reliable, efficient delivery
39+
</h1>
40+
<h1 className="fourCards-title">
41+
Powered by Technology
42+
</h1>
43+
44+
<p className="fourCards-desc">
45+
Our Artificial Intelligence powered tools use millions of project data points
46+
to ensure that your project is successful
47+
</p>
48+
<div className="fourCards-cards-container">
49+
<div className="fourCards-cards-left">
50+
<div className="fourCards-card-item fourCards-cyan">
51+
<div className="fourCards-card-item-title">{card[0].title}</div>
52+
<div className="fourCards-card-item-desc">{card[0].desc}</div>
53+
<div className="fourCards-card-item-img">
54+
<img src={card[0].img} alt=""/>
55+
</div>
56+
</div>
57+
</div>
58+
<div className="fourCards-cards-center">
59+
<div className="fourCards-card-item fourCards-red">
60+
<div className="fourCards-card-item-title">{card[1].title}</div>
61+
<div className="fourCards-card-item-desc">{card[1].desc}</div>
62+
<div className="fourCards-card-item-img">
63+
<img src={card[1].img} alt=""/>
64+
</div>
65+
</div>
66+
<div className="fourCards-card-item fourCards-orange">
67+
<div className="fourCards-card-item-title">{card[2].title}</div>
68+
<div className="fourCards-card-item-desc">{card[2].desc}</div>
69+
<div className="fourCards-card-item-img">
70+
<img src={card[2].img} alt=""/>
71+
</div>
72+
</div>
73+
</div>
74+
<div className="fourCards-cards-right">
75+
<div className="fourCards-card-item fourCards-blue">
76+
<div className="fourCards-card-item-title">{card[3].title}</div>
77+
<div className="fourCards-card-item-desc">{card[3].desc}</div>
78+
<div className="fourCards-card-item-img">
79+
<img src={card[3].img} alt=""/>
80+
</div>
81+
</div>
82+
</div>
83+
</div>
84+
</div>
85+
)
86+
}
87+
88+
export default FourCards
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Avoid accidental Sketch file upload
2+
###############################################
3+
## Please do not remove line 5 - thanks! πŸ™‚ ##
4+
###############################################
5+
*.sketch
6+
7+
# Avoid accidental XD or Figma upload if you convert the design file
8+
#######################################################
9+
## Please do not remove lines 11 and 12 - thanks! πŸ™‚ ##
10+
#######################################################
11+
*.xd
12+
*.fig
13+
14+
# Avoid your project being littered with annoying .DS_Store files!
15+
.DS_Store
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
# Frontend Mentor - Four card feature section solution
2+
3+
This is a solution to the [Four card feature section challenge on Frontend Mentor](https://www.frontendmentor.io/challenges/four-card-feature-section-weK1eFYK). Frontend Mentor challenges help you improve your coding skills by building realistic projects.
4+
5+
## Table of contents
6+
7+
- [Overview](#overview)
8+
- [The challenge](#the-challenge)
9+
- [Screenshot](#screenshot)
10+
- [Links](#links)
11+
- [My process](#my-process)
12+
- [Built with](#built-with)
13+
- [What I learned](#what-i-learned)
14+
- [Continued development](#continued-development)
15+
- [Useful resources](#useful-resources)
16+
- [Author](#author)
17+
- [Acknowledgments](#acknowledgments)
18+
19+
**Note: Delete this note and update the table of contents based on what sections you keep.**
20+
21+
## Overview
22+
23+
### The challenge
24+
25+
Users should be able to:
26+
27+
- View the optimal layout for the site depending on their device's screen size
28+
29+
### Screenshot
30+
31+
![](./screenshot.jpg)
32+
33+
Add a screenshot of your solution. The easiest way to do this is to use Firefox to view your project, right-click the page and select "Take a Screenshot". You can choose either a full-height screenshot or a cropped one based on how long the page is. If it's very long, it might be best to crop it.
34+
35+
Alternatively, you can use a tool like [FireShot](https://getfireshot.com/) to take the screenshot. FireShot has a free option, so you don't need to purchase it.
36+
37+
Then crop/optimize/edit your image however you like, add it to your project, and update the file path in the image above.
38+
39+
**Note: Delete this note and the paragraphs above when you add your screenshot. If you prefer not to add a screenshot, feel free to remove this entire section.**
40+
41+
### Links
42+
43+
- Solution URL: [Add solution URL here](https://your-solution-url.com)
44+
- Live Site URL: [Add live site URL here](https://your-live-site-url.com)
45+
46+
## My process
47+
48+
### Built with
49+
50+
- Semantic HTML5 markup
51+
- CSS custom properties
52+
- Flexbox
53+
- CSS Grid
54+
- Mobile-first workflow
55+
- [React](https://reactjs.org/) - JS library
56+
- [Next.js](https://nextjs.org/) - React framework
57+
- [Styled Components](https://styled-components.com/) - For styles
58+
59+
**Note: These are just examples. Delete this note and replace the list above with your own choices**
60+
61+
### What I learned
62+
63+
Use this section to recap over some of your major learnings while working through this project. Writing these out and providing code samples of areas you want to highlight is a great way to reinforce your own knowledge.
64+
65+
To see how you can add code snippets, see below:
66+
67+
```html
68+
<h1>Some HTML code I'm proud of</h1>
69+
```
70+
```css
71+
.proud-of-this-css {
72+
color: papayawhip;
73+
}
74+
```
75+
```js
76+
const proudOfThisFunc = () => {
77+
console.log('πŸŽ‰')
78+
}
79+
```
80+
81+
If you want more help with writing markdown, we'd recommend checking out [The Markdown Guide](https://www.markdownguide.org/) to learn more.
82+
83+
**Note: Delete this note and the content within this section and replace with your own learnings.**
84+
85+
### Continued development
86+
87+
Use this section to outline areas that you want to continue focusing on in future projects. These could be concepts you're still not completely comfortable with or techniques you found useful that you want to refine and perfect.
88+
89+
**Note: Delete this note and the content within this section and replace with your own plans for continued development.**
90+
91+
### Useful resources
92+
93+
- [Example resource 1](https://www.example.com) - This helped me for XYZ reason. I really liked this pattern and will use it going forward.
94+
- [Example resource 2](https://www.example.com) - This is an amazing article which helped me finally understand XYZ. I'd recommend it to anyone still learning this concept.
95+
96+
**Note: Delete this note and replace the list above with resources that helped you during the challenge. These could come in handy for anyone viewing your solution or for yourself when you look back on this project in the future.**
97+
98+
## Author
99+
100+
- Website - [Add your name here](https://www.your-site.com)
101+
- Frontend Mentor - [@yourusername](https://www.frontendmentor.io/profile/yourusername)
102+
- Twitter - [@yourusername](https://www.twitter.com/yourusername)
103+
104+
**Note: Delete this note and add/remove/edit lines above based on what links you'd like to share.**
105+
106+
## Acknowledgments
107+
108+
This is where you can give a hat tip to anyone who helped you out on this project. Perhaps you worked in a team or got some inspiration from someone else's solution. This is the perfect place to give them some credit.
109+
110+
**Note: Delete this note and edit this section's content as necessary. If you completed this challenge by yourself, feel free to delete this section entirely.**

0 commit comments

Comments
(0)

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /