Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maxwellkjr/strugglingprogrammer
Rebuilding my personal website and still with Gatsby.js
https://github.com/maxwellkjr/strugglingprogrammer
gatsbyjs graphql react scss
Last synced: 27 days ago
JSON representation
Rebuilding my personal website and still with Gatsby.js
- Host: GitHub
- URL: https://github.com/maxwellkjr/strugglingprogrammer
- Owner: MaxwellKJr
- Created: 2022-11-28T20:45:15.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-11-26T10:00:22.000Z (2 months ago)
- Last Synced: 2024-11-26T10:59:43.338Z (2 months ago)
- Topics: gatsbyjs, graphql, react, scss
- Language: TypeScript
- Homepage: https://bymjcodes.com
- Size: 17.9 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
MJ Codes Presents:
Programmer's Starter BlogWhen I first started off as a programmer, I didn't know that I would one day need to have a portfolio to showcase my work. I have made three iterations of the same website (this being the third) of which the first two sucked. And then I discovered React.js and shortly after, I discovered Gatsby.js and thus, the rest is history.
## β οΈ Disclaimer
This project is not for beginners in Web Development.
Prerequisite knowledge:
- HTML, CSS, JavaScript
- Sass/SCSS was heavily used in the styling of the website
- React.js (Specifically GatsbyJS)
- GraphQL
- YamlNeeded tools: git, nodejs, npm, and gatsby-cli
## π Getting Started
1. **Create a repo of this site.**
You can do this either by cloning the repo or downloading the zip folder
```shell
# create a new Gatsby site using the blog starter
git clone https://github.com/MaxwellKJr/strugglingprogrammer.git
```2. **Install Dependecies.**
Make sure that you have the gatsby-cli installed
```
$ npm install -g gatsby-cli
```
Navigate into your new siteβs directory and run npm install or yarn install```shell
cd strugglingprogrammer/# npm
$ npm install# OR
# yarn
$ yarn install
```3. **Start the development server.**
```shell
$ gatsby develop# Output
You can now view programmers-starter-blog in the browser.http://localhost:8000/
View GraphiQL, an in-browser IDE, to explore your site's data and schema
http://localhost:8000/___graphql
Note that the development build is not optimized.
To create a production build, use gatsby build
```_Note: You'll also see a second link: _`http://localhost:8000/___graphql`_. This is a tool you can use to experiment with querying your data. Learn more about using this tool in the [Gatsby tutorial](https://www.gatsbyjs.org/tutorial/part-five/#introducing-graphiql)._
4. **Open the source code and start editing!**
Open the folder using your favorite text editor (for web development) and start coding. Start by editing the `src/pages/index.js` file,save the changes and the browser will update in real time!
_**NOTE: Keep the server running.**_
## π§ What's inside?
A quick look at the top-level files and directories you'll see in a Gatsby project.
.
βββ node_modules
βββ src
βββ .gitignore
βββ .prettierrc
βββ gatsby-browser.js
βββ gatsby-config.js
βββ gatsby-node.js
βββ gatsby-ssr.js
βββ LICENSE
βββ package-lock.json
βββ package.json
βββ README.md1. **`/node_modules`**: This directory contains all of the modules of code that your project depends on (npm packages) are automatically installed.
2. **`/src`**: This directory will contain all of the code related to what you will see on the front-end of your site (what you see in the browser) such as your site header or a page template. `src` is a convention for βsource codeβ.
3. **`.gitignore`**: This file tells git which files it should not track / not maintain a version history for.
4. **`.prettierrc`**: This is a configuration file for [Prettier](https://prettier.io/). Prettier is a tool to help keep the formatting of your code consistent.
5. **`gatsby-browser.js`**: This file is where Gatsby expects to find any usage of the [Gatsby browser APIs](https://www.gatsbyjs.org/docs/browser-apis/) (if any). These allow customization/extension of default Gatsby settings affecting the browser.
6. **`gatsby-config.js`**: This is the main configuration file for a Gatsby site. This is where you can specify information about your site (metadata) like the site title and description, which Gatsby plugins youβd like to include, etc. (Check out the [config docs](https://www.gatsbyjs.org/docs/gatsby-config/) for more detail).
7. **`gatsby-node.js`**: This file is where Gatsby expects to find any usage of the [Gatsby Node APIs](https://www.gatsbyjs.org/docs/node-apis/) (if any). These allow customization/extension of default Gatsby settings affecting pieces of the site build process.
8. **`gatsby-ssr.js`**: This file is where Gatsby expects to find any usage of the [Gatsby server-side rendering APIs](https://www.gatsbyjs.org/docs/ssr-apis/) (if any). These allow customization of default Gatsby settings affecting server-side rendering.
9. **`LICENSE`**: This Gatsby starter is licensed under the 0BSD license. This means that you can see this file as a placeholder and replace it with your own license.
10. **`package-lock.json`** (See `package.json` below, first). This is an automatically generated file based on the exact versions of your npm dependencies that were installed for your project. **(You wonβt change this file directly).**
11. **`package.json`**: A manifest file for Node.js projects, which includes things like metadata (the projectβs name, author, etc). This manifest is how npm knows which packages to install for your project.
12. **`README.md`**: A text file containing useful reference information about your project.
## π Learning Gatsby
Looking for more guidance? Full documentation for Gatsby lives [on the website](https://www.gatsbyjs.org/). Here are some places to start:
- **For most developers, we recommend starting with our [in-depth tutorial for creating a site with Gatsby](https://www.gatsbyjs.org/tutorial/).** It starts with zero assumptions about your level of ability and walks through every step of the process.
- **To dive straight into code samples, head [to our documentation](https://www.gatsbyjs.org/docs/).** In particular, check out the _Guides_, _API Reference_, and _Advanced Tutorials_ sections in the sidebar.
## π« Deploy
[![Deploy to Netlify](https://www.netlify.com/img/deploy/button.svg)](https://app.netlify.com/start/deploy?repository=https://github.com/gatsbyjs/programmers-starter-blog)
[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/import/project?template=https://github.com/gatsbyjs/programmers-starter-blog)
_Have another more specific idea? You may want to check out our vibrant collection of [Gatsby official and community-created starters](https://www.gatsbyjs.org/docs/gatsby-starters/)._