Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified portfolio/public/images/diapos/MLD.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified portfolio/public/images/diapos/usecase1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion portfolio/src/components/CubicMenu/CubicMenu.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ const CubicMenu = () => {

<div className="scene">
<div
className={`cube--small cube--green nav__cube
className={`cube--xs cube--green nav__cube
${isMenuOpen ? "cube--menu" : ""}`}
onClick={() => setMenuOpen(!isMenuOpen)}
>
Expand Down
2 changes: 1 addition & 1 deletion portfolio/src/components/CubicMenu/CubicMenu.scss
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

.nav {
position: absolute;
width: 100vw;
width: 97vw ;
height: 0;
padding: 10px;
padding-top: 30px;
Expand Down
2 changes: 1 addition & 1 deletion portfolio/src/components/Project/Cube/Cube.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ export default function Cube(props) {
}`}
id={`scene${id}`}
>
<div className="cube cube--flexible cube--green">
<div className="cube cube--responsive cube--green">
<div className="cube__front">
<img
className="cube__image"
Expand Down
31 changes: 17 additions & 14 deletions portfolio/src/components/Project/Cube/Cube.scss
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,6 @@
perspective: 500vw;
perspective-origin: -50% 0%;
pointer-events: none;
@include breakpoint_height(sm) {
@include breakpoint(md) {
pointer-events: auto;
width: 50vw;
height: calc(100vh - 200px);
}
}
&--grab {
&:hover {
cursor: url(../../../../public/images/cursors-grab.png), grab;
Expand Down Expand Up @@ -44,13 +37,6 @@
height: 60px;
display: none;
gap: 3px;

@include breakpoint_height(sm) {
@include breakpoint(md) {
display: flex;
}
}

button {
width: 50%;
height: 100%;
Expand All @@ -68,4 +54,21 @@
background-color: fade-out($color: $primary-color, $amount: 0.2);
}
}
}


@media screen and ( min-width: $md ){
.layout {
pointer-events: auto;
width: 50vw;
height: calc(100vh - 200px);
}
.buttons {
display: flex;
}
}

// when viewport width < $md and height < $sm ( mobile landscape mode )
@media screen and ( max-width: $md ) and ( max-height: $sm ) {

}
81 changes: 63 additions & 18 deletions portfolio/src/components/Project/Info/Info.scss
Original file line number Diff line number Diff line change
Expand Up @@ -8,29 +8,11 @@
line-height: 0.9em;
display: grid;
grid-template-rows: 1fr 100px 60px;

@include breakpoint_height(sm) {
@include breakpoint(md) {
font-size: 1.2em;
line-height: 1.2em;
border-right: thick double $primary-color;
}
}

&__description {
padding: 0 20px;
display: flex;
align-items: center;
justify-content: center;

@include breakpoint_height(sm) {
@include breakpoint(md) {
align-items: flex-start;
line-height: 1.5em;
font-size: 1.4em;
padding-top: 40%;
}
}
}

&__table {
Expand Down Expand Up @@ -78,4 +60,67 @@
}
}
}
}

// When viewport width > md
@media screen and ( min-width: $md ) {
// Increase font size and middle line.
.info{
font-size: 1em;
line-height: 1em;
border-right: thick double $primary-color;

// Replace description table and increse font size.
&__description {
line-height: 1.5em;
font-size: 1.4em;
}
}

}

// When viewport width > lg
@media screen and ( min-width: $xl ) {
// Increase font size and middle line.
.info{
font-size: 1.2em;
line-height: 1.2em;
border-right: thick double $primary-color;

// Replace description table and increse font size.
&__description {
align-items: flex-start;
line-height: 1.5em;
font-size: 1.4em;
padding-top: 40%;
}
}

}

