Personal site by Guy Livni
My personal site.
Table of contents
Motivation
Sharing knowledge and my approach to topics such as theming, content management, structure and more.
Requirements
Getting started
1. Install all of the dependencies:
yarn
2. Start dev env:
yarn start
File Structure
.
├── content # assets and blog posts
├── static # favicon and robots
└── src
├── api # API services
├── assets # svg assets
├── components # components divided per feature
├── constants
├── hooks # React hooks
├── pages # Site pages
├── services
├── styles # Site themes and styles
└── templates
Scripts
In the project directory, you can run:
yarn <script> |
Description |
---|---|
start |
Run your app in development mode at localhost:8000 . |
lint |
Runs lint check. |
format |
Runs prettier format on src folder |
build |
Builds the app for production to the public folder. |
serve |
Serves the production ready app from the public folder. |
deploy |
Deploys app to github pages |
What’s Included?
-
Gatsby.js Build blazing fast, modern apps and websites with React https://www.gatsbyjs.org
-
contentful for content management.
-
styled-components as styling solution and theming
-
Husky for git hooks management.
-
commitlint for commit messages linting following conventional-commits rules.
-
Prettier an addition to ESlint code formatter.
-
ESLint to maintain a consistent javascript code style.
-
react-icons for svg react icons of popular icon packs.
-
Dotenv for environment variables managment.
-
prop-types as the runtime type checker.
-
Yarn as the package manager.
Deploy
Site is deployed using Github Pages.
License
My-Site licensed as MIT.