diff --git a/.github/dependabot.yml b/.github/dependabot.yml deleted file mode 100644 index 6b381042..00000000 --- a/.github/dependabot.yml +++ /dev/null @@ -1,19 +0,0 @@ -version: 2 -updates: - - package-ecosystem: npm - directory: / - schedule: - interval: monthly - allow: - - dependency-type: direct - ignore: - - dependency-name: react - versions: [">16"] - - dependency-name: stylelint - versions: [">14"] - - dependency-name: stylelint-config-standard-scss - versions: [">7"] - - package-ecosystem: github-actions - directory: / - schedule: - interval: monthly diff --git a/.github/workflows/lint-build.yml b/.github/workflows/lint-build.yml index 5a2615a5..06d11f64 100644 --- a/.github/workflows/lint-build.yml +++ b/.github/workflows/lint-build.yml @@ -9,21 +9,12 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - name: Cache node modules - uses: actions/cache@v4 + - uses: actions/setup-node@v4 with: - path: node_modules - key: ${{ runner.OS }}-build-${{ hashFiles('**/package-lock.json') }} + cache: npm - name: Install dependencies run: npm install - env: - CI: true - name: Lint files run: npm run lint - env: - CI: true - name: Build site run: npm run build - env: - CI: true - diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml index 85d10fdd..ae23ca16 100644 --- a/.github/workflows/release-please.yml +++ b/.github/workflows/release-please.yml @@ -8,7 +8,7 @@ jobs: release-please: runs-on: ubuntu-latest steps: - - uses: google-github-actions/release-please-action@v4 + - uses: googleapis/release-please-action@v4 id: release with: token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.nvmrc b/.nvmrc index 3c032078..2bd5a0a9 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -18 +22 diff --git a/package-lock.json b/package-lock.json index 90a1fd10..1fdf8026 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,41 +9,41 @@ "version": "1.7.1", "license": "BSD-3-Clause", "dependencies": { - "@11ty/eleventy": "2.0.1", - "@11ty/eleventy-img": "6.0.1", - "@11ty/eleventy-navigation": "0.3.5", - "@babel/standalone": "7.25.3", + "@11ty/eleventy": "^2.0.1", + "@11ty/eleventy-img": "^6.0.1", + "@11ty/eleventy-navigation": "^0.3.5", + "@babel/standalone": "^7.25.3", "@zachleat/filter-container": "greatislander/filter-container#feat/paginated-results", - "decap-cms": "3.6.2", - "eleventy-plugin-fluid": "2.7.1", - "infusion": "4.8.0", - "modern-css-reset": "1.4.0", - "prop-types": "15.8.1", - "react": "16.14.0", - "wicg-inert": "3.1.2" + "decap-cms": "^3.6.2", + "eleventy-plugin-fluid": "^2.7.1", + "infusion": "^4.8.0", + "modern-css-reset": "^1.4.0", + "prop-types": "^15.8.1", + "react": "^16.14.0", + "wicg-inert": "^3.1.2" }, "devDependencies": { - "@commitlint/cli": "19.3.0", - "@commitlint/config-conventional": "19.7.1", - "cross-env": "7.0.3", - "decap-server": "3.0.4", - "eslint": "8.57.0", - "eslint-config-fluid": "2.1.1", - "eslint-plugin-jsdoc": "48.10.2", - "eslint-plugin-markdown": "4.0.1", - "eslint-plugin-yml": "1.17.0", - "husky": "9.0.11", - "image-size": "1.1.1", - "linkedom": "0.18.4", - "lint-staged": "15.2.2", - "markdownlint-cli2": "0.9.2", - "markdownlint-config-fluid": "0.1.5", - "npm-run-all": "4.1.5", - "rimraf": "5.0.5", - "stylelint": "14.16.1", - "stylelint-config-fluid": "1.0.0", - "stylelint-config-standard-scss": "6.1.0", - "stylelint-use-logical-spec": "5.0.1" + "@commitlint/cli": "^19.3.0", + "@commitlint/config-conventional": "^19.7.1", + "cross-env": "^7.0.3", + "decap-server": "^3.0.4", + "eslint": "^8.57.0", + "eslint-config-fluid": "^2.1.1", + "eslint-plugin-jsdoc": "^48.10.2", + "eslint-plugin-markdown": "^4.0.1", + "eslint-plugin-yml": "^1.17.0", + "husky": "^9.0.11", + "image-size": "^1.1.1", + "linkedom": "^0.18.4", + "lint-staged": "^15.2.2", + "markdownlint-cli2": "^0.9.2", + "markdownlint-config-fluid": "^0.1.5", + "npm-run-all": "^4.1.5", + "rimraf": "^5.0.5", + "stylelint": "^14.16.1", + "stylelint-config-fluid": "^1.0.0", + "stylelint-config-standard-scss": "^6.1.0", + "stylelint-use-logical-spec": "^5.0.1" } }, "node_modules/@11ty/dependency-tree": { @@ -20452,7 +20452,7 @@ "@zachleat/filter-container": { "version": "git+ssh://git@github.com/greatislander/filter-container.git#4a2ebb93bf06f06af5425b74523f9bf96d5632bf", "integrity": "sha512-ToDK0/AOmgGO+BCwIiQTr4dbw0SsuBjEofFyPh/+B9mwrQ0QkMP8BtvzaPZXmhDoTcNMtZCPXwvm4BGJTGz4iw==", - "from": "@zachleat/filter-container@github:greatislander/filter-container#4a2ebb93bf06f06af5425b74523f9bf96d5632bf" + "from": "@zachleat/filter-container@greatislander/filter-container#feat/paginated-results" }, "a-sync-waterfall": { "version": "1.0.1", diff --git a/package.json b/package.json index 363560c9..03a93d22 100644 --- a/package.json +++ b/package.json @@ -30,41 +30,41 @@ }, "homepage": "https://github.com/codelearncreate/weavly.org#readme", "dependencies": { - "@11ty/eleventy": "2.0.1", - "@11ty/eleventy-img": "6.0.1", - "@11ty/eleventy-navigation": "0.3.5", - "@babel/standalone": "7.25.3", + "@11ty/eleventy": "^2.0.1", + "@11ty/eleventy-img": "^6.0.1", + "@11ty/eleventy-navigation": "^0.3.5", + "@babel/standalone": "^7.25.3", "@zachleat/filter-container": "greatislander/filter-container#feat/paginated-results", - "decap-cms": "3.6.2", - "eleventy-plugin-fluid": "2.7.1", - "infusion": "4.8.0", - "modern-css-reset": "1.4.0", - "prop-types": "15.8.1", - "react": "16.14.0", - "wicg-inert": "3.1.2" + "decap-cms": "^3.6.2", + "eleventy-plugin-fluid": "^2.7.1", + "infusion": "^4.8.0", + "modern-css-reset": "^1.4.0", + "prop-types": "^15.8.1", + "react": "^16.14.0", + "wicg-inert": "^3.1.2" }, "devDependencies": { - "@commitlint/cli": "19.3.0", - "@commitlint/config-conventional": "19.7.1", - "cross-env": "7.0.3", - "decap-server": "3.0.4", - "eslint": "8.57.0", - "eslint-config-fluid": "2.1.1", - "eslint-plugin-jsdoc": "48.10.2", - "eslint-plugin-markdown": "4.0.1", - "eslint-plugin-yml": "1.17.0", - "husky": "9.0.11", - "image-size": "1.1.1", - "linkedom": "0.18.4", - "lint-staged": "15.2.2", - "markdownlint-cli2": "0.9.2", - "markdownlint-config-fluid": "0.1.5", - "npm-run-all": "4.1.5", - "rimraf": "5.0.5", - "stylelint": "14.16.1", - "stylelint-config-fluid": "1.0.0", - "stylelint-config-standard-scss": "6.1.0", - "stylelint-use-logical-spec": "5.0.1" + "@commitlint/cli": "^19.3.0", + "@commitlint/config-conventional": "^19.7.1", + "cross-env": "^7.0.3", + "decap-server": "^3.0.4", + "eslint": "^8.57.0", + "eslint-config-fluid": "^2.1.1", + "eslint-plugin-jsdoc": "^48.10.2", + "eslint-plugin-markdown": "^4.0.1", + "eslint-plugin-yml": "^1.17.0", + "husky": "^9.0.11", + "image-size": "^1.1.1", + "linkedom": "^0.18.4", + "lint-staged": "^15.2.2", + "markdownlint-cli2": "^0.9.2", + "markdownlint-config-fluid": "^0.1.5", + "npm-run-all": "^4.1.5", + "rimraf": "^5.0.5", + "stylelint": "^14.16.1", + "stylelint-config-fluid": "^1.0.0", + "stylelint-config-standard-scss": "^6.1.0", + "stylelint-use-logical-spec": "^5.0.1" }, "lint-staged": { "*.scss": "stylelint --fix", diff --git a/renovate.json b/renovate.json new file mode 100644 index 00000000..928f87a0 --- /dev/null +++ b/renovate.json @@ -0,0 +1,16 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": ["config:recommended"], + "commitBody": "[skip netlify]", + "lockFileMaintenance": { + "enabled": true, + "automerge": true + }, + "packageRules": [ + { + "matchUpdateTypes": ["minor", "patch"], + "matchCurrentVersion": "!/^0/", + "automerge": true + } + ] +} diff --git a/src/_includes/layouts/about.njk b/src/_includes/layouts/about.njk index 810bce76..9e81169f 100644 --- a/src/_includes/layouts/about.njk +++ b/src/_includes/layouts/about.njk @@ -41,19 +41,29 @@
-
+
+

{{ whoSection.partnersTitle }}

{% for partner in whoSection.partners %}
{% image partner.image, partner.imageAlt, 640, 520 %} -

{{ partner.name }}{% if partner.acronym %} ({{ partner.acronym }}){% endif %}

+

{{ partner.name }}{% if partner.acronym %} ({{ partner.acronym }}){% endif %}

{% renderString partner.content, "md" %}

Visit {{ partner.acronym if partner.acronym else partner.name }} website

{% endfor %}
+
+

{{ whoSection.communityTitle }}

+ {% renderString whoSection.community, "md" %} +
+
+ {% for communityMember in whoSection.communityMembers %} + + {% endfor %} +
diff --git a/src/_includes/layouts/base.njk b/src/_includes/layouts/base.njk index e6434a28..0a9279bb 100644 --- a/src/_includes/layouts/base.njk +++ b/src/_includes/layouts/base.njk @@ -26,7 +26,7 @@ {% block pageHeader %}

{{ title }}

{% if subtitle %} -

{{ subtitle | safe }}

+
{% renderString subtitle, "md" %}
{% endif %} {% if page.url === "/" %}

Create

diff --git a/src/about.md b/src/about.md index 135d9ac9..3b3b75ef 100644 --- a/src/about.md +++ b/src/about.md @@ -10,7 +10,11 @@ whatWeDoSection: link: /learn/#activities whoSection: title: Who We Are - intro: "**Weavly** is a collaborative effort between the Inclusive Design Research Centre, IRIS Institute, and the Bridges Canada. This project is funded by the Innovation, Science and Economic Development Canada’s Accessible Technology Program." + intro: "**Weavly** is a collaborative effort between the Inclusive Design + Research Centre, IRIS Institute, and the Bridges Canada. This project is + funded by the Innovation, Science and Economic Development Canada’s + Accessible Technology Program." + partnersTitle: Partners partners: - name: Inclusive Design Research Centre acronym: IDRC @@ -31,6 +35,54 @@ whoSection: image: /assets/media/20122485921_8dfcf134e3_o.jpg imageAlt: "Image of several kids talking. One of the kids is seated on a powered wheelchair and using a single switch. " + communityTitle: Community + community: >- + Weavly is built upon the efforts and contributions of many young and adult + co-designers, family members, educators, and caregivers over the years. + Without their insights and dedication, this project would not have been + possible. Due to privacy reasons, we are unable to list their names here, + but we are always deeply grateful for their invaluable contributions. + + + We would like to acknowledge the individuals and community-based groups who facilitated connections with our co-designers and significantly contributed to the progress of this project. + + + If you have contributed to Weavly in any capacity and would like your name to be included, please contact our team at weavly@idrc.ocadu.ca. + communityMembers: + - name: Alberta Health Services + link: https://www.albertahealthservices.ca/ + - name: Beverely School - Toronto District School Board + link: https://schoolweb.tdsb.on.ca/beverleyschool + - name: Alan Bridgeman + link: https://www.linkedin.com/in/alan-bridgeman-234490113/ + - name: Burnaby Schools + link: https://burnabyschools.ca/ + - name: Camp Karma + link: https://www.veryspecialcamps.com/summer-camps/Karma-Country-Camp-for-Teenagers-and-Young-Adults-with-ASD-and-Special-Needs-2675.html + - name: Grandpals + link: https://grandpals.ca/ + - name: Holland Bloorview + link: https://hollandbloorview.ca/ + - name: Hour of Code + link: https://hourofcode.com/ca + - name: Kayla Children’s Centre + link: https://kaylaschildrencentre.org/ + - name: Kensington Community School - Toronto District School Board + link: https://www.tdsb.on.ca/Find-your/Schools/schno/5347 + - name: Melanie Mulcaster - Peel School Board + link: https://www.linkedin.com/in/mel-mulcaster-9541a549/ + - name: PhET Interactive Simulations - University of Colorado at Boulder + link: https://phet.colorado.edu/ + - name: Playful Strides + link: https://playfulstrides.com/ + - name: SD48 + link: https://www.sd48seatosky.org/ + - name: Taking It Global + link: https://welcome.tigweb.org/en + - name: Tetra TMU - Toronto Metropolitan University + link: https://www.instagram.com/tetratmu/ + - name: Adam Wilton + link: https://www.brailleliteracycanada.ca/en/about/board/adam-wilton layout: layouts/about permalink: /about/ goalSection: @@ -46,13 +98,20 @@ goalSection: callToActionLink: https://www.codelearncreate.org/blog/ headerBg: teal-75 title: About -subtitle: We’re designing educational coding tools for kids who have been left - out of learning—especially those with complex needs. +subtitle: >- + We’re designing educational coding tools for kids who have been left out of + learning—especially those with complex needs. + + + For notes on co-design sessions and other project updates, please visit the [Code to Learn and Create + + site](https://codelearncreate.org/). eleventyNavigation: key: About order: 6 connectSection: title: Connect titleLink: mailto:idrc@ocadu.ca - content: Please email the project leads at the Inclusive Design Research Centre and the IRIS institute if you’d like to be part of this conversation. + content: Please email the project leads at the Inclusive Design Research Centre + and the IRIS institute if you’d like to be part of this conversation. --- diff --git a/src/admin/config.yml b/src/admin/config.yml index 10a05ac9..de52037a 100644 --- a/src/admin/config.yml +++ b/src/admin/config.yml @@ -1,4 +1,3 @@ - backend: name: git-gateway branch: main @@ -26,8 +25,14 @@ collections: fields: - {label: Title, name: title, widget: string} - {label: Subtitle, name: subtitle, widget: text} - - {label: Header Call to Action Text, name: headerCallToActionText, widget: string} - - {label: Header Call to Action Link, name: headerCallToActionLink, widget: string} + - label: Header Call to Action Text + name: headerCallToActionText + widget: string + + - label: Header Call to Action Link + name: headerCallToActionLink + widget: string + - label: Create Section name: createSection widget: object @@ -48,8 +53,14 @@ collections: - {label: Content, name: content, widget: text} - {label: Image, name: image, widget: image} - {label: Image Alt Text, name: imageAlt, widget: string} - - {label: Call to Action Text, name: callToActionText, widget: string} - - {label: Call to Action Link, name: callToActionLink, widget: string} + - label: Call to Action Text + name: callToActionText + widget: string + + - label: Call to Action Link + name: callToActionLink + widget: string + - label: About Section name: aboutSection widget: object @@ -58,8 +69,14 @@ collections: - {label: Content, name: content, widget: text} - {label: Image, name: image, widget: image} - {label: Image Alt Text, name: imageAlt, widget: string} - - {label: Call to Action Text, name: callToActionText, widget: string} - - {label: Call to Action Link, name: callToActionLink, widget: string} + - label: Call to Action Text + name: callToActionText + widget: string + + - label: Call to Action Link + name: callToActionLink + widget: string + - label: Try Section name: trySection widget: object @@ -83,8 +100,14 @@ collections: - {label: Content, name: content, widget: text} - {label: Image, name: image, widget: image} - {label: Image Alt Text, name: imageAlt, widget: string} - - {label: Call to Action Text, name: callToActionText, widget: string} - - {label: Call to Action Link, name: callToActionLink, widget: string} + - label: Call to Action Text + name: callToActionText + widget: string + + - label: Call to Action Link + name: callToActionLink + widget: string + - label: Activities Section name: activitiesSection widget: object @@ -106,8 +129,14 @@ collections: - {label: Content, name: content, widget: text} - {label: Image, name: image, widget: image} - {label: Image Alt Text, name: imageAlt, widget: string} - - {label: Call to Action Text, name: callToActionText, widget: string} - - {label: Call to Action Link, name: callToActionLink, widget: string} + - label: Call to Action Text + name: callToActionText + widget: string + + - label: Call to Action Link + name: callToActionLink + widget: string + - label: Trainings & Workshops Section name: trainingsSection widget: object @@ -116,8 +145,14 @@ collections: - {label: Content, name: content, widget: text} - {label: Image, name: image, widget: image} - {label: Image Alt Text, name: imageAlt, widget: string} - - {label: Call to Action Text, name: callToActionText, widget: string} - - {label: Call to Action Link, name: callToActionLink, widget: string} + - label: Call to Action Text + name: callToActionText + widget: string + + - label: Call to Action Link + name: callToActionLink + widget: string + - label: Share Section name: shareSection widget: object @@ -171,7 +206,7 @@ collections: preview: false fields: - {label: Title, name: title, widget: string} - - {label: Subtitle, name: subtitle, widget: text} + - {label: Subtitle, name: subtitle, widget: markdown} - label: Goal Section name: goalSection widget: object @@ -180,8 +215,14 @@ collections: - {label: Content, name: content, widget: text} - {label: Image, name: image, widget: image} - {label: Image Alt Text, name: imageAlt, widget: string} - - {label: Call to Action Text, name: callToActionText, widget: string} - - {label: Call to Action Link, name: callToActionLink, widget: string} + - label: Call to Action Text + name: callToActionText + widget: string + + - label: Call to Action Link + name: callToActionLink + widget: string + - label: What We Do Section name: whatWeDoSection widget: object @@ -199,16 +240,29 @@ collections: fields: - {label: Title, name: title, widget: string} - {label: Intro, name: intro, widget: markdown} + - {label: Partners Title, name: partnersTitle, widget: string} - label: Partners name: partners widget: list fields: - {label: Name, name: name, widget: string} - - {label: Acronym, name: acronym, widget: string, required: false} + - label: Acronym + name: acronym + widget: string + required: false + - {label: Content, name: content, widget: text} - {label: Link, name: link, widget: string} - {label: Image, name: image, widget: image} - {label: Image Alt Text, name: imageAlt, widget: string} + - {label: Community Title, name: communityTitle, widget: string} + - {label: Community Content, name: community, widget: markdown} + - label: Community Members + name: communityMembers + widget: list + fields: + - {label: Name, name: name, widget: string} + - {label: Link, name: link, widget: string} - label: Connect Section name: connectSection widget: object @@ -232,8 +286,14 @@ collections: - {label: Content, name: content, widget: text} - {label: Image, name: image, widget: image} - {label: Image Alt Text, name: imageAlt, widget: string} - - {label: Call to Action Text, name: callToActionText, widget: string} - - {label: Call to Action Link, name: callToActionLink, widget: string} + - label: Call to Action Text + name: callToActionText + widget: string + + - label: Call to Action Link + name: callToActionLink + widget: string + - label: Outcomes Section name: outcomesSection widget: object @@ -246,7 +306,11 @@ collections: fields: - {label: Title, name: title, widget: string} - {label: Link, name: link, widget: string} - - {label: Download, name: download, widget: boolean, default: false} + - label: Download + name: download + widget: boolean + default: false + - {label: Content, name: content, widget: markdown} - label: Next Steps Section name: nextStepsSection @@ -266,7 +330,11 @@ collections: widget: list fields: - {label: Name, name: name, widget: string} - - {label: Acronym, name: acronym, widget: string, required: false} + - label: Acronym + name: acronym + widget: string + required: false + - {label: Content, name: content, widget: text} - {label: Link, name: link, widget: string} - {label: Image, name: image, widget: image} @@ -300,10 +368,26 @@ collections: - {label: Title, name: title, widget: string} - {label: Date, name: date, widget: datetime, timeFormat: false} - {label: Author, name: author, widget: string, required: false} - - {label: Resource Type, name: type, widget: relation, collection: siteData, file: resourceTags, value_field: types.*, display_fields: [types.*], search_fields: [types.*]} + - label: Resource Type + name: type + widget: relation + collection: siteData + file: resourceTags + value_field: types.* + display_fields: [types.*] + search_fields: [types.*] + - {label: Description, name: description, widget: text, required: false} - - {label: Preview Image, name: metaImage, widget: image, required: false} - - {label: Preview Image Alt Text, name: metaImageAlt, widget: string, required: false} + - label: Preview Image + name: metaImage + widget: image + required: false + + - label: Preview Image Alt Text + name: metaImageAlt + widget: string + required: false + - {label: Body, name: body, widget: markdown} - label: Supportive Material name: supportiveMaterial @@ -324,13 +408,54 @@ collections: create: true fields: - {label: Title, name: title, widget: string} - - {label: Type, name: type, widget: relation, collection: siteData, file: activityTags, value_field: types.*, display_fields: [types.*], search_fields: [types.*]} - - {label: Coding Experience Level, name: experience, widget: relation, collection: siteData, file: activityTags, value_field: experience.*, display_fields: [experience.*], search_fields: [experience.*]} - - {label: Subject, name: subject, widget: relation, collection: siteData, file: activityTags, value_field: subjects.*, display_fields: [subjects.*], search_fields: [subjects.*]} - - {label: Related Activities, name: relatedActivities, widget: relation, collection: activities, search_fields: [title], value_field: title, display_fields: [title], multiple: true, required: false} + - label: Type + name: type + widget: relation + collection: siteData + file: activityTags + value_field: types.* + display_fields: [types.*] + search_fields: [types.*] + + - label: Coding Experience Level + name: experience + widget: relation + collection: siteData + file: activityTags + value_field: experience.* + display_fields: [experience.*] + search_fields: [experience.*] + + - label: Subject + name: subject + widget: relation + collection: siteData + file: activityTags + value_field: subjects.* + display_fields: [subjects.*] + search_fields: [subjects.*] + + - label: Related Activities + name: relatedActivities + widget: relation + collection: activities + search_fields: [title] + value_field: title + display_fields: [title] + multiple: true + required: false + - {label: Description, name: description, widget: text, required: false} - - {label: Preview Image, name: metaImage, widget: image, required: false} - - {label: Preview Image Alt Text, name: metaImageAlt, widget: string, required: false} + - label: Preview Image + name: metaImage + widget: image + required: false + + - label: Preview Image Alt Text + name: metaImageAlt + widget: string + required: false + - label: What You Need name: whatYouNeed widget: markdown @@ -360,13 +485,55 @@ collections: create: true fields: - {label: Title, name: title, widget: string} - - {label: Robot, name: tags, widget: relation, multiple: true, max: 1, collection: guides, value_field: title, display_fields: [title], search_fields: [title]} - - {label: Coding Experience Level, name: experience, widget: relation, collection: siteData, file: robotActivityTags, value_field: experience.*, display_fields: [experience.*], search_fields: [experience.*]} - - {label: Topic, name: topic, widget: relation, collection: siteData, file: robotActivityTags, value_field: topics.*, display_fields: [topics.*], search_fields: [topics.*]} - - {label: Related Activities with Robots, name: relatedRobotActivities, widget: relation, collection: robotActivities, search_fields: [title], value_field: title, display_fields: [title], multiple: true, required: false} + - label: Robot + name: tags + widget: relation + multiple: true + max: 1 + collection: guides + value_field: title + display_fields: [title] + search_fields: [title] + + - label: Coding Experience Level + name: experience + widget: relation + collection: siteData + file: robotActivityTags + value_field: experience.* + display_fields: [experience.*] + search_fields: [experience.*] + + - label: Topic + name: topic + widget: relation + collection: siteData + file: robotActivityTags + value_field: topics.* + display_fields: [topics.*] + search_fields: [topics.*] + + - label: Related Activities with Robots + name: relatedRobotActivities + widget: relation + collection: robotActivities + search_fields: [title] + value_field: title + display_fields: [title] + multiple: true + required: false + - {label: Description, name: description, widget: text, required: false} - - {label: Preview Image, name: metaImage, widget: image, required: false} - - {label: Preview Image Alt Text, name: metaImageAlt, widget: string, required: false} + - label: Preview Image + name: metaImage + widget: image + required: false + + - label: Preview Image Alt Text + name: metaImageAlt + widget: string + required: false + - label: What You Need name: whatYouNeed widget: markdown @@ -403,12 +570,37 @@ collections: create: true fields: - {label: Title, name: title, widget: string} - - {label: Type, name: type, widget: relation, collection: siteData, file: projectTags, value_field: types.*, display_fields: [types.*], search_fields: [types.*], required: false} - - {label: Category, name: category, widget: relation, collection: siteData, file: projectTags, value_field: categories.*, display_fields: [categories.*], search_fields: [categories.*]} + - label: Type + name: type + widget: relation + collection: siteData + file: projectTags + value_field: types.* + display_fields: [types.*] + search_fields: [types.*] + required: false + + - label: Category + name: category + widget: relation + collection: siteData + file: projectTags + value_field: categories.* + display_fields: [categories.*] + search_fields: [categories.*] + - {label: Link, name: link, widget: string} - {label: Description, name: description, widget: text, required: false} - - {label: Preview Image, name: metaImage, widget: image, required: false} - - {label: Preview Image Alt Text, name: metaImageAlt, widget: string, required: false} + - label: Preview Image + name: metaImage + widget: image + required: false + + - label: Preview Image Alt Text + name: metaImageAlt + widget: string + required: false + - name: guides label: Manufacturer’s Guides label_singular: Manufacturer’s Guide @@ -421,8 +613,16 @@ collections: - {label: Title, name: title, widget: string} - {label: Manufacturer, name: manufacturer, widget: string} - {label: Manufacturer Link, name: manufacturerLink, widget: string} - - {label: Preview Image, name: metaImage, widget: image, required: false} - - {label: Preview Image Alt Text, name: metaImageAlt, widget: string, required: false} + - label: Preview Image + name: metaImage + widget: image + required: false + + - label: Preview Image Alt Text + name: metaImageAlt + widget: string + required: false + - label: Learning Resources name: resources widget: list diff --git a/src/assets/styles/app.scss b/src/assets/styles/app.scss index 51554a49..d505d34e 100644 --- a/src/assets/styles/app.scss +++ b/src/assets/styles/app.scss @@ -33,6 +33,7 @@ "components/call-to-action", "components/callout", "components/card", + "components/community", "components/filters", "components/grid-image", "components/grid-video", diff --git a/src/assets/styles/components/_community.scss b/src/assets/styles/components/_community.scss new file mode 100644 index 00000000..082cc42c --- /dev/null +++ b/src/assets/styles/components/_community.scss @@ -0,0 +1,13 @@ +.community-members .community-member { + display: flex; + flex-direction: column; + justify-content: flex-start; + margin-block-end: var(--space-md); + text-align: start; +} + +@media (width >= 960px) { + .community-members { + columns: 2; + } +}