├── src ├── assets │ ├── alc.png │ ├── me.jpg │ ├── me2.png │ ├── fake.png │ ├── math.png │ ├── news.png │ ├── port.png │ ├── todo.png │ ├── linkedin.png │ ├── shelter.png │ ├── bg-texture.png │ ├── bookstore.png │ └── meri_gogichashvili_cv.pdf ├── index.js ├── components │ ├── header │ │ ├── CTA.jsx │ │ ├── Header.jsx │ │ ├── HeaderSocials.jsx │ │ └── header.css │ ├── topbar │ │ ├── topbar.css │ │ └── Topbar.jsx │ ├── portfolio │ │ ├── portfolio.css │ │ └── Portfolio.jsx │ ├── testimonials │ │ ├── testimonials.css │ │ └── Testimonials.jsx │ ├── footer │ │ ├── footer.css │ │ └── Footer.jsx │ ├── experience │ │ ├── experience.css │ │ └── Experience.jsx │ ├── contact │ │ ├── contact.css │ │ └── Contact.jsx │ └── intro │ │ ├── Intro.jsx │ │ └── intro.css ├── App.jsx └── index.css ├── .gitignore ├── public └── index.html ├── package.json └── README.md /src/assets/alc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/alc.png -------------------------------------------------------------------------------- /src/assets/me.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/me.jpg -------------------------------------------------------------------------------- /src/assets/me2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/me2.png -------------------------------------------------------------------------------- /src/assets/fake.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/fake.png -------------------------------------------------------------------------------- /src/assets/math.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/math.png -------------------------------------------------------------------------------- /src/assets/news.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/news.png -------------------------------------------------------------------------------- /src/assets/port.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/port.png -------------------------------------------------------------------------------- /src/assets/todo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/todo.png -------------------------------------------------------------------------------- /src/assets/linkedin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/linkedin.png -------------------------------------------------------------------------------- /src/assets/shelter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/shelter.png -------------------------------------------------------------------------------- /src/assets/bg-texture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/bg-texture.png -------------------------------------------------------------------------------- /src/assets/bookstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/bookstore.png -------------------------------------------------------------------------------- /src/assets/meri_gogichashvili_cv.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Meri-MG/portfolio---react/HEAD/src/assets/meri_gogichashvili_cv.pdf -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom/client'; 3 | import App from './App'; 4 | import './index.css'; 5 | 6 | const root = ReactDOM.createRoot(document.getElementById('root')); 7 | root.render( 8 | 9 | 10 | 11 | ); 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /src/components/header/CTA.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import CV from '../../assets/meri_gogichashvili_cv.pdf'; 3 | 4 | const CTA = () => { 5 | return ( 6 |
7 | 8 | Download CV 9 | 10 | 11 | Let's talk 12 | 13 |
14 | ); 15 | }; 16 | 17 | export default CTA; 18 | -------------------------------------------------------------------------------- /src/components/header/Header.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import CTA from './CTA'; 3 | import HeaderSocials from './HeaderSocials'; 4 | import './header.css'; 5 | 6 | const Header = () => { 7 | return ( 8 |
9 |
10 |
Hello I'm
11 |

Meri Gogichashvili

12 |
Full-stack Developer
13 | 14 | 15 | Scroll Down 16 | 17 | 18 |
19 |
20 | ); 21 | }; 22 | 23 | export default Header; 24 | -------------------------------------------------------------------------------- /src/components/header/HeaderSocials.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { BsLinkedin } from 'react-icons/bs'; 3 | import { FaGithub } from 'react-icons/fa'; 4 | import { FaAngellist } from 'react-icons/fa' 5 | 6 | const HeaderSocials = () => { 7 | return ( 8 |
9 | 10 | 11 | 12 |
13 | ) 14 | } 15 | 16 | export default HeaderSocials -------------------------------------------------------------------------------- /src/components/topbar/topbar.css: -------------------------------------------------------------------------------- 1 | nav { 2 | background: rgba(0, 0, 0, 0.3); 3 | width: max-content; 4 | display: block; 5 | padding: 0.7rem 1.7rem; 6 | z-index: 2; 7 | position: fixed; 8 | left: 50%; 9 | transform: translateX(-50%); 10 | bottom: 2rem; 11 | display: flex; 12 | gap: 0.8rem; 13 | border-radius: 3rem; 14 | backdrop-filter: blur(15px); 15 | } 16 | 17 | nav a { 18 | background: transparent; 19 | padding: 0.9rem; 20 | border-radius: 50%; 21 | display: flex; 22 | color: var(--color-light); 23 | font-size: 1.1rem; 24 | } 25 | 26 | nav a:hover { 27 | background: rgba(0, 0, 0, 0.3); 28 | } 29 | 30 | nav a.active { 31 | background: var(--color-bg); 32 | color: var(--color-white); 33 | } -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 10 | 14 | Meri-MG React-Portfolio 15 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | -------------------------------------------------------------------------------- /src/App.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import Contact from './components/contact/Contact'; 3 | import Experience from './components/experience/Experience'; 4 | import Footer from './components/footer/Footer'; 5 | import Header from './components/header/Header'; 6 | import Intro from './components/intro/Intro'; 7 | import Portfolio from './components/portfolio/Portfolio'; 8 | import Testimonials from './components/testimonials/Testimonials'; 9 | import Topbar from './components/topbar/Topbar'; 10 | 11 | 12 | const App = () => { 13 | return ( 14 | <> 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |