diff --git a/.github/ISSUE_TEMPLATE/icon_request.yml b/.github/ISSUE_TEMPLATE/icon_request.yml index 5bb1c63837eb..df29ded6e133 100644 --- a/.github/ISSUE_TEMPLATE/icon_request.yml +++ b/.github/ISSUE_TEMPLATE/icon_request.yml @@ -42,17 +42,14 @@ body: attributes: label: Popularity Metric description: >- - Provide either a [Similarweb rank] or the number of GitHub stars. If - Similarweb does not have a rank for your brand or the rank fails to meet our - requirements, we can also accept an [Alexa rank] as an alternative. If these - are not available or too low you can still open the issue. In this case, - please provide any information regarding the brand's popularity you think is - relevant. + Provide either a [Similarweb rank], which must range from 0-500,000 to qualify + or the number of GitHub stars, which must be above 5,000 to qualify. If + Similarweb does not have a rank for your brand or these numbers do not meet + our requirements, you can still open the issue. In this case, please provide + any information regarding the brand's popularity you think is relevant. [Similarweb rank]: https://www.similarweb.com - - [Alexa rank]: https://www.alexa.com/siteinfo placeholder: 'Example: The Similarweb rank is 261,758. See https://www.similarweb.com/website/simpleicons.org' validations: required: true diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml index 435452f14fea..5129f1ce61aa 100644 --- a/.github/workflows/create-release.yml +++ b/.github/workflows/create-release.yml @@ -23,7 +23,7 @@ jobs: did-create-pr: ${{ steps.release.outputs.did-create-pr }} new-version: ${{ steps.release.outputs.new-version }} steps: - - uses: simple-icons/release-action@master + - uses: simple-icons/release-action@v1 id: release with: repo-token: ${{ secrets.GITHUB_TOKEN }} @@ -35,7 +35,7 @@ jobs: needs.release-pr.outputs.did-create-pr == 'true' steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: # Ensure the commit can be pushed regardless of branch protections (must belong to an admin of this repo) token: ${{ secrets.RELEASE_TOKEN }} @@ -50,7 +50,7 @@ jobs: - name: Update slugs table run: node ./scripts/release/update-slugs-table.js - name: Commit version bump - uses: stefanzweifel/git-auto-commit-action@v4.13.1 + uses: stefanzweifel/git-auto-commit-action@v4.14.1 with: commit_message: version bump commit_user_name: 'github-actions[bot]' diff --git a/.github/workflows/merge-release.yml b/.github/workflows/merge-release.yml index 29e654f975b5..cf7db3b53232 100644 --- a/.github/workflows/merge-release.yml +++ b/.github/workflows/merge-release.yml @@ -8,6 +8,6 @@ jobs: runs-on: ubuntu-latest if: contains(github.event.pull_request.labels.*.name, 'release') steps: - - uses: simple-icons/release-action@master + - uses: simple-icons/release-action@v1 with: repo-token: ${{ secrets.RELEASE_TOKEN }} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 969882c68196..b17c0024d621 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -10,13 +10,13 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Use Node.js 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x - name: Cache dependencies - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }} @@ -36,13 +36,13 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Use Node.js 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x - name: Cache dependencies - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }} @@ -65,7 +65,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Get commit message (for release title and body) id: commit uses: kceb/git-message-action@v1 diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml index 6db8d1fbfaf6..2ebe97c4b0dc 100644 --- a/.github/workflows/verify.yml +++ b/.github/workflows/verify.yml @@ -7,13 +7,13 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Use Node.js 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x - name: Cache dependencies - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }} @@ -28,13 +28,13 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Use Node.js 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x - name: Cache dependencies - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }} @@ -67,13 +67,13 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Use Node.js 16.x - uses: actions/setup-node@v2 + uses: actions/setup-node@v3 with: node-version: 16.x - name: Cache dependencies - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }} diff --git a/Dockerfile b/Dockerfile index 4ba56f92c94e..6cd532e79177 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:17-alpine +FROM node:18-alpine RUN apk add --no-cache \ git diff --git a/_data/simple-icons.json b/_data/simple-icons.json index 70391b465bfa..729b452bbd17 100644 --- a/_data/simple-icons.json +++ b/_data/simple-icons.json @@ -3100,6 +3100,11 @@ "hex": "0D47A1", "source": "https://www.enpass.io/press/" }, + { + "title": "EnterpriseDB", + "hex": "FF3E00", + "source": "https://www.enterprisedb.com/" + }, { "title": "Envato", "hex": "81B441", @@ -4345,6 +4350,12 @@ "source": "https://github.com/gruntjs/gruntjs.com/blob/70f43898d9ce8e6cc862ad72bf8a7aee5ca199a9/src/media/grunt-logo-no-wordmark.svg", "guidelines": "https://github.com/gruntjs/grunt-docs/blob/main/Grunt-Brand-Guide.md" }, + { + "title": "GTK", + "hex": "7FE719", + "source": "https://commons.wikimedia.org/wiki/File:GTK_logo.svg", + "guidelines": "https://foundation.gnome.org/logo-and-trademarks/" + }, { "title": "Guangzhou Metro", "hex": "C51935", @@ -6263,6 +6274,11 @@ "hex": "FF0000", "source": "https://cars.mclaren.com/" }, + { + "title": "mdBook", + "hex": "000000", + "source": "https://github.com/rust-lang/mdBook/blob/cdfa5ad9909e2cba8390688f3f0686fb70cb4bef/src/theme/favicon.svg" + }, { "title": "MDN Web Docs", "hex": "000000", @@ -8992,6 +9008,14 @@ "hex": "00BCF6", "source": "https://www.rtl2.de/" }, + { + "title": "RuboCop", + "hex": "000000", + "source": "https://github.com/rubocop-semver/rubocop-ruby2_0/blob/5302f93058f7b739a73a7a6c11c566a2b196b96e/docs/images/logo/rubocop-light.svg", + "license": { + "type": "CC-BY-NC-4.0" + } + }, { "title": "Ruby", "hex": "CC342D", @@ -9994,6 +10018,12 @@ "source": "https://partner.steamgames.com/doc/marketing/branding", "guidelines": "https://partner.steamgames.com/doc/marketing/branding" }, + { + "title": "Steam Deck", + "hex": "1A9FFF", + "source": "https://partner.steamgames.com/doc/marketing/branding", + "guidelines": "https://partner.steamgames.com/doc/marketing/branding" + }, { "title": "SteamDB", "hex": "000000", @@ -10915,7 +10945,7 @@ { "title": "Ubuntu", "hex": "E95420", - "source": "https://design.ubuntu.com/brand/ubuntu-logo/", + "source": "https://design.ubuntu.com/downloads/", "guidelines": "https://design.ubuntu.com/brand/ubuntu-logo/" }, { diff --git a/icons/enterprisedb.svg b/icons/enterprisedb.svg new file mode 100644 index 000000000000..9d087a0be13b --- /dev/null +++ b/icons/enterprisedb.svg @@ -0,0 +1 @@ +EnterpriseDB \ No newline at end of file diff --git a/icons/gtk.svg b/icons/gtk.svg new file mode 100644 index 000000000000..302429be0c82 --- /dev/null +++ b/icons/gtk.svg @@ -0,0 +1 @@ +GTK \ No newline at end of file diff --git a/icons/mdbook.svg b/icons/mdbook.svg new file mode 100644 index 000000000000..1727c21bc092 --- /dev/null +++ b/icons/mdbook.svg @@ -0,0 +1 @@ +mdBook \ No newline at end of file diff --git a/icons/rubocop.svg b/icons/rubocop.svg new file mode 100644 index 000000000000..adc974fa3197 --- /dev/null +++ b/icons/rubocop.svg @@ -0,0 +1 @@ +RuboCop \ No newline at end of file diff --git a/icons/steamdeck.svg b/icons/steamdeck.svg new file mode 100644 index 000000000000..1d1562f24851 --- /dev/null +++ b/icons/steamdeck.svg @@ -0,0 +1 @@ +Steam Deck \ No newline at end of file diff --git a/icons/ubuntu.svg b/icons/ubuntu.svg index a2917063d4ac..227f86aa329d 100644 --- a/icons/ubuntu.svg +++ b/icons/ubuntu.svg @@ -1 +1 @@ -Ubuntu \ No newline at end of file +Ubuntu \ No newline at end of file diff --git a/package.json b/package.json index e02420b34601..5ac8cbc0df98 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "simple-icons", - "version": "6.21.0", + "version": "6.22.0", "description": "SVG icons for popular brands https://simpleicons.org", "homepage": "https://simpleicons.org", "keywords": [ @@ -39,17 +39,17 @@ }, "devDependencies": { "editorconfig-checker": "4.0.2", - "esbuild": "0.14.21", + "esbuild": "0.14.38", "fake-diff": "1.0.0", - "husky": "7.0.4", + "husky": "8.0.1", "is-ci": "3.0.1", "jsonschema": "1.4.0", - "mocha": "9.2.0", + "mocha": "10.0.0", "named-html-entities-json": "1.0.0", "npm-run-all": "4.1.5", - "prettier": "2.5.1", + "prettier": "2.6.2", "rimraf": "3.0.2", - "svg-path-bbox": "1.0.2", + "svg-path-bbox": "1.2.0", "svg-path-segments": "1.0.0", "svglint": "2.1.0", "svgo": "2.8.0", diff --git a/scripts/utils.js b/scripts/utils.js index 194dc2ecae75..db0fed588c19 100644 --- a/scripts/utils.js +++ b/scripts/utils.js @@ -95,24 +95,28 @@ export const htmlFriendlyToTitle = (htmlFriendlyTitle) => /** * Get contents of _data/simple-icons.json. + * @param {String|undefined} rootDir Path to the root directory of the project. */ -export const getIconsDataString = () => { - const __dirname = getDirnameFromImportMeta(import.meta.url); - const rootDir = path.resolve(__dirname, '..'); +export const getIconsDataString = (rootDir) => { + if (rootDir === undefined) { + rootDir = path.resolve(getDirnameFromImportMeta(import.meta.url), '..'); + } const iconDataPath = path.resolve(rootDir, '_data', 'simple-icons.json'); return fs.readFile(iconDataPath, 'utf8'); }; /** - * Get icon data as object from _data/simple-icons.json. + * Get icons data as object from _data/simple-icons.json. + * @param {String|undefined} rootDir Path to the root directory of the project. */ -export const getIconsData = async () => { - const fileContents = await getIconsDataString(); +export const getIconsData = async (rootDir) => { + const fileContents = await getIconsDataString(rootDir); return JSON.parse(fileContents).icons; }; /** - * Get the directory name from import.meta.url. + * Get the directory name where this file is located from `import.meta.url`, + * equivalent to the `__dirname` global variable in CommonJS. * @param {String} importMetaUrl import.meta.url */ export const getDirnameFromImportMeta = (importMetaUrl) => diff --git a/slugs.md b/slugs.md index b08b05c1bc75..30c44bcd44cc 100644 --- a/slugs.md +++ b/slugs.md @@ -605,6 +605,7 @@ update the script at 'scripts/release/update-slugs-table.js'. | `Emlakjet` | `emlakjet` | | `Empire Kred` | `empirekred` | | `Enpass` | `enpass` | +| `EnterpriseDB` | `enterprisedb` | | `Envato` | `envato` | | `EPEL` | `epel` | | `Epic Games` | `epicgames` | @@ -834,6 +835,7 @@ update the script at 'scripts/release/update-slugs-table.js'. | `Groupon` | `groupon` | | `Grubhub` | `grubhub` | | `Grunt` | `grunt` | +| `GTK` | `gtk` | | `Guangzhou Metro` | `guangzhoumetro` | | `Guilded` | `guilded` | | `gulp` | `gulp` | @@ -1187,6 +1189,7 @@ update the script at 'scripts/release/update-slugs-table.js'. | `McAfee` | `mcafee` | | `McDonald's` | `mcdonalds` | | `McLaren` | `mclaren` | +| `mdBook` | `mdbook` | | `MDN Web Docs` | `mdnwebdocs` | | `MDX` | `mdx` | | `MediaFire` | `mediafire` | @@ -1683,6 +1686,7 @@ update the script at 'scripts/release/update-slugs-table.js'. | `RTÉ` | `rte` | | `RTL` | `rtl` | | `RTLZWEI` | `rtlzwei` | +| `RuboCop` | `rubocop` | | `Ruby` | `ruby` | | `Ruby on Rails` | `rubyonrails` | | `Ruby Sinatra` | `rubysinatra` | @@ -1866,6 +1870,7 @@ update the script at 'scripts/release/update-slugs-table.js'. | `Statuspage` | `statuspage` | | `Statuspal` | `statuspal` | | `Steam` | `steam` | +| `Steam Deck` | `steamdeck` | | `SteamDB` | `steamdb` | | `Steamworks` | `steamworks` | | `Steelseries` | `steelseries` |