// when viewport width < $md and height < $sm ( mobile landscape mode )
@media screen and ( max-width: $md ) and ( max-height: $sm ) and (orientation: landscape) {
.info{
width : 100vw;
border-right: thick double $primary-color;
grid-template-columns: 50% 50%;
grid-template-rows: auto 60px;
column-gap: 2px;

&__description {
padding: auto auto;
overflow: hidden;
grid-column-start: 1;
grid-column-end: 2;
}
&__table{
grid-column-start: 1;
grid-column-end: 2;
}

&__links{
grid-column-start: 2;
grid-column-end: 3;
}
}
}
2 changes: 1 addition & 1 deletion portfolio/src/components/Project/Project.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ export default function Project(props) {
<h2>{projectItems.details.name}</h2>
</header>
<section className="project__cube">
<Cube images={projectItems.images} id={projectItems.key} />
<Cube images={projectItems.images} id={index} />
</section>

<section className="project__info">
Expand Down
163 changes: 103 additions & 60 deletions portfolio/src/components/Project/Project.scss
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,6 @@
grid-template-columns: 100%;
overflow: hidden;
border: thick double $primary-color;
@include breakpoint_height( sm, max ){
grid-template-rows: 90px 1fr;
grid-template-columns: 50% 50%;
}
@include breakpoint_height( sm ){
@include breakpoint(sm){
width: 85vw;
height: 80%;
margin: 70px 7.5vw;
}
@include breakpoint(md) {
grid-template-rows: 70px 1fr;
grid-template-columns: min(400px, 50%) auto;
}
}
&__title {
height: 100%;
background-color: fade-out($color: $primary-color, $amount: 0.5);
Expand All @@ -32,54 +17,19 @@
justify-content: center;
align-items: center;
z-index: 100;
@include breakpoint_height( sm, max ){
grid-column-start: 1;
grid-column-end: 3;
justify-content: start;
align-items: start;
padding:10px 10px;
}
@include breakpoint_height( sm ){
@include breakpoint(md) {
grid-column-start: 1;
grid-column-end: 3;
}
}
h2 {
color: black;
}
}
&__cube {
height: 100%;
@include breakpoint_height( sm, max ){
grid-column-start: 2;
grid-column-end: 3;
grid-row-start: 2;
grid-row-end: 3;
height: 100%;
}
@include breakpoint_height( sm ){
@include breakpoint(md) {
grid-column-start: 2;
grid-column-end: 3;
grid-row-start: 2;
grid-row-end: 3;
height: 100%;
}
}
.layout {
width: 100%;
height: calc(100% - 60px);
position: static;
.scene {
position: relative;
top: 20%;
@include breakpoint_height( sm ){
@include breakpoint(md) {
top: -10%;
left: 5%;
}
}
.cube {
user-select: none;
pointer-events: none;
Expand All @@ -89,16 +39,6 @@
}
&__info {
height: 100%;
@include breakpoint_height( sm ){
@include breakpoint(md) {
grid-column-start: 1;
grid-column-end: 2;
grid-row-start: 2;
grid-row-end: 3;
height: 100%;
overflow-y: hidden;
}
}
&::-webkit-scrollbar {
width: 11px;
}
Expand All @@ -114,3 +54,106 @@
}
}
}

// When viewport width > sm
@media screen and (min-width: $sm) {
.project{
// shorten the size of the project card to include sidebars.
width: calc(100% - 140px);
height: calc(100% - 90px);
}

}

// When viewport width > md
@media screen and (min-width: $md) {
.project{
// Switch to 2 columns with shoter header.
grid-template-rows: 70px 1fr;
grid-template-columns: min(400px, 50%) auto;

// the header spread to 2 columns.
&__title{
grid-column-start: 1;
grid-column-end: 3;
}

// The cube goes on the right side column
&__cube {
grid-column-start: 2;
grid-column-end: 3;
grid-row-start: 2;
grid-row-end: 3;
height: 100%;
// adjust cube position
.layout{
.scene{
top: -10%;
left: 5%;
}
}
}

// The info goes on the left side column
&__info {
grid-column-start: 1;
grid-column-end: 2;
grid-row-start: 2;
grid-row-end: 3;
height: 100%;
overflow-y: hidden;
}
}
}

// When viewport width > sm
@media screen and (min-width: $xl) {
.project{
// shorten the size of the project card to include sidebars.
width: calc(100% - 140px);
height: 90%;
margin: 0 0;

}

}

// when viewport width < $md and height < $sm ( mobile landscape mode )
@media screen and ( max-width: $md ) and ( max-height: $sm ) and (orientation: landscape) {
.project{
// Switch to 2 columns.
grid-template-rows: 70px 1fr;
grid-template-columns: 50% 50%;
justify-content: start;
align-items: start;
width: 100vw;
height: 100%;
margin: 0 0;

// the header spread to 2 columns.
&__title{
grid-column-start: 1;
grid-column-end: 3;
align-items: end;
padding-bottom: 5px;
}

// The cube goes on the right side column
&__cube {
grid-column-start: 2;
grid-column-end: 3;
grid-row-start: 2;
grid-row-end: 3;
height: 100%;
// adjust cube position
.layout{
.scene{
top: -10%;
left: 5%;
}
}
}
}
}


Loading