diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 113c79f..32017c0 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -11,33 +11,18 @@
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
+
@@ -100,7 +85,7 @@
-
+
@@ -159,10 +144,10 @@
-
+
-
+
diff --git a/src/components/pages/portfolio.jsx b/src/components/pages/portfolio.jsx
index 92b1ce2..350acbc 100644
--- a/src/components/pages/portfolio.jsx
+++ b/src/components/pages/portfolio.jsx
@@ -7,13 +7,23 @@ const PortfolioItem = (props) => {
const description = props.project.description;
const gallery = props.project.gallery;
const links = props.project.links;
+ const pageLink = props.project.links;
return (
- {name}
+
{description}
{gallery ? : ""}
- - GitHub
+ {links.map((link) => (
+ -
+ {link.name}
+
+ ))}
);
@@ -24,7 +34,7 @@ const PortfolioPage = (props) => {
{props.portfolio.map((project) => (
- -
+
-
))}
diff --git a/src/constants/link-types.js b/src/constants/link-types.js
new file mode 100644
index 0000000..9c4e580
--- /dev/null
+++ b/src/constants/link-types.js
@@ -0,0 +1,5 @@
+export const APP = "app"
+export const GITHUB = "github"
+export const IPHONE = "iphone"
+export const ANDROID = "android"
+export const APP_PAGE = "app-page"
diff --git a/src/css/basic.scss b/src/css/basic.scss
index 0e0af39..51fde16 100644
--- a/src/css/basic.scss
+++ b/src/css/basic.scss
@@ -15,7 +15,9 @@ body {
}
- a{
+a, .link{
+ color: $link-color;
+ text-decoration: none;
&:hover, &:focus{
color: var(--pink)
}
@@ -36,4 +38,5 @@ body {
@import "logo";
@import "elements/page-links";
@import "elements/recent-list";
-@import "elements/contacts";
\ No newline at end of file
+@import "elements/contacts";
+@import "elements/portfolio-project";
\ No newline at end of file
diff --git a/src/css/elements/contacts.scss b/src/css/elements/contacts.scss
index a2a883f..14a718a 100644
--- a/src/css/elements/contacts.scss
+++ b/src/css/elements/contacts.scss
@@ -4,7 +4,6 @@
display: flex;
justify-content: space-around;
flex-wrap: wrap;
- width: 60vw;
margin: 0 auto;
}
@@ -13,5 +12,7 @@
font-size: 0.3em;
color: var(--cyan);
line-height: 0.8em;
+ margin:10px 15px;
+ display: block;
}
\ No newline at end of file
diff --git a/src/css/elements/portfolio-project.scss b/src/css/elements/portfolio-project.scss
new file mode 100644
index 0000000..d0d5655
--- /dev/null
+++ b/src/css/elements/portfolio-project.scss
@@ -0,0 +1,76 @@
+.portfolio{
+ list-style: none;
+ padding: 20px;
+ display: flex;
+ flex-direction: column;
+ align-content: center;
+ align-items: center;
+ justify-content: center;
+
+}
+.project{
+ display: flex;
+ flex-direction: column;
+ padding: 26px;
+ box-shadow: 4px 4px 32px rgba(0, 0, 0, 0.34);
+ border-radius: 10px;
+ background: var(--background);
+ font-family: $main-font;
+ text-align: center;
+ margin: 20px 0;
+ max-width: 70vw;
+
+}
+.project-name{
+ color: $header-color;
+ margin: 0;
+ & a{
+ color: $header-color;
+ text-decoration: none;
+ }
+}
+
+.project-gallery{
+ list-style: none;
+ padding: 0;
+}
+
+.project-links{
+ padding: 0;
+ list-style: none;
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-around;
+
+}
+
+.project-link{
+ display: flex;
+ align-items: center;
+ align-content: center;
+ vertical-align: center;
+ &::before{
+ width: 30px;
+ margin-right: 10px;
+ }
+ &--github{
+ &::before{
+ content: url("../../svg/github-icon.svg");
+ }
+ }
+ &--iphone{
+ &::before{
+ content: url("../../svg/appstore.svg");
+ }
+ }
+ &--android{
+ &::before{
+ content: url("../../svg/googleplay.svg");
+ }
+ }
+ &--app-page{
+ &::before{
+ content: url("../../svg/app-page.svg");
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/css/variables.scss b/src/css/variables.scss
index a7d9712..f618825 100644
--- a/src/css/variables.scss
+++ b/src/css/variables.scss
@@ -14,3 +14,5 @@
$ascii-line-height: 1.115em;
$header-color: var(--green);
+$main-font: 'Mononoki', monospace;
+$link-color: var(--cyan);
diff --git a/src/img/░█░█░░░░█▀▄ ░█▀█░░░░█░█ ░▀░▀░▀░░▀▀░.png b/src/img/░█░█░░░░█▀▄ ░█▀█░░░░█░█ ░▀░▀░▀░░▀▀░.png
new file mode 100644
index 0000000..b2f9e95
Binary files /dev/null and b/src/img/░█░█░░░░█▀▄ ░█▀█░░░░█░█ ░▀░▀░▀░░▀▀░.png differ
diff --git a/src/reducers/site-content-reducer.js b/src/reducers/site-content-reducer.js
index d628e27..8e6f219 100644
--- a/src/reducers/site-content-reducer.js
+++ b/src/reducers/site-content-reducer.js
@@ -1,3 +1,5 @@
+import {APP_PAGE, GITHUB} from "../constants/link-types";
+
const initialState = {
recentNews: ["nope"],
portfolioItems: [
@@ -5,10 +7,16 @@ const initialState = {
name: 'AnkiLan',
description: 'The app created for pushing cards with english words and their definitions to AnkiLan',
gallery: [],
+ pageLink: '',
links: [
{
- name: 'github',
- type: 'github',
+ name: 'GitHub',
+ type: GITHUB,
+ src: 'https://github.com'
+ },
+ {
+ name: 'App page',
+ type: APP_PAGE,
src: 'https://github.com'
},
]
@@ -17,10 +25,25 @@ const initialState = {
name: 'Time garden',
description: 'The Forest like app for desktop and mobile',
gallery: [],
+ pageLink: '',
links: [
{
- name: 'github',
- type: 'github',
+ name: 'GitHub',
+ type: GITHUB,
+ src: 'https://github.com'
+ }
+
+ ]
+ },
+ {
+ name: 'Time garden',
+ description: 'The Forest like app for desktop and mobile',
+ gallery: [],
+ pageLink: '',
+ links: [
+ {
+ name: 'GitHub',
+ type: GITHUB,
src: 'https://github.com'
}
diff --git a/src/svg/app-page.svg b/src/svg/app-page.svg
new file mode 100644
index 0000000..60f31f2
--- /dev/null
+++ b/src/svg/app-page.svg
@@ -0,0 +1,35 @@
+
diff --git a/src/svg/appstore.svg b/src/svg/appstore.svg
new file mode 100644
index 0000000..7054cbd
--- /dev/null
+++ b/src/svg/appstore.svg
@@ -0,0 +1,16 @@
+
diff --git a/src/svg/googleplay.svg b/src/svg/googleplay.svg
new file mode 100644
index 0000000..9b9f440
--- /dev/null
+++ b/src/svg/googleplay.svg
@@ -0,0 +1,13 @@
+