{"id":20566178,"url":"https://github.com/aces/gbc_website","last_synced_at":"2026-02-16T01:38:11.067Z","repository":{"id":257977103,"uuid":"865413740","full_name":"aces/gbc_website","owner":"aces","description":"GBC website since Aug 2024, based on Leeds framework","archived":false,"fork":false,"pushed_at":"2025-03-03T18:31:36.000Z","size":57818,"stargazers_count":1,"open_issues_count":9,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-01-27T03:51:07.854Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Nunjucks","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/aces.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,"zenodo":null}},"created_at":"2024-09-30T13:46:49.000Z","updated_at":"2025-02-28T19:14:58.000Z","dependencies_parsed_at":"2025-04-14T15:55:21.642Z","dependency_job_id":null,"html_url":"https://github.com/aces/gbc_website","commit_stats":null,"previous_names":["aces/gbc_website"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aces/gbc_website","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aces%2Fgbc_website","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aces%2Fgbc_website/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aces%2Fgbc_website/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aces%2Fgbc_website/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aces","download_url":"https://codeload.github.com/aces/gbc_website/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aces%2Fgbc_website/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29498035,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-16T01:11:49.942Z","status":"ssl_error","status_checked_at":"2026-02-16T01:07:16.834Z","response_time":118,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":[],"created_at":"2024-11-16T04:40:18.971Z","updated_at":"2026-02-16T01:38:11.061Z","avatar_url":"https://github.com/aces.png","language":"Nunjucks","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Global Brain Consortium Website\n\nThis repository contains the development and distribution code for the Global Brain Consortium website.\n\n## Quick Guide to Adding Content\n\nThis section will detail how to add content to the website. For more detailed information, please read the [Content Management](#content-management) section of this README.\n\n### Request to Become a Contributor\n\nThe quickest way to add content is to be added as a contributor to the repo. You can email derek.lo@mcin.ca to request this.\n\n### Clone or Fork the Repository\n\nThe next step is to clone or fork the repository so that you can make changes locally. To do this, please read the documentation on [cloning](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) or [forking](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo).\n\nIf you would like to preview your changes locally, please follow these steps on [\"running locally\"](#running-locally).\n\n### Add a News or Event Item\n\nAfter cloning or forking the repository, go to your local drive and change the directory to the repository. Follow these steps to add a News or Event item:\n\n1) From the root directory, go to the `src/resources` folder\n2) Duplicate an existing `.njk` file and rename it using the following naming convention: `(yyyy)(mm)(dd)-name.njk`\n3) Place an image for the item in the following folder: `src/assets/images/content/news`\n4) Edit the content of the new `.njk` by changing the following fields:\n    - title: `'item title'`\n    - date: `yyyy-mm-dd`\n    - type: `resource` or `external` or `youtube` or `pdf` or `register`\n        - see [type explanation](#type) for more details\n    - image: `\"/assets/images/content/news/(filename)\"`\n    - resource_link: `\"(link to the resource. this is optional)\"`\n    - excerpt: `A brief description of the item in plain text with no special characters like colons or asteriks`\n5) Save your file\n6) Create a [pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) to `main` branch\n\nYou can see an example of how the cards look by going to the [News \u0026 Events](https://3design.github.io/gbc/resources/0/) page.\n\n### Adding Newsletters to the News and Events\n\nSimilar to [above](#add-a-news-or-event-item), adding a card for the Newsletters requires a few different steps:\n\n1) Duplicate an existing `.njk` file in the 'resources' folder.\n2) Change the name of the `.njk` file using the following naming convention: `(yyyy)(mm)(dd)-name.njk`\n3) Put the PDF in the folder `\"src/assets/images/content/newsletters/\"`\n4) Edit the content of the `.njk` file as [above](#add-a-news-or-event-item) with the following differences: \n    - type: `resource`\n    - resource_link: `\"/assets/images/content/newsletters/(filename).pdf\"`\n5) Save your file\n6) Create a [pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) to `main` branch\n\n### Add a Person to the Network\n\nThe network page contains all the members of the Global Brain Consortium. To add a member, please follow these steps:\n\n1) Place an image of the member in the following folder: `src/assets/images/people`. The aspect ratio of the image should be square\n2) From the root directory, go to the `src/raw-data` folder\n3) Open `people.tsv` with your favorite editor (.tsv stands for Tab-Separated Values)\n4) In the field labelled `slug` type in the value `(first name)-(last name)`\n5) In the field labelled `name` type in the member's name\n6) In the field labelled `image` type in the url as follows `/assets/images/people/(filename)`\n7) In the field labelled `affiliation` type in the member's affiliation, preferably a short version\n8) In the field labelled `steeringGroupMember` type in `FALSE` unless the member is part of the Steering Committee, in which case enter `TRUE`\n9) In the field labelled `expertiseTags` copy the fields from another entry and paste it here. The tag filter is not currently active on this page.\n10) In the field labelled `website` enter the url for the member's website (optional)\n11) Save the `people.tsv` file\n12) Create a [pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) to `main` branch\n\n\n---\n\n## Content Management\n\nMost maintenance of this site will involve adding small pieces of content with standard format (such as new resource listings or new network members). This is achieved using a standard process of making commits to the remote git repository. If you are not familiar with git and GitHub, [this introduction](https://docs.github.com/en/get-started/quickstart/hello-world) may be useful.\n\nIf there is only one developer maintaining the site at any given time, adding small amounts of new content to the site typically consists of three steps: adding the content to your local copy of the site (see [\"Running Locally\"](#running-locally) below); committing the changes locally to the `main` branch; and pushing those changes to the remote repository.\n\nIf multiple developers are simultaneously adding content, or if substantial amounts of new content or changes to the site structure are required, any changes should be committed to a local development branch separate from `main`. A [pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) should then be opened and reviewed by site developers before these changes are merged into the `main` branch.\n\n### Adding People to the Network\n\nData for a new member can be added to the network section of the website by editing the `src/raw_data/people.tsv` file. This file is a standard tab-separated value file which can be opened and edited in any spreadsheet software. To add a new person to the file:\n\n0) Always start by ensuring that you have the most recent version of the website code by running `git pull`. This will overwrite any changes to local files, so make sure you run this command _before_ adding any new content (and don't run it again until you have committed any changes!)\n1) Open the file in your preferred spreadsheet software\n2) Insert the data for the new person on a new row under each corresponding header, and save the file.\n    - If you need to add several new people, their data can be added on new rows all at once. No need to complete all of these steps per individual. The expertiseTags field must have data even though they are hidden on the website. It is recommended to copy/paste an entry from an existing person.\n3) Test that the site builds correctly in your local environment (see [\"Running Locally\"](#running-locally))\n    - This will automatically generate and overwrite `src/_data/people.json`, which will show up as a change in your local git repository.\n4) Check that the newly added person is visible on the network page of the locally-running site.\n5) If the person has been added successfully, commit your changes to the `people.tsv` and `people.json` files to your local master branch.\n6) Push your local main branch to the remote.\n\nThese instructions assume a single developer is maintaining the site. If multiple developers are maintaining the site, use the `pull` request process outlined previously.\n\n### Adding Partners to the Network\nData for a new partner can be added by editing the `src/raw_data/partners.tsv` file. See \"Adding new people\" above.\n\n### Adding News and Events to the Site\n\nNews \u0026 Events are links to information distributed by the collaboration. These are stored as `.njk` files in the `src/resources/` directory. To add a new resource, copy one of the existing files and give it a new name appropriate for the resource content being added. You can then open the file to change its content, committing the changes as described [above](#adding-people-to-the-network):\n\n#### `title`\nA short title for the resource, which will be displayed on the resources page.\n\n#### `date`\nA date for the resource (e.g. publication date) in `yyyy-mm-dd` format\n\n#### `type`\nThere are four types of posts:\n- resource | Use this type to indicate a link that goes to another page or content that is located on this website. The label is `Read More`\n- external | Use this type to indicate a link that goes to an external web address. The label is `Go To Link`\n- youtube | Use this type to indicate a link goes to youtube. The label is `View on YouTube`\n- pdf | Use this type to indicate a link opens a pdf in the browser. The label is `Open PDF`\n- register | Use this type to indicate a link that goes to a registration site. The label is `Register to Attend`\n\n#### `image`\nAn optional filepath pointing to an image file to be displayed with the resource. This can be replaced with \"\" (empty opening and closing quotes) if no image is needed. Otherwise it should be a filepath starting with `/assets/images/content/(folder name)`. Ensure that you copy the image into this directory so that it will be added to the website.\n\n#### `resource_link`: \nAn optional URL enclosed in quotation marks, linking to the resource at another location on the web.\n\ne.g.:\n`resource_link:\"https://osf.io/6khrv/\"`\n\n#### `excerpt`\nA short description of the resource which will be displayed as text on the resources page. This must be written on a single line.\n\n### Expertise Tags\n\nA list of expertise tags that members can choose from is stored in `src/_data/expertiseTags.json`. They are stored in the \"tags\" property as string entries in a list. To add a new expertise tag, just add a new string to the list. As mentioned above, this feature is not currently in use. Please just copy the expertise from a previous entry.\n\n### Other Content\n\nIn the current version of the website, most other content is hard-coded into the HTML or `.njk` template files. You can edit this content by editing these files in the `src` directory. Note that all content in the `dist` directory is automatically generated and changes will be overwritten when the site is built.\n\n## Running, Building, and Deploying\n### Running Locally\nTo run a local version of the website for development purposes:\n\n1) Install the prerequisite dependencies:\n    - [git](https://git-scm.com/)\n    - [node (version 20.9.0)](https://nodejs.org/en)\n2) [Clone this repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) to your local computer\n3) In a terminal, `cd` into the root directory of the cloned repo\n4) Run `npm install` to install the dependencies required to build the website\n5) Run `npm start` to serve the website locally (by default, it will be served on [localhost:8080](http://localhost:8080))\n\n### Building and Deploying\nThe public version of the website will be built and deployed automatically when a commit is made to the `main` branch of this repository. To run the build script locally, follow the instructions in [\"Running Locally\"](#running-locally), replacing the final step with the command `npm build`.\n\n### Issues with website not building after a commit\nThere is a [custom script](https://github.com/aces/gbc_website/blob/main/.github/workflows/build-and-deploy.yml) in the code that is run when committing changes or merging branches to the `main` branch of this repo. It is recommended not to change the settings in this file unless you have cloned or forked the repo to another repository.\n\nThere may be an instance where the site does not automatically build with the updated content committed. This may be because the workflow did not run correctly. To check, click on the [Actions](https://github.com/aces/gbc_website/actions) tab on the repo. On this page you will see a list of all the workflows that were run. Failed workflows are marked in red. You can click on them for details.\n\nIf you see the error message 'Action failed with \"The process '/usr/bin/git' failed with exit code 128\"' or similar, it could be that the [custom script](https://github.com/aces/gbc_website/blob/main/.github/workflows/build-and-deploy.yml) has failed to copy the newly built files to the repo. One possible reason for this failure is that the GitHub security key has expired. The key gives the script permission to deploy code to a webserver. \n\nTo fix this, you'll need to create your own public and secret key pair in GitHub to allow the build script to run properly. [Here's some information](https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-create-ssh-deploy-key) on how to do so. You'll need to run a command, probably in git bash on your local machine, then copy the generated keys into the GitHub.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faces%2Fgbc_website","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faces%2Fgbc_website","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faces%2Fgbc_website/lists"}