{"id":23697973,"url":"https://github.com/maxwellkjr/strugglingprogrammer","last_synced_at":"2025-12-30T23:01:03.379Z","repository":{"id":155417434,"uuid":"571763254","full_name":"MaxwellKJr/strugglingprogrammer","owner":"MaxwellKJr","description":"Rebuilding my personal website and still with Gatsby.js","archived":false,"fork":false,"pushed_at":"2024-11-26T10:00:22.000Z","size":18730,"stargazers_count":1,"open_issues_count":8,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-26T10:59:43.338Z","etag":null,"topics":["gatsbyjs","graphql","react","scss"],"latest_commit_sha":null,"homepage":"https://bymjcodes.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MaxwellKJr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-28T20:45:15.000Z","updated_at":"2024-11-26T10:00:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"2423ce73-4013-498e-a137-90d472a95da0","html_url":"https://github.com/MaxwellKJr/strugglingprogrammer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaxwellKJr%2Fstrugglingprogrammer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaxwellKJr%2Fstrugglingprogrammer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaxwellKJr%2Fstrugglingprogrammer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaxwellKJr%2Fstrugglingprogrammer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MaxwellKJr","download_url":"https://codeload.github.com/MaxwellKJr/strugglingprogrammer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231823701,"owners_count":18431949,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gatsbyjs","graphql","react","scss"],"created_at":"2024-12-30T07:12:25.872Z","updated_at":"2025-12-30T23:00:58.331Z","avatar_url":"https://github.com/MaxwellKJr.png","language":"TypeScript","readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.gatsbyjs.org\"\u003e\n    \u003cimg alt=\"Gatsby\" src=\"https://mjcodes.netlify.app/favicon-32x32.png?v=a6540c53061925f5057f8cf2df7be30c\" width=\"32\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\u003ch2 align=\"center\"\u003eMJ Codes Presents:\u003c/h2\u003e\n\u003ch1 align=\"center\"\u003e\n   \u003cstrong\u003eProgrammer's Starter Blog\u003c/strong\u003e\n\u003c/h1\u003e\n\nWhen 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.\n\n## ⚠️ Disclaimer\n\nThis project is not for beginners in Web Development.\n\nPrerequisite knowledge:\n\n- HTML, CSS, JavaScript\n- Sass/SCSS was heavily used in the styling of the website\n- React.js (Specifically GatsbyJS)\n- GraphQL\n- Yaml\n\nNeeded tools: git, nodejs, npm, and gatsby-cli\n\n## 🚀 Getting Started\n\n1.  **Create a repo of this site.**\n\n    You can do this either by cloning the repo or downloading the zip folder\n\n    ```shell\n    # create a new Gatsby site using the blog starter\n    git clone https://github.com/MaxwellKJr/strugglingprogrammer.git\n    ```\n\n2.  **Install Dependecies.**\n\n    Make sure that you have the gatsby-cli installed\n    ```\n    $ npm install -g gatsby-cli\n    ```\n    Navigate into your new site’s directory and run npm install or yarn install\n\n    ```shell\n    cd strugglingprogrammer/\n\n    # npm\n    $ npm install\n\n    # OR\n\n    # yarn\n    $ yarn install\n    ```\n\n3.  **Start the development server.**\n\n    ```shell\n    $ gatsby develop\n\n    # Output\n    You can now view programmers-starter-blog in the browser.\n\n    http://localhost:8000/\n\n    View GraphiQL, an in-browser IDE, to explore your site's data and schema\n\n    http://localhost:8000/___graphql\n\n    Note that the development build is not optimized.\n    To create a production build, use gatsby build\n    ```\n\n    _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)._\n\n4.  **Open the source code and start editing!**\n\n    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!\n\n    _**NOTE: Keep the server running.**_\n\n## 🧐 What's inside?\n\nA quick look at the top-level files and directories you'll see in a Gatsby project.\n\n    .\n    ├── node_modules\n    ├── src\n    ├── .gitignore\n    ├── .prettierrc\n    ├── gatsby-browser.js\n    ├── gatsby-config.js\n    ├── gatsby-node.js\n    ├── gatsby-ssr.js\n    ├── LICENSE\n    ├── package-lock.json\n    ├── package.json\n    └── README.md\n\n1.  **`/node_modules`**: This directory contains all of the modules of code that your project depends on (npm packages) are automatically installed.\n\n2.  **`/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”.\n\n3.  **`.gitignore`**: This file tells git which files it should not track / not maintain a version history for.\n\n4.  **`.prettierrc`**: This is a configuration file for [Prettier](https://prettier.io/). Prettier is a tool to help keep the formatting of your code consistent.\n\n5.  **`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.\n\n6.  **`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).\n\n7.  **`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.\n\n8.  **`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.\n\n9.  **`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.\n\n10. **`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).**\n\n11. **`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.\n\n12. **`README.md`**: A text file containing useful reference information about your project.\n\n## 🎓 Learning Gatsby\n\nLooking for more guidance? Full documentation for Gatsby lives [on the website](https://www.gatsbyjs.org/). Here are some places to start:\n\n- **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.\n\n- **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.\n\n## 💫 Deploy\n\n[![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)\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/import/project?template=https://github.com/gatsbyjs/programmers-starter-blog)\n\n_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/)._\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxwellkjr%2Fstrugglingprogrammer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaxwellkjr%2Fstrugglingprogrammer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxwellkjr%2Fstrugglingprogrammer/lists"}