{"id":15162508,"url":"https://github.com/renatoxm/gatsbyshowcase","last_synced_at":"2026-02-11T13:02:43.150Z","repository":{"id":188632854,"uuid":"620417319","full_name":"renatoxm/gatsbyshowcase","owner":"renatoxm","description":"Getsby simple website","archived":false,"fork":false,"pushed_at":"2023-04-17T16:45:44.000Z","size":7194,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-25T06:47:24.695Z","etag":null,"topics":["bootstrap","bootstrap5","gatsby","gatsbyjs","typescript"],"latest_commit_sha":null,"homepage":"https://gatsbyshowcase.vercel.app/","language":"SCSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/renatoxm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-03-28T16:33:00.000Z","updated_at":"2023-03-28T16:52:25.000Z","dependencies_parsed_at":"2023-08-16T07:55:32.615Z","dependency_job_id":null,"html_url":"https://github.com/renatoxm/gatsbyshowcase","commit_stats":null,"previous_names":["renatoxm/gatsbyshowcase"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/renatoxm/gatsbyshowcase","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/renatoxm%2Fgatsbyshowcase","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/renatoxm%2Fgatsbyshowcase/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/renatoxm%2Fgatsbyshowcase/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/renatoxm%2Fgatsbyshowcase/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/renatoxm","download_url":"https://codeload.github.com/renatoxm/gatsbyshowcase/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/renatoxm%2Fgatsbyshowcase/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29333155,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T12:42:24.625Z","status":"ssl_error","status_checked_at":"2026-02-11T12:41:23.344Z","response_time":97,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["bootstrap","bootstrap5","gatsby","gatsbyjs","typescript"],"created_at":"2024-09-27T01:44:17.901Z","updated_at":"2026-02-11T13:02:43.136Z","avatar_url":"https://github.com/renatoxm.png","language":"SCSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Gatsby Sample Page\n\n![gatsby](https://img.shields.io/badge/Gatsby-663399?style=for-the-badge\u0026logo=gatsby\u0026logoColor=white)\n![TypeScript](https://img.shields.io/badge/TypeScript-007ACC?style=for-the-badge\u0026logo=typescript\u0026logoColor=white)\n![Bootstrap](https://img.shields.io/badge/Bootstrap-563D7C?style=for-the-badge\u0026logo=bootstrap\u0026logoColor=white)\n![GraphQL](https://img.shields.io/badge/-GraphQL-E10098?style=for-the-badge\u0026logo=graphql\u0026logoColor=white)\n\nThis is a sample Gatsby landing page in Typescript with Bootstrap 5, GraphQL and MongoDB for presentation purposes only.\n\nThis project was created only as a portfolio showcase, just the landing page works.\n\n## Features\n\n- [x] Gatsby 5\n- [x] React 18\n- [x] TypeScript\n- [x] Bootstrap 5\n- [x] ESLint\n- [x] Prettier\n- [x] Husky\n- [x] Commitlint\n- [x] lint-staged\n- [x] Path Mapping — Import components or images using the `@` prefix\n- [x] Pnpm\n- [x] PR Workflow — Run Type Check \u0026 Linters on Pull Requests\n- [x] Jest - JavaScript testing framework\n- [x] Cypress - e2e (end to end) testing\n- [x] Cypress axe accessibility testing API\n- [x] DataDog -Datadog logging and real user monitoring (RUM) \u003chttps://www.gatsbyjs.com/plugins/gatsby-plugin-datadog/\u003e\n- [ ] Storybook - UI development, testing, and documentation\n\n## Gatsby Features\n\n- [x] Blog contents\n- [x] Blog Pagination\n- [x] Responsive Images (static \u0026 dynamic) \u003chttps://www.gatsbyjs.com/plugins/gatsby-plugin-image\u003e\n- [x] Blog Search using JS Search (In 'posts' page)\n- [ ] Responsive Background Images\n- [ ] Forms\n\n## Scripts\n\n- `pnpm start` — Starts the application in development mode at `http://localhost:8000`.\n- `pnpm build` — Compile your application and make it ready for deployment.\n- `pnpm serve` — Serve the production build of your site\n- `pnpm clean` — Wipe out the cache (`.cache` folder).\n- `pnpm type-check` — Validate code using TypeScript compiler.\n- `pnpm lint` — Runs ESLint for all files in the `src` directory.\n- `pnpm format` — Runs Prettier for all files in the `src` directory.\n- `pnpm test` — Run tests with Jest.\n- `pnpm test:watch` — Run tests on watch mode.\n\n### Path Mapping\n\nTypeScript are pre-configured with custom path mappings. To import components or files, use the `@` prefix.\n\n```tsx\nimport { Button } from '@/components/Button'\n\n// To import images or other files from the static folder\nimport avatar from '@/static/avatar.png'\n```\n\n## Install the project\n\n```sh\n# npm\npnpm i\n```\n\n## Starting the project\n\nTo start the project locally, run:\n\n```sh\npnpm develop\n```\n\nOpen `http://localhost:8000` with your browser to see the result.\n\n## Datadog\n\nGatsby plugin datadog is installed, read more on \u003chttps://www.gatsbyjs.com/plugins/gatsby-plugin-datadog/\u003e\n\nCopy ./.env.production.example to ./.env.production and fill your App id, client token and datadog region site.\n\n```sh\ncp ./.env.production.example ./.env.production\n```\n\n### Logs \u0026 error collection\n\nWhen log collection is enabled datadogLogs will be available on the global window object, so you can use it like this:\n\n```js\ndatadogLogs.logger.info('Hello World!')\n```\n\nSee [Datadog’s Browser Log Collection documentation](https://docs.datadoghq.com/logs/log_collection/javascript/#usage) for available methods on the datadogLogs object.\n\nIf RUM is enabled, RUM data will automatically be collected. datadogRum is also available on the global window object, so you can use it for [manual error collection](https://docs.datadoghq.com/real_user_monitoring/browser/collecting_browser_errors/?tab=npm#collect-errors-manually) and [custom user actions](https://docs.datadoghq.com/real_user_monitoring/browser/tracking_user_actions/?tab=npm#custom-user-actions), etc.\n\n### Agent installation (ubuntu)\n\n\u003chttps://www.devopsschool.com/blog/how-to-install-datadog-agent-in-ubuntu/\u003e\n\n### Starting/stopping Datadog agent (ubuntu)\n\n```sh\n#starting\nsudo service datadog-agent start\n\n#stopping\nsudo service datadog-agent stop\n```\n\n## Running Cypress on WSL2\n\n\u003chttps://nickymeuleman.netlify.app/blog/gui-on-wsl2-cypress\u003e\n\n### For good measure, update that linux install (on your shell root)\n\n```sh\nsudo apt update\nsudo apt upgrade\n```\n\n### Install X-server\n\n\u003chttps://sourceforge.net/projects/vcxsrv/\u003e\n\n**Important:** On the page that lets you enable extra settings, be sure to disable access control.\n\n### Add dependencies to your linux distro\n\n\u003chttps://docs.cypress.io/guides/continuous-integration/introduction#Dependencies\u003e\n\nFor ubuntu\n\n```sh\nsudo apt install libgtk-3-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2\n```\n\nI had issues trying to install on ubuntu 22 inside wsl2 so i fixed with:\n\n```sh\nsudo apt-get install libpcre3=2:8.39-13ubuntu0.22.04.\n```\n\n\u003chttps://github.com/TablePlus/TablePlus-Linux/issues/164\u003e\n\n### Add in your .bashrc\n\n```sh\n# set DISPLAY variable to the IP automatically assigned to WSL2\nexport DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2; exit;}'):0.0\nsudo /etc/init.d/dbus start \u0026\u003e /dev/null\n```\n\n### Grant passwordless access for dbus\n\n```sh\nsudo visudo -f /etc/sudoers.d/dbus\n```\n\nPress CTRL+O to save, then press Enter to confirm. Finally, press CTRL+X to close the editor.\n\n### Go back to your project and launch Cypress\n\n```sh\npnpm cy:open\n```\n\n**Important**: Do not forget to run Xlaunch before running cypress!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frenatoxm%2Fgatsbyshowcase","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frenatoxm%2Fgatsbyshowcase","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frenatoxm%2Fgatsbyshowcase/lists"}