refactor
18
README.md
|
@ -1,23 +1,5 @@
|
||||||
# dwysokinski.me
|
|
||||||
|
|
||||||
|
|
||||||
![Screenshot](/src/images/projects/dw.png?raw=true)
|
![Screenshot](/src/images/projects/dw.png?raw=true)
|
||||||
|
|
||||||
## Development
|
|
||||||
|
|
||||||
### Prerequisites
|
|
||||||
|
|
||||||
1. Node.JS
|
|
||||||
2. yarn/npm
|
|
||||||
3. gatsby-cli
|
|
||||||
|
|
||||||
### Installation
|
|
||||||
|
|
||||||
1. Clone this repo
|
|
||||||
2. Open the folder with this project in a terminal.
|
|
||||||
3. ``yarn install``
|
|
||||||
4. ``yarn run develop``
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
Distributed under the MIT License. See ``LICENSE`` for more information.
|
Distributed under the MIT License. See ``LICENSE`` for more information.
|
||||||
|
|
|
@ -66,12 +66,5 @@ module.exports = {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
|
||||||
resolve: `@kichiyaki/gatsby-plugin-plausible`,
|
|
||||||
options: {
|
|
||||||
domain: DOMAIN,
|
|
||||||
customDomain: process.env.PLAUSIBLE_CUSTOM_DOMAIN,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|
|
@ -3,9 +3,8 @@
|
||||||
"private": true,
|
"private": true,
|
||||||
"description": "Personal website",
|
"description": "Personal website",
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"author": "Dawid Wysokiński <xyztojajestem@gmail.com>",
|
"author": "Dawid Wysokiński <contact@dwysokinski.me>",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@kichiyaki/gatsby-plugin-plausible": "^0.0.8",
|
|
||||||
"@kichiyaki/roboto": "^1.0.0",
|
"@kichiyaki/roboto": "^1.0.0",
|
||||||
"@material-ui/core": "^4.11.0",
|
"@material-ui/core": "^4.11.0",
|
||||||
"@material-ui/icons": "^4.9.1",
|
"@material-ui/icons": "^4.9.1",
|
||||||
|
@ -47,9 +46,9 @@
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/Kichiyaki/dwysokinski.me"
|
"url": "https://gitea.dwysokinski.me/Kichiyaki/dwysokinski.me"
|
||||||
},
|
},
|
||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://github.com/Kichiyaki/dwysokinski.me/issues"
|
"url": "https://gitea.dwysokinski.me/Kichiyaki/dwysokinski.me/issues"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import classnames from 'classnames';
|
import classnames from 'classnames';
|
||||||
import { Route } from '@config/routing';
|
import { ROUTE } from '@config/routing';
|
||||||
import useSmoothScroll from '@libs/useSmoothScroll';
|
import useSmoothScroll from '@libs/useSmoothScroll';
|
||||||
import logo from '@images/logo.svg';
|
import logo from '@images/logo.svg';
|
||||||
import { HEADER_ID } from '@features/IndexPage/components/Header';
|
import { HEADER_ID } from '@features/IndexPage/components/Header/Header';
|
||||||
import { SECTION_ID as PORTFOLIO_SECTION_ID } from '@features/IndexPage/components/Portfolio/Portfolio';
|
import { SECTION_ID as PORTFOLIO_SECTION_ID } from '@features/IndexPage/components/Portfolio/Portfolio';
|
||||||
import { SECTION_ID as CONTACT_SECTION_ID } from '@features/IndexPage/components/Contact';
|
import { SECTION_ID as CONTACT_SECTION_ID } from '@features/IndexPage/components/Contact';
|
||||||
|
|
||||||
|
@ -25,7 +25,11 @@ function Navbar({ className, ...rest }) {
|
||||||
<Container>
|
<Container>
|
||||||
<Toolbar className={classes.toolbar} disableGutters>
|
<Toolbar className={classes.toolbar} disableGutters>
|
||||||
<div className={classes.titleContainer}>
|
<div className={classes.titleContainer}>
|
||||||
<GatsbyLink title="Strona główna" color="inherit" to={Route.IndexPage}>
|
<GatsbyLink
|
||||||
|
title="Strona główna"
|
||||||
|
color="inherit"
|
||||||
|
to={ROUTE.INDEX_PAGE}
|
||||||
|
>
|
||||||
<img className={classes.logo} src={logo} alt="logo" />
|
<img className={classes.logo} src={logo} alt="logo" />
|
||||||
</GatsbyLink>
|
</GatsbyLink>
|
||||||
</div>
|
</div>
|
||||||
|
@ -70,11 +74,11 @@ const useStyles = makeStyles(theme => ({
|
||||||
},
|
},
|
||||||
linkContainer: {
|
linkContainer: {
|
||||||
'& > *:not(:last-child)': {
|
'& > *:not(:last-child)': {
|
||||||
marginRight: theme.spacing(1.5),
|
marginRight: theme.spacing(2),
|
||||||
},
|
},
|
||||||
[theme.breakpoints.down('xs')]: {
|
[theme.breakpoints.down('xs')]: {
|
||||||
'& > *:not(:last-child)': {
|
'& > *:not(:last-child)': {
|
||||||
marginRight: theme.spacing(0.75),
|
marginRight: theme.spacing(1),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
export const Route = {
|
export const ROUTE = {
|
||||||
IndexPage: '/',
|
INDEX_PAGE: '/',
|
||||||
}
|
};
|
||||||
|
|
|
@ -4,18 +4,12 @@ import { makeStyles } from '@material-ui/core/styles';
|
||||||
import { Divider } from '@material-ui/core';
|
import { Divider } from '@material-ui/core';
|
||||||
import Layout from '@components/Layout/Layout';
|
import Layout from '@components/Layout/Layout';
|
||||||
import Seo from '@components/Seo';
|
import Seo from '@components/Seo';
|
||||||
import Header from './components/Header';
|
import Header from './components/Header/Header';
|
||||||
import MyPriorities from './components/MyPriorities/MyPriorities';
|
import MyPriorities from './components/MyPriorities/MyPriorities';
|
||||||
import Technologies from './components/Technologies/Technologies';
|
import Technologies from './components/Technologies/Technologies';
|
||||||
import Portfolio from './components/Portfolio/Portfolio';
|
import Portfolio from './components/Portfolio/Portfolio';
|
||||||
import Contact from './components/Contact';
|
import Contact from './components/Contact';
|
||||||
|
|
||||||
const useStyles = makeStyles(theme => ({
|
|
||||||
layout: {
|
|
||||||
padding: 0,
|
|
||||||
},
|
|
||||||
}));
|
|
||||||
|
|
||||||
const IndexPage = ({ location }) => {
|
const IndexPage = ({ location }) => {
|
||||||
const classes = useStyles();
|
const classes = useStyles();
|
||||||
return (
|
return (
|
||||||
|
@ -32,4 +26,10 @@ const IndexPage = ({ location }) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const useStyles = makeStyles(theme => ({
|
||||||
|
layout: {
|
||||||
|
padding: 0,
|
||||||
|
},
|
||||||
|
}));
|
||||||
|
|
||||||
export default IndexPage;
|
export default IndexPage;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import useSmoothScroll from '@libs/useSmoothScroll';
|
import useSmoothScroll from '@libs/useSmoothScroll';
|
||||||
import { SECTION_ID } from './Contact';
|
import { SECTION_ID } from '../Contact';
|
||||||
|
|
||||||
import { makeStyles } from '@material-ui/core/styles';
|
import { makeStyles } from '@material-ui/core/styles';
|
||||||
import { Container, Typography, Button, Link } from '@material-ui/core';
|
import { Container, Typography, Button, Link } from '@material-ui/core';
|
||||||
|
@ -20,7 +20,7 @@ function Header() {
|
||||||
Full Stack Web Developer
|
Full Stack Web Developer
|
||||||
</Typography>
|
</Typography>
|
||||||
<Typography variant="h3">
|
<Typography variant="h3">
|
||||||
I create websites and web apps.
|
I develop websites and web apps.
|
||||||
</Typography>
|
</Typography>
|
||||||
<Typography gutterBottom variant="h3">
|
<Typography gutterBottom variant="h3">
|
||||||
Do you have an idea, project or problem you would like to discuss?
|
Do you have an idea, project or problem you would like to discuss?
|
Before Width: | Height: | Size: 120 KiB After Width: | Height: | Size: 120 KiB |
|
@ -1,8 +1,7 @@
|
||||||
const projects = [
|
const projects = [
|
||||||
{
|
{
|
||||||
title: 'TWHelp',
|
title: 'TWHelp',
|
||||||
description:
|
description: 'Various tools for the browser-based game Tribal Wars.',
|
||||||
'A website with various stats and tools, scripts, a public GraphQL API and a Discord bot for the browser-based game Tribal Wars.',
|
|
||||||
technologies: [
|
technologies: [
|
||||||
'GraphQL',
|
'GraphQL',
|
||||||
'Golang',
|
'Golang',
|
||||||
|
@ -28,7 +27,7 @@ const projects = [
|
||||||
{
|
{
|
||||||
title: 'Zdam Egzamin Zawodowy',
|
title: 'Zdam Egzamin Zawodowy',
|
||||||
description:
|
description:
|
||||||
'A mobile and web app for practising the theoretical part of the vocational exam.',
|
'Mobile & web app for practising the theoretical part of the vocational exam.',
|
||||||
technologies: [
|
technologies: [
|
||||||
'GraphQL',
|
'GraphQL',
|
||||||
'Golang',
|
'Golang',
|
||||||
|
@ -56,41 +55,6 @@ const projects = [
|
||||||
live: 'https://dwysokinski.me',
|
live: 'https://dwysokinski.me',
|
||||||
fluid: 'projects/dw.png',
|
fluid: 'projects/dw.png',
|
||||||
},
|
},
|
||||||
{
|
|
||||||
title: 'OLX Crawler',
|
|
||||||
description: 'An app written in Go to observe olx.pl ads.',
|
|
||||||
technologies: [
|
|
||||||
'Golang',
|
|
||||||
'Colly',
|
|
||||||
'SQLite3',
|
|
||||||
'Echo',
|
|
||||||
'React',
|
|
||||||
'Material-UI',
|
|
||||||
],
|
|
||||||
fluid: 'projects/olx.png',
|
|
||||||
github: 'https://github.com/Kichiyaki/olx-crawler',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: 'Instaling.pl Bot',
|
|
||||||
description: 'A bot that solves the instaling.pl vocabulary tests for you.',
|
|
||||||
technologies: ['Golang', 'Lorca'],
|
|
||||||
fluid: 'projects/instaling.png',
|
|
||||||
github: 'https://github.com/Kichiyaki/Instaling-Bot',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: 'Margonem Mini Bot',
|
|
||||||
description: 'A bot for the mobile client of the MMORPG game Margonem.',
|
|
||||||
technologies: ['Golang', 'Colly'],
|
|
||||||
fluid: 'projects/margonem.png',
|
|
||||||
github: 'https://github.com/Kichiyaki/margonem-mini-bot',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: 'Akademia Młodego Inżyniera',
|
|
||||||
description: '',
|
|
||||||
technologies: ['HTML', 'CSS', 'Bootstrap'],
|
|
||||||
live: 'https://dwysokinski.me/preview/akademia/',
|
|
||||||
fluid: 'projects/amz.png',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
title: 'Freshline',
|
title: 'Freshline',
|
||||||
description: '',
|
description: '',
|
||||||
|
|
Before Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 41 KiB |
Before Width: | Height: | Size: 360 KiB |
Before Width: | Height: | Size: 24 KiB |
|
@ -6,19 +6,6 @@ import { Link } from 'gatsby-theme-material-ui';
|
||||||
import Layout from '@components/Layout/Layout';
|
import Layout from '@components/Layout/Layout';
|
||||||
import Seo from '@components/Seo';
|
import Seo from '@components/Seo';
|
||||||
|
|
||||||
const useStyles = makeStyles(() => ({
|
|
||||||
container: {
|
|
||||||
minHeight: '100vh',
|
|
||||||
display: 'flex',
|
|
||||||
flexDirection: 'column',
|
|
||||||
justifyContent: 'center',
|
|
||||||
textAlign: 'center',
|
|
||||||
},
|
|
||||||
layout: {
|
|
||||||
padding: '0',
|
|
||||||
},
|
|
||||||
}));
|
|
||||||
|
|
||||||
const NotFoundPage = ({ location }) => {
|
const NotFoundPage = ({ location }) => {
|
||||||
const classes = useStyles();
|
const classes = useStyles();
|
||||||
|
|
||||||
|
@ -47,4 +34,17 @@ const NotFoundPage = ({ location }) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const useStyles = makeStyles(() => ({
|
||||||
|
container: {
|
||||||
|
minHeight: '100vh',
|
||||||
|
display: 'flex',
|
||||||
|
flexDirection: 'column',
|
||||||
|
justifyContent: 'center',
|
||||||
|
textAlign: 'center',
|
||||||
|
},
|
||||||
|
layout: {
|
||||||
|
padding: '0',
|
||||||
|
},
|
||||||
|
}));
|
||||||
|
|
||||||
export default NotFoundPage;
|
export default NotFoundPage;
|
||||||
|
|
11
yarn.lock
|
@ -1646,15 +1646,6 @@
|
||||||
"@babel/runtime" "^7.7.2"
|
"@babel/runtime" "^7.7.2"
|
||||||
regenerator-runtime "^0.13.3"
|
regenerator-runtime "^0.13.3"
|
||||||
|
|
||||||
"@kichiyaki/gatsby-plugin-plausible@^0.0.8":
|
|
||||||
version "0.0.8"
|
|
||||||
resolved "https://registry.yarnpkg.com/@kichiyaki/gatsby-plugin-plausible/-/gatsby-plugin-plausible-0.0.8.tgz#94f53c5a8f768b934228e4f43c5493c38885152b"
|
|
||||||
integrity sha512-DO03Z6NHRiwh8XHJtBJcLxMZ1a8cDjYM0inuGmNI33ea7fV4wdGVF5uHidlbdlls2hLfYPDkjOc0y2Yz3Ff/nw==
|
|
||||||
dependencies:
|
|
||||||
"@babel/runtime" "^7.9.2"
|
|
||||||
minimatch "3.0.4"
|
|
||||||
react "^17.0.2"
|
|
||||||
|
|
||||||
"@kichiyaki/roboto@^1.0.0":
|
"@kichiyaki/roboto@^1.0.0":
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/@kichiyaki/roboto/-/roboto-1.0.0.tgz#6f5dfb40e2423940588946c952490b123ca8088b"
|
resolved "https://registry.yarnpkg.com/@kichiyaki/roboto/-/roboto-1.0.0.tgz#6f5dfb40e2423940588946c952490b123ca8088b"
|
||||||
|
@ -10278,7 +10269,7 @@ react-transition-group@^4.4.0:
|
||||||
loose-envify "^1.4.0"
|
loose-envify "^1.4.0"
|
||||||
prop-types "^15.6.2"
|
prop-types "^15.6.2"
|
||||||
|
|
||||||
react@^17.0.1, react@^17.0.2:
|
react@^17.0.1:
|
||||||
version "17.0.2"
|
version "17.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037"
|
resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037"
|
||||||
integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==
|
integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==
|
||||||
|
|