GitRec

A recommender system for GitHub repositories based on Gorse

  1. // ==UserScript==
  2. // @name GitRec
  3. // @namespace gorse-io
  4. // @version 0.6
  5. // @author monkey
  6. // @description A recommender system for GitHub repositories based on Gorse
  7. // @license WTFPL
  8. // @icon https://gitrec.gorse.io/logo.png
  9. // @match *://github.com/*
  10. // @require https://cdn.jsdelivr.net/npm/jquery@3.6.1/dist/jquery.min.js
  11. // @connect gitrec.gorse.io
  12. // @grant GM_getValue
  13. // @grant GM_setValue
  14. // @grant GM_xmlhttpRequest
  15. // @grant unsafeWindow
  16. // ==/UserScript==
  17.  
  18. (function($2, client) {
  19. "use strict";
  20. const _interopDefaultLegacy = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
  21. const $__default = /* @__PURE__ */ _interopDefaultLegacy($2);
  22. const api = {
  23. read: async ({ itemId: itemId2 }) => {
  24. return new Promise((res, rej) => {
  25. client.GM_xmlhttpRequest({
  26. url: `https://gitrec.gorse.io/api/read/${itemId2}`,
  27. method: "POST",
  28. onload(response) {
  29. res(JSON.parse(response.responseText));
  30. },
  31. onerror(response) {
  32. rej(response);
  33. }
  34. });
  35. });
  36. },
  37. delete: async ({ itemId: itemId2 }) => {
  38. return new Promise((res, rej) => {
  39. client.GM_xmlhttpRequest({
  40. url: `https://gitrec.gorse.io/api/delete/${itemId2}`,
  41. method: "POST",
  42. onload(response) {
  43. res(JSON.parse(response.responseText));
  44. },
  45. onerror(response) {
  46. rej(response);
  47. }
  48. });
  49. });
  50. },
  51. neighbors: async ({
  52. neighbors,
  53. offset
  54. }) => {
  55. return new Promise((res, rej) => {
  56. client.GM_xmlhttpRequest({
  57. url: `https://gitrec.gorse.io/api/v2/neighbors/${neighbors}?offset=${offset}&n=6`,
  58. onload(response) {
  59. res(JSON.parse(response.responseText));
  60. },
  61. onerror(response) {
  62. rej(response);
  63. }
  64. });
  65. });
  66. },
  67. recommendSession: async ({ recommend }) => {
  68. return new Promise((res, rej) => {
  69. client.GM_xmlhttpRequest({
  70. url: `https://gitrec.gorse.io/api/v2/session/recommend?n=6`,
  71. method: "POST",
  72. data: JSON.stringify(recommend),
  73. onload(response) {
  74. res(JSON.parse(response.responseText));
  75. },
  76. onerror(response) {
  77. rej(response);
  78. }
  79. });
  80. });
  81. },
  82. recommendExtension: async () => {
  83. return new Promise((res, rej) => {
  84. client.GM_xmlhttpRequest({
  85. url: `https://gitrec.gorse.io/api/v2/extension/recommend`,
  86. onload(response) {
  87. res(JSON.parse(response.responseText));
  88. },
  89. onerror(response) {
  90. rej(response);
  91. }
  92. });
  93. });
  94. }
  95. };
  96. const LANGUAGE_COLORS = {
  97. "1C Enterprise": {
  98. color: "#814CCC",
  99. url: "https://github.com/trending?l=1C-Enterprise"
  100. },
  101. "2-Dimensional Array": {
  102. color: "#38761D",
  103. url: "https://github.com/trending?l=2-Dimensional-Array"
  104. },
  105. "4D": {
  106. color: "#004289",
  107. url: "https://github.com/trending?l=4D"
  108. },
  109. ABAP: {
  110. color: "#E8274B",
  111. url: "https://github.com/trending?l=ABAP"
  112. },
  113. "ABAP CDS": {
  114. color: "#555e25",
  115. url: "https://github.com/trending?l=ABAP-CDS"
  116. },
  117. ActionScript: {
  118. color: "#882B0F",
  119. url: "https://github.com/trending?l=ActionScript"
  120. },
  121. Ada: {
  122. color: "#02f88c",
  123. url: "https://github.com/trending?l=Ada"
  124. },
  125. "Adobe Font Metrics": {
  126. color: "#fa0f00",
  127. url: "https://github.com/trending?l=Adobe-Font-Metrics"
  128. },
  129. Agda: {
  130. color: "#315665",
  131. url: "https://github.com/trending?l=Agda"
  132. },
  133. "AGS Script": {
  134. color: "#B9D9FF",
  135. url: "https://github.com/trending?l=AGS-Script"
  136. },
  137. AIDL: {
  138. color: "#34EB6B",
  139. url: "https://github.com/trending?l=AIDL"
  140. },
  141. AL: {
  142. color: "#3AA2B5",
  143. url: "https://github.com/trending?l=AL"
  144. },
  145. Alloy: {
  146. color: "#64C800",
  147. url: "https://github.com/trending?l=Alloy"
  148. },
  149. "Alpine Abuild": {
  150. color: "#0D597F",
  151. url: "https://github.com/trending?l=Alpine-Abuild"
  152. },
  153. "Altium Designer": {
  154. color: "#A89663",
  155. url: "https://github.com/trending?l=Altium-Designer"
  156. },
  157. AMPL: {
  158. color: "#E6EFBB",
  159. url: "https://github.com/trending?l=AMPL"
  160. },
  161. AngelScript: {
  162. color: "#C7D7DC",
  163. url: "https://github.com/trending?l=AngelScript"
  164. },
  165. "Ant Build System": {
  166. color: "#A9157E",
  167. url: "https://github.com/trending?l=Ant-Build-System"
  168. },
  169. ANTLR: {
  170. color: "#9DC3FF",
  171. url: "https://github.com/trending?l=ANTLR"
  172. },
  173. ApacheConf: {
  174. color: "#d12127",
  175. url: "https://github.com/trending?l=ApacheConf"
  176. },
  177. Apex: {
  178. color: "#1797c0",
  179. url: "https://github.com/trending?l=Apex"
  180. },
  181. "API Blueprint": {
  182. color: "#2ACCA8",
  183. url: "https://github.com/trending?l=API-Blueprint"
  184. },
  185. APL: {
  186. color: "#5A8164",
  187. url: "https://github.com/trending?l=APL"
  188. },
  189. "Apollo Guidance Computer": {
  190. color: "#0B3D91",
  191. url: "https://github.com/trending?l=Apollo-Guidance-Computer"
  192. },
  193. AppleScript: {
  194. color: "#101F1F",
  195. url: "https://github.com/trending?l=AppleScript"
  196. },
  197. Arc: {
  198. color: "#aa2afe",
  199. url: "https://github.com/trending?l=Arc"
  200. },
  201. AsciiDoc: {
  202. color: "#73a0c5",
  203. url: "https://github.com/trending?l=AsciiDoc"
  204. },
  205. ASL: {
  206. color: null,
  207. url: "https://github.com/trending?l=ASL"
  208. },
  209. "ASP.NET": {
  210. color: "#9400ff",
  211. url: "https://github.com/trending?l=ASP.NET"
  212. },
  213. AspectJ: {
  214. color: "#a957b0",
  215. url: "https://github.com/trending?l=AspectJ"
  216. },
  217. Assembly: {
  218. color: "#6E4C13",
  219. url: "https://github.com/trending?l=Assembly"
  220. },
  221. Astro: {
  222. color: "#ff5a03",
  223. url: "https://github.com/trending?l=Astro"
  224. },
  225. Asymptote: {
  226. color: "#ff0000",
  227. url: "https://github.com/trending?l=Asymptote"
  228. },
  229. ATS: {
  230. color: "#1ac620",
  231. url: "https://github.com/trending?l=ATS"
  232. },
  233. Augeas: {
  234. color: "#9CC134",
  235. url: "https://github.com/trending?l=Augeas"
  236. },
  237. AutoHotkey: {
  238. color: "#6594b9",
  239. url: "https://github.com/trending?l=AutoHotkey"
  240. },
  241. AutoIt: {
  242. color: "#1C3552",
  243. url: "https://github.com/trending?l=AutoIt"
  244. },
  245. "Avro IDL": {
  246. color: "#0040FF",
  247. url: "https://github.com/trending?l=Avro-IDL"
  248. },
  249. Awk: {
  250. color: "#c30e9b",
  251. url: "https://github.com/trending?l=Awk"
  252. },
  253. Ballerina: {
  254. color: "#FF5000",
  255. url: "https://github.com/trending?l=Ballerina"
  256. },
  257. BASIC: {
  258. color: "#ff0000",
  259. url: "https://github.com/trending?l=BASIC"
  260. },
  261. Batchfile: {
  262. color: "#C1F12E",
  263. url: "https://github.com/trending?l=Batchfile"
  264. },
  265. Beef: {
  266. color: "#a52f4e",
  267. url: "https://github.com/trending?l=Beef"
  268. },
  269. Befunge: {
  270. color: null,
  271. url: "https://github.com/trending?l=Befunge"
  272. },
  273. Berry: {
  274. color: "#15A13C",
  275. url: "https://github.com/trending?l=Berry"
  276. },
  277. BibTeX: {
  278. color: "#778899",
  279. url: "https://github.com/trending?l=BibTeX"
  280. },
  281. Bicep: {
  282. color: "#519aba",
  283. url: "https://github.com/trending?l=Bicep"
  284. },
  285. Bison: {
  286. color: "#6A463F",
  287. url: "https://github.com/trending?l=Bison"
  288. },
  289. BitBake: {
  290. color: "#00bce4",
  291. url: "https://github.com/trending?l=BitBake"
  292. },
  293. Blade: {
  294. color: "#f7523f",
  295. url: "https://github.com/trending?l=Blade"
  296. },
  297. BlitzBasic: {
  298. color: "#00FFAE",
  299. url: "https://github.com/trending?l=BlitzBasic"
  300. },
  301. BlitzMax: {
  302. color: "#cd6400",
  303. url: "https://github.com/trending?l=BlitzMax"
  304. },
  305. Bluespec: {
  306. color: "#12223c",
  307. url: "https://github.com/trending?l=Bluespec"
  308. },
  309. Boo: {
  310. color: "#d4bec1",
  311. url: "https://github.com/trending?l=Boo"
  312. },
  313. Boogie: {
  314. color: "#c80fa0",
  315. url: "https://github.com/trending?l=Boogie"
  316. },
  317. Brainfuck: {
  318. color: "#2F2530",
  319. url: "https://github.com/trending?l=Brainfuck"
  320. },
  321. Brightscript: {
  322. color: "#662D91",
  323. url: "https://github.com/trending?l=Brightscript"
  324. },
  325. Browserslist: {
  326. color: "#ffd539",
  327. url: "https://github.com/trending?l=Browserslist"
  328. },
  329. C: {
  330. color: "#555555",
  331. url: "https://github.com/trending?l=C"
  332. },
  333. "C#": {
  334. color: "#178600",
  335. url: "https://github.com/trending?l=Csharp"
  336. },
  337. "C++": {
  338. color: "#f34b7d",
  339. url: "https://github.com/trending?l=C++"
  340. },
  341. "C2hs Haskell": {
  342. color: null,
  343. url: "https://github.com/trending?l=C2hs-Haskell"
  344. },
  345. "Cabal Config": {
  346. color: "#483465",
  347. url: "https://github.com/trending?l=Cabal-Config"
  348. },
  349. Cadence: {
  350. color: "#00ef8b",
  351. url: "https://github.com/trending?l=Cadence"
  352. },
  353. Cairo: {
  354. color: "#ff4a48",
  355. url: "https://github.com/trending?l=Cairo"
  356. },
  357. CameLIGO: {
  358. color: "#3be133",
  359. url: "https://github.com/trending?l=CameLIGO"
  360. },
  361. "Cap'n Proto": {
  362. color: "#c42727",
  363. url: "https://github.com/trending?l=Cap'n-Proto"
  364. },
  365. CartoCSS: {
  366. color: null,
  367. url: "https://github.com/trending?l=CartoCSS"
  368. },
  369. Ceylon: {
  370. color: "#dfa535",
  371. url: "https://github.com/trending?l=Ceylon"
  372. },
  373. Chapel: {
  374. color: "#8dc63f",
  375. url: "https://github.com/trending?l=Chapel"
  376. },
  377. Charity: {
  378. color: null,
  379. url: "https://github.com/trending?l=Charity"
  380. },
  381. ChucK: {
  382. color: "#3f8000",
  383. url: "https://github.com/trending?l=ChucK"
  384. },
  385. Cirru: {
  386. color: "#ccccff",
  387. url: "https://github.com/trending?l=Cirru"
  388. },
  389. Clarion: {
  390. color: "#db901e",
  391. url: "https://github.com/trending?l=Clarion"
  392. },
  393. Clarity: {
  394. color: "#5546ff",
  395. url: "https://github.com/trending?l=Clarity"
  396. },
  397. "Classic ASP": {
  398. color: "#6a40fd",
  399. url: "https://github.com/trending?l=Classic-ASP"
  400. },
  401. Clean: {
  402. color: "#3F85AF",
  403. url: "https://github.com/trending?l=Clean"
  404. },
  405. Click: {
  406. color: "#E4E6F3",
  407. url: "https://github.com/trending?l=Click"
  408. },
  409. CLIPS: {
  410. color: "#00A300",
  411. url: "https://github.com/trending?l=CLIPS"
  412. },
  413. Clojure: {
  414. color: "#db5855",
  415. url: "https://github.com/trending?l=Clojure"
  416. },
  417. "Closure Templates": {
  418. color: "#0d948f",
  419. url: "https://github.com/trending?l=Closure-Templates"
  420. },
  421. "Cloud Firestore Security Rules": {
  422. color: "#FFA000",
  423. url: "https://github.com/trending?l=Cloud-Firestore-Security-Rules"
  424. },
  425. CMake: {
  426. color: "#DA3434",
  427. url: "https://github.com/trending?l=CMake"
  428. },
  429. COBOL: {
  430. color: null,
  431. url: "https://github.com/trending?l=COBOL"
  432. },
  433. CodeQL: {
  434. color: "#140f46",
  435. url: "https://github.com/trending?l=CodeQL"
  436. },
  437. CoffeeScript: {
  438. color: "#244776",
  439. url: "https://github.com/trending?l=CoffeeScript"
  440. },
  441. ColdFusion: {
  442. color: "#ed2cd6",
  443. url: "https://github.com/trending?l=ColdFusion"
  444. },
  445. "ColdFusion CFC": {
  446. color: "#ed2cd6",
  447. url: "https://github.com/trending?l=ColdFusion-CFC"
  448. },
  449. COLLADA: {
  450. color: "#F1A42B",
  451. url: "https://github.com/trending?l=COLLADA"
  452. },
  453. "Common Lisp": {
  454. color: "#3fb68b",
  455. url: "https://github.com/trending?l=Common-Lisp"
  456. },
  457. "Common Workflow Language": {
  458. color: "#B5314C",
  459. url: "https://github.com/trending?l=Common-Workflow-Language"
  460. },
  461. "Component Pascal": {
  462. color: "#B0CE4E",
  463. url: "https://github.com/trending?l=Component-Pascal"
  464. },
  465. Cool: {
  466. color: null,
  467. url: "https://github.com/trending?l=Cool"
  468. },
  469. Coq: {
  470. color: "#d0b68c",
  471. url: "https://github.com/trending?l=Coq"
  472. },
  473. Crystal: {
  474. color: "#000100",
  475. url: "https://github.com/trending?l=Crystal"
  476. },
  477. CSON: {
  478. color: "#244776",
  479. url: "https://github.com/trending?l=CSON"
  480. },
  481. Csound: {
  482. color: "#1a1a1a",
  483. url: "https://github.com/trending?l=Csound"
  484. },
  485. "Csound Document": {
  486. color: "#1a1a1a",
  487. url: "https://github.com/trending?l=Csound-Document"
  488. },
  489. "Csound Score": {
  490. color: "#1a1a1a",
  491. url: "https://github.com/trending?l=Csound-Score"
  492. },
  493. CSS: {
  494. color: "#563d7c",
  495. url: "https://github.com/trending?l=CSS"
  496. },
  497. CSV: {
  498. color: "#237346",
  499. url: "https://github.com/trending?l=CSV"
  500. },
  501. Cuda: {
  502. color: "#3A4E3A",
  503. url: "https://github.com/trending?l=Cuda"
  504. },
  505. CUE: {
  506. color: "#5886E1",
  507. url: "https://github.com/trending?l=CUE"
  508. },
  509. Curry: {
  510. color: "#531242",
  511. url: "https://github.com/trending?l=Curry"
  512. },
  513. CWeb: {
  514. color: "#00007a",
  515. url: "https://github.com/trending?l=CWeb"
  516. },
  517. Cycript: {
  518. color: null,
  519. url: "https://github.com/trending?l=Cycript"
  520. },
  521. Cython: {
  522. color: "#fedf5b",
  523. url: "https://github.com/trending?l=Cython"
  524. },
  525. D: {
  526. color: "#ba595e",
  527. url: "https://github.com/trending?l=D"
  528. },
  529. Dafny: {
  530. color: "#FFEC25",
  531. url: "https://github.com/trending?l=Dafny"
  532. },
  533. "Darcs Patch": {
  534. color: "#8eff23",
  535. url: "https://github.com/trending?l=Darcs-Patch"
  536. },
  537. Dart: {
  538. color: "#00B4AB",
  539. url: "https://github.com/trending?l=Dart"
  540. },
  541. DataWeave: {
  542. color: "#003a52",
  543. url: "https://github.com/trending?l=DataWeave"
  544. },
  545. "Debian Package Control File": {
  546. color: "#D70751",
  547. url: "https://github.com/trending?l=Debian-Package-Control-File"
  548. },
  549. DenizenScript: {
  550. color: "#FBEE96",
  551. url: "https://github.com/trending?l=DenizenScript"
  552. },
  553. Dhall: {
  554. color: "#dfafff",
  555. url: "https://github.com/trending?l=Dhall"
  556. },
  557. "DIGITAL Command Language": {
  558. color: null,
  559. url: "https://github.com/trending?l=DIGITAL-Command-Language"
  560. },
  561. "DirectX 3D File": {
  562. color: "#aace60",
  563. url: "https://github.com/trending?l=DirectX-3D-File"
  564. },
  565. DM: {
  566. color: "#447265",
  567. url: "https://github.com/trending?l=DM"
  568. },
  569. Dockerfile: {
  570. color: "#384d54",
  571. url: "https://github.com/trending?l=Dockerfile"
  572. },
  573. Dogescript: {
  574. color: "#cca760",
  575. url: "https://github.com/trending?l=Dogescript"
  576. },
  577. DTrace: {
  578. color: null,
  579. url: "https://github.com/trending?l=DTrace"
  580. },
  581. Dylan: {
  582. color: "#6c616e",
  583. url: "https://github.com/trending?l=Dylan"
  584. },
  585. E: {
  586. color: "#ccce35",
  587. url: "https://github.com/trending?l=E"
  588. },
  589. Earthly: {
  590. color: "#2af0ff",
  591. url: "https://github.com/trending?l=Earthly"
  592. },
  593. Easybuild: {
  594. color: "#069406",
  595. url: "https://github.com/trending?l=Easybuild"
  596. },
  597. eC: {
  598. color: "#913960",
  599. url: "https://github.com/trending?l=eC"
  600. },
  601. "Ecere Projects": {
  602. color: "#913960",
  603. url: "https://github.com/trending?l=Ecere-Projects"
  604. },
  605. ECL: {
  606. color: "#8a1267",
  607. url: "https://github.com/trending?l=ECL"
  608. },
  609. ECLiPSe: {
  610. color: "#001d9d",
  611. url: "https://github.com/trending?l=ECLiPSe"
  612. },
  613. EditorConfig: {
  614. color: "#fff1f2",
  615. url: "https://github.com/trending?l=EditorConfig"
  616. },
  617. Eiffel: {
  618. color: "#4d6977",
  619. url: "https://github.com/trending?l=Eiffel"
  620. },
  621. EJS: {
  622. color: "#a91e50",
  623. url: "https://github.com/trending?l=EJS"
  624. },
  625. Elixir: {
  626. color: "#6e4a7e",
  627. url: "https://github.com/trending?l=Elixir"
  628. },
  629. Elm: {
  630. color: "#60B5CC",
  631. url: "https://github.com/trending?l=Elm"
  632. },
  633. "Emacs Lisp": {
  634. color: "#c065db",
  635. url: "https://github.com/trending?l=Emacs-Lisp"
  636. },
  637. EmberScript: {
  638. color: "#FFF4F3",
  639. url: "https://github.com/trending?l=EmberScript"
  640. },
  641. EQ: {
  642. color: "#a78649",
  643. url: "https://github.com/trending?l=EQ"
  644. },
  645. Erlang: {
  646. color: "#B83998",
  647. url: "https://github.com/trending?l=Erlang"
  648. },
  649. Euphoria: {
  650. color: "#FF790B",
  651. url: "https://github.com/trending?l=Euphoria"
  652. },
  653. "F#": {
  654. color: "#b845fc",
  655. url: "https://github.com/trending?l=Fsharp"
  656. },
  657. "F*": {
  658. color: "#572e30",
  659. url: "https://github.com/trending?l=F*"
  660. },
  661. Factor: {
  662. color: "#636746",
  663. url: "https://github.com/trending?l=Factor"
  664. },
  665. Fancy: {
  666. color: "#7b9db4",
  667. url: "https://github.com/trending?l=Fancy"
  668. },
  669. Fantom: {
  670. color: "#14253c",
  671. url: "https://github.com/trending?l=Fantom"
  672. },
  673. Faust: {
  674. color: "#c37240",
  675. url: "https://github.com/trending?l=Faust"
  676. },
  677. Fennel: {
  678. color: "#fff3d7",
  679. url: "https://github.com/trending?l=Fennel"
  680. },
  681. "FIGlet Font": {
  682. color: "#FFDDBB",
  683. url: "https://github.com/trending?l=FIGlet-Font"
  684. },
  685. "Filebench WML": {
  686. color: "#F6B900",
  687. url: "https://github.com/trending?l=Filebench-WML"
  688. },
  689. Filterscript: {
  690. color: null,
  691. url: "https://github.com/trending?l=Filterscript"
  692. },
  693. fish: {
  694. color: "#4aae47",
  695. url: "https://github.com/trending?l=fish"
  696. },
  697. Fluent: {
  698. color: "#ffcc33",
  699. url: "https://github.com/trending?l=Fluent"
  700. },
  701. FLUX: {
  702. color: "#88ccff",
  703. url: "https://github.com/trending?l=FLUX"
  704. },
  705. Forth: {
  706. color: "#341708",
  707. url: "https://github.com/trending?l=Forth"
  708. },
  709. Fortran: {
  710. color: "#4d41b1",
  711. url: "https://github.com/trending?l=Fortran"
  712. },
  713. "Fortran Free Form": {
  714. color: "#4d41b1",
  715. url: "https://github.com/trending?l=Fortran-Free-Form"
  716. },
  717. FreeBasic: {
  718. color: "#867db1",
  719. url: "https://github.com/trending?l=FreeBasic"
  720. },
  721. FreeMarker: {
  722. color: "#0050b2",
  723. url: "https://github.com/trending?l=FreeMarker"
  724. },
  725. Frege: {
  726. color: "#00cafe",
  727. url: "https://github.com/trending?l=Frege"
  728. },
  729. Futhark: {
  730. color: "#5f021f",
  731. url: "https://github.com/trending?l=Futhark"
  732. },
  733. "G-code": {
  734. color: "#D08CF2",
  735. url: "https://github.com/trending?l=G-code"
  736. },
  737. "Game Maker Language": {
  738. color: "#71b417",
  739. url: "https://github.com/trending?l=Game-Maker-Language"
  740. },
  741. GAML: {
  742. color: "#FFC766",
  743. url: "https://github.com/trending?l=GAML"
  744. },
  745. GAMS: {
  746. color: "#f49a22",
  747. url: "https://github.com/trending?l=GAMS"
  748. },
  749. GAP: {
  750. color: "#0000cc",
  751. url: "https://github.com/trending?l=GAP"
  752. },
  753. "GCC Machine Description": {
  754. color: "#FFCFAB",
  755. url: "https://github.com/trending?l=GCC-Machine-Description"
  756. },
  757. GDB: {
  758. color: null,
  759. url: "https://github.com/trending?l=GDB"
  760. },
  761. GDScript: {
  762. color: "#355570",
  763. url: "https://github.com/trending?l=GDScript"
  764. },
  765. GEDCOM: {
  766. color: "#003058",
  767. url: "https://github.com/trending?l=GEDCOM"
  768. },
  769. "Gemfile.lock": {
  770. color: "#701516",
  771. url: "https://github.com/trending?l=Gemfile.lock"
  772. },
  773. Genero: {
  774. color: "#63408e",
  775. url: "https://github.com/trending?l=Genero"
  776. },
  777. "Genero Forms": {
  778. color: "#d8df39",
  779. url: "https://github.com/trending?l=Genero-Forms"
  780. },
  781. Genie: {
  782. color: "#fb855d",
  783. url: "https://github.com/trending?l=Genie"
  784. },
  785. Genshi: {
  786. color: "#951531",
  787. url: "https://github.com/trending?l=Genshi"
  788. },
  789. "Gentoo Ebuild": {
  790. color: "#9400ff",
  791. url: "https://github.com/trending?l=Gentoo-Ebuild"
  792. },
  793. "Gentoo Eclass": {
  794. color: "#9400ff",
  795. url: "https://github.com/trending?l=Gentoo-Eclass"
  796. },
  797. "Gerber Image": {
  798. color: "#d20b00",
  799. url: "https://github.com/trending?l=Gerber-Image"
  800. },
  801. Gherkin: {
  802. color: "#5B2063",
  803. url: "https://github.com/trending?l=Gherkin"
  804. },
  805. "Git Attributes": {
  806. color: "#F44D27",
  807. url: "https://github.com/trending?l=Git-Attributes"
  808. },
  809. "Git Config": {
  810. color: "#F44D27",
  811. url: "https://github.com/trending?l=Git-Config"
  812. },
  813. Gleam: {
  814. color: "#ffaff3",
  815. url: "https://github.com/trending?l=Gleam"
  816. },
  817. GLSL: {
  818. color: "#5686a5",
  819. url: "https://github.com/trending?l=GLSL"
  820. },
  821. Glyph: {
  822. color: "#c1ac7f",
  823. url: "https://github.com/trending?l=Glyph"
  824. },
  825. Gnuplot: {
  826. color: "#f0a9f0",
  827. url: "https://github.com/trending?l=Gnuplot"
  828. },
  829. Go: {
  830. color: "#00ADD8",
  831. url: "https://github.com/trending?l=Go"
  832. },
  833. "Go Checksums": {
  834. color: "#00ADD8",
  835. url: "https://github.com/trending?l=Go-Checksums"
  836. },
  837. "Go Module": {
  838. color: "#00ADD8",
  839. url: "https://github.com/trending?l=Go-Module"
  840. },
  841. Golo: {
  842. color: "#88562A",
  843. url: "https://github.com/trending?l=Golo"
  844. },
  845. Gosu: {
  846. color: "#82937f",
  847. url: "https://github.com/trending?l=Gosu"
  848. },
  849. Grace: {
  850. color: "#615f8b",
  851. url: "https://github.com/trending?l=Grace"
  852. },
  853. Gradle: {
  854. color: "#02303a",
  855. url: "https://github.com/trending?l=Gradle"
  856. },
  857. "Grammatical Framework": {
  858. color: "#ff0000",
  859. url: "https://github.com/trending?l=Grammatical-Framework"
  860. },
  861. GraphQL: {
  862. color: "#e10098",
  863. url: "https://github.com/trending?l=GraphQL"
  864. },
  865. "Graphviz (DOT)": {
  866. color: "#2596be",
  867. url: "https://github.com/trending?l=Graphviz-(DOT)"
  868. },
  869. Groovy: {
  870. color: "#4298b8",
  871. url: "https://github.com/trending?l=Groovy"
  872. },
  873. "Groovy Server Pages": {
  874. color: "#4298b8",
  875. url: "https://github.com/trending?l=Groovy-Server-Pages"
  876. },
  877. GSC: {
  878. color: "#FF6800",
  879. url: "https://github.com/trending?l=GSC"
  880. },
  881. Hack: {
  882. color: "#878787",
  883. url: "https://github.com/trending?l=Hack"
  884. },
  885. Haml: {
  886. color: "#ece2a9",
  887. url: "https://github.com/trending?l=Haml"
  888. },
  889. Handlebars: {
  890. color: "#f7931e",
  891. url: "https://github.com/trending?l=Handlebars"
  892. },
  893. HAProxy: {
  894. color: "#106da9",
  895. url: "https://github.com/trending?l=HAProxy"
  896. },
  897. Harbour: {
  898. color: "#0e60e3",
  899. url: "https://github.com/trending?l=Harbour"
  900. },
  901. Haskell: {
  902. color: "#5e5086",
  903. url: "https://github.com/trending?l=Haskell"
  904. },
  905. Haxe: {
  906. color: "#df7900",
  907. url: "https://github.com/trending?l=Haxe"
  908. },
  909. HCL: {
  910. color: null,
  911. url: "https://github.com/trending?l=HCL"
  912. },
  913. HiveQL: {
  914. color: "#dce200",
  915. url: "https://github.com/trending?l=HiveQL"
  916. },
  917. HLSL: {
  918. color: "#aace60",
  919. url: "https://github.com/trending?l=HLSL"
  920. },
  921. HolyC: {
  922. color: "#ffefaf",
  923. url: "https://github.com/trending?l=HolyC"
  924. },
  925. hoon: {
  926. color: "#00b171",
  927. url: "https://github.com/trending?l=hoon"
  928. },
  929. HTML: {
  930. color: "#e34c26",
  931. url: "https://github.com/trending?l=HTML"
  932. },
  933. "HTML+ECR": {
  934. color: "#2e1052",
  935. url: "https://github.com/trending?l=HTML+ECR"
  936. },
  937. "HTML+EEX": {
  938. color: "#6e4a7e",
  939. url: "https://github.com/trending?l=HTML+EEX"
  940. },
  941. "HTML+ERB": {
  942. color: "#701516",
  943. url: "https://github.com/trending?l=HTML+ERB"
  944. },
  945. "HTML+PHP": {
  946. color: "#4f5d95",
  947. url: "https://github.com/trending?l=HTML+PHP"
  948. },
  949. "HTML+Razor": {
  950. color: "#512be4",
  951. url: "https://github.com/trending?l=HTML+Razor"
  952. },
  953. HTTP: {
  954. color: "#005C9C",
  955. url: "https://github.com/trending?l=HTTP"
  956. },
  957. HXML: {
  958. color: "#f68712",
  959. url: "https://github.com/trending?l=HXML"
  960. },
  961. Hy: {
  962. color: "#7790B2",
  963. url: "https://github.com/trending?l=Hy"
  964. },
  965. HyPhy: {
  966. color: null,
  967. url: "https://github.com/trending?l=HyPhy"
  968. },
  969. IDL: {
  970. color: "#a3522f",
  971. url: "https://github.com/trending?l=IDL"
  972. },
  973. Idris: {
  974. color: "#b30000",
  975. url: "https://github.com/trending?l=Idris"
  976. },
  977. "Ignore List": {
  978. color: "#000000",
  979. url: "https://github.com/trending?l=Ignore-List"
  980. },
  981. "IGOR Pro": {
  982. color: "#0000cc",
  983. url: "https://github.com/trending?l=IGOR-Pro"
  984. },
  985. "ImageJ Macro": {
  986. color: "#99AAFF",
  987. url: "https://github.com/trending?l=ImageJ-Macro"
  988. },
  989. "Inform 7": {
  990. color: null,
  991. url: "https://github.com/trending?l=Inform-7"
  992. },
  993. INI: {
  994. color: "#d1dbe0",
  995. url: "https://github.com/trending?l=INI"
  996. },
  997. "Inno Setup": {
  998. color: "#264b99",
  999. url: "https://github.com/trending?l=Inno-Setup"
  1000. },
  1001. Io: {
  1002. color: "#a9188d",
  1003. url: "https://github.com/trending?l=Io"
  1004. },
  1005. Ioke: {
  1006. color: "#078193",
  1007. url: "https://github.com/trending?l=Ioke"
  1008. },
  1009. Isabelle: {
  1010. color: "#FEFE00",
  1011. url: "https://github.com/trending?l=Isabelle"
  1012. },
  1013. "Isabelle ROOT": {
  1014. color: "#FEFE00",
  1015. url: "https://github.com/trending?l=Isabelle-ROOT"
  1016. },
  1017. J: {
  1018. color: "#9EEDFF",
  1019. url: "https://github.com/trending?l=J"
  1020. },
  1021. Janet: {
  1022. color: "#0886a5",
  1023. url: "https://github.com/trending?l=Janet"
  1024. },
  1025. "JAR Manifest": {
  1026. color: "#b07219",
  1027. url: "https://github.com/trending?l=JAR-Manifest"
  1028. },
  1029. Jasmin: {
  1030. color: "#d03600",
  1031. url: "https://github.com/trending?l=Jasmin"
  1032. },
  1033. Java: {
  1034. color: "#b07219",
  1035. url: "https://github.com/trending?l=Java"
  1036. },
  1037. "Java Properties": {
  1038. color: "#2A6277",
  1039. url: "https://github.com/trending?l=Java-Properties"
  1040. },
  1041. "Java Server Pages": {
  1042. color: "#2A6277",
  1043. url: "https://github.com/trending?l=Java-Server-Pages"
  1044. },
  1045. JavaScript: {
  1046. color: "#f1e05a",
  1047. url: "https://github.com/trending?l=JavaScript"
  1048. },
  1049. "JavaScript+ERB": {
  1050. color: "#f1e05a",
  1051. url: "https://github.com/trending?l=JavaScript+ERB"
  1052. },
  1053. "Jest Snapshot": {
  1054. color: "#15c213",
  1055. url: "https://github.com/trending?l=Jest-Snapshot"
  1056. },
  1057. JFlex: {
  1058. color: "#DBCA00",
  1059. url: "https://github.com/trending?l=JFlex"
  1060. },
  1061. Jinja: {
  1062. color: "#a52a22",
  1063. url: "https://github.com/trending?l=Jinja"
  1064. },
  1065. Jison: {
  1066. color: "#56b3cb",
  1067. url: "https://github.com/trending?l=Jison"
  1068. },
  1069. "Jison Lex": {
  1070. color: "#56b3cb",
  1071. url: "https://github.com/trending?l=Jison-Lex"
  1072. },
  1073. Jolie: {
  1074. color: "#843179",
  1075. url: "https://github.com/trending?l=Jolie"
  1076. },
  1077. jq: {
  1078. color: "#c7254e",
  1079. url: "https://github.com/trending?l=jq"
  1080. },
  1081. JSON: {
  1082. color: "#292929",
  1083. url: "https://github.com/trending?l=JSON"
  1084. },
  1085. "JSON with Comments": {
  1086. color: "#292929",
  1087. url: "https://github.com/trending?l=JSON-with-Comments"
  1088. },
  1089. JSON5: {
  1090. color: "#267CB9",
  1091. url: "https://github.com/trending?l=JSON5"
  1092. },
  1093. JSONiq: {
  1094. color: "#40d47e",
  1095. url: "https://github.com/trending?l=JSONiq"
  1096. },
  1097. JSONLD: {
  1098. color: "#0c479c",
  1099. url: "https://github.com/trending?l=JSONLD"
  1100. },
  1101. Jsonnet: {
  1102. color: "#0064bd",
  1103. url: "https://github.com/trending?l=Jsonnet"
  1104. },
  1105. Julia: {
  1106. color: "#a270ba",
  1107. url: "https://github.com/trending?l=Julia"
  1108. },
  1109. "Jupyter Notebook": {
  1110. color: "#DA5B0B",
  1111. url: "https://github.com/trending?l=Jupyter-Notebook"
  1112. },
  1113. "Kaitai Struct": {
  1114. color: "#773b37",
  1115. url: "https://github.com/trending?l=Kaitai-Struct"
  1116. },
  1117. KakouneScript: {
  1118. color: "#6f8042",
  1119. url: "https://github.com/trending?l=KakouneScript"
  1120. },
  1121. "KiCad Layout": {
  1122. color: "#2f4aab",
  1123. url: "https://github.com/trending?l=KiCad-Layout"
  1124. },
  1125. "KiCad Legacy Layout": {
  1126. color: "#2f4aab",
  1127. url: "https://github.com/trending?l=KiCad-Legacy-Layout"
  1128. },
  1129. "KiCad Schematic": {
  1130. color: "#2f4aab",
  1131. url: "https://github.com/trending?l=KiCad-Schematic"
  1132. },
  1133. Kotlin: {
  1134. color: "#A97BFF",
  1135. url: "https://github.com/trending?l=Kotlin"
  1136. },
  1137. KRL: {
  1138. color: "#28430A",
  1139. url: "https://github.com/trending?l=KRL"
  1140. },
  1141. kvlang: {
  1142. color: "#1da6e0",
  1143. url: "https://github.com/trending?l=kvlang"
  1144. },
  1145. LabVIEW: {
  1146. color: "#fede06",
  1147. url: "https://github.com/trending?l=LabVIEW"
  1148. },
  1149. Lark: {
  1150. color: "#2980B9",
  1151. url: "https://github.com/trending?l=Lark"
  1152. },
  1153. Lasso: {
  1154. color: "#999999",
  1155. url: "https://github.com/trending?l=Lasso"
  1156. },
  1157. Latte: {
  1158. color: "#f2a542",
  1159. url: "https://github.com/trending?l=Latte"
  1160. },
  1161. Lean: {
  1162. color: null,
  1163. url: "https://github.com/trending?l=Lean"
  1164. },
  1165. Less: {
  1166. color: "#1d365d",
  1167. url: "https://github.com/trending?l=Less"
  1168. },
  1169. Lex: {
  1170. color: "#DBCA00",
  1171. url: "https://github.com/trending?l=Lex"
  1172. },
  1173. LFE: {
  1174. color: "#4C3023",
  1175. url: "https://github.com/trending?l=LFE"
  1176. },
  1177. LigoLANG: {
  1178. color: "#0e74ff",
  1179. url: "https://github.com/trending?l=LigoLANG"
  1180. },
  1181. LilyPond: {
  1182. color: "#9ccc7c",
  1183. url: "https://github.com/trending?l=LilyPond"
  1184. },
  1185. Limbo: {
  1186. color: null,
  1187. url: "https://github.com/trending?l=Limbo"
  1188. },
  1189. Liquid: {
  1190. color: "#67b8de",
  1191. url: "https://github.com/trending?l=Liquid"
  1192. },
  1193. "Literate Agda": {
  1194. color: "#315665",
  1195. url: "https://github.com/trending?l=Literate-Agda"
  1196. },
  1197. "Literate CoffeeScript": {
  1198. color: "#244776",
  1199. url: "https://github.com/trending?l=Literate-CoffeeScript"
  1200. },
  1201. "Literate Haskell": {
  1202. color: "#5e5086",
  1203. url: "https://github.com/trending?l=Literate-Haskell"
  1204. },
  1205. LiveScript: {
  1206. color: "#499886",
  1207. url: "https://github.com/trending?l=LiveScript"
  1208. },
  1209. LLVM: {
  1210. color: "#185619",
  1211. url: "https://github.com/trending?l=LLVM"
  1212. },
  1213. Logos: {
  1214. color: null,
  1215. url: "https://github.com/trending?l=Logos"
  1216. },
  1217. Logtalk: {
  1218. color: "#295b9a",
  1219. url: "https://github.com/trending?l=Logtalk"
  1220. },
  1221. LOLCODE: {
  1222. color: "#cc9900",
  1223. url: "https://github.com/trending?l=LOLCODE"
  1224. },
  1225. LookML: {
  1226. color: "#652B81",
  1227. url: "https://github.com/trending?l=LookML"
  1228. },
  1229. LoomScript: {
  1230. color: null,
  1231. url: "https://github.com/trending?l=LoomScript"
  1232. },
  1233. LSL: {
  1234. color: "#3d9970",
  1235. url: "https://github.com/trending?l=LSL"
  1236. },
  1237. Lua: {
  1238. color: "#000080",
  1239. url: "https://github.com/trending?l=Lua"
  1240. },
  1241. M: {
  1242. color: null,
  1243. url: "https://github.com/trending?l=M"
  1244. },
  1245. M4: {
  1246. color: null,
  1247. url: "https://github.com/trending?l=M4"
  1248. },
  1249. M4Sugar: {
  1250. color: null,
  1251. url: "https://github.com/trending?l=M4Sugar"
  1252. },
  1253. Macaulay2: {
  1254. color: "#d8ffff",
  1255. url: "https://github.com/trending?l=Macaulay2"
  1256. },
  1257. Makefile: {
  1258. color: "#427819",
  1259. url: "https://github.com/trending?l=Makefile"
  1260. },
  1261. Mako: {
  1262. color: "#7e858d",
  1263. url: "https://github.com/trending?l=Mako"
  1264. },
  1265. Markdown: {
  1266. color: "#083fa1",
  1267. url: "https://github.com/trending?l=Markdown"
  1268. },
  1269. Marko: {
  1270. color: "#42bff2",
  1271. url: "https://github.com/trending?l=Marko"
  1272. },
  1273. Mask: {
  1274. color: "#f97732",
  1275. url: "https://github.com/trending?l=Mask"
  1276. },
  1277. Mathematica: {
  1278. color: "#dd1100",
  1279. url: "https://github.com/trending?l=Mathematica"
  1280. },
  1281. MATLAB: {
  1282. color: "#e16737",
  1283. url: "https://github.com/trending?l=MATLAB"
  1284. },
  1285. Max: {
  1286. color: "#c4a79c",
  1287. url: "https://github.com/trending?l=Max"
  1288. },
  1289. MAXScript: {
  1290. color: "#00a6a6",
  1291. url: "https://github.com/trending?l=MAXScript"
  1292. },
  1293. mcfunction: {
  1294. color: "#E22837",
  1295. url: "https://github.com/trending?l=mcfunction"
  1296. },
  1297. Mercury: {
  1298. color: "#ff2b2b",
  1299. url: "https://github.com/trending?l=Mercury"
  1300. },
  1301. Meson: {
  1302. color: "#007800",
  1303. url: "https://github.com/trending?l=Meson"
  1304. },
  1305. Metal: {
  1306. color: "#8f14e9",
  1307. url: "https://github.com/trending?l=Metal"
  1308. },
  1309. MiniD: {
  1310. color: null,
  1311. url: "https://github.com/trending?l=MiniD"
  1312. },
  1313. MiniYAML: {
  1314. color: "#ff1111",
  1315. url: "https://github.com/trending?l=MiniYAML"
  1316. },
  1317. Mint: {
  1318. color: "#02b046",
  1319. url: "https://github.com/trending?l=Mint"
  1320. },
  1321. Mirah: {
  1322. color: "#c7a938",
  1323. url: "https://github.com/trending?l=Mirah"
  1324. },
  1325. "mIRC Script": {
  1326. color: "#3d57c3",
  1327. url: "https://github.com/trending?l=mIRC-Script"
  1328. },
  1329. MLIR: {
  1330. color: "#5EC8DB",
  1331. url: "https://github.com/trending?l=MLIR"
  1332. },
  1333. Modelica: {
  1334. color: "#de1d31",
  1335. url: "https://github.com/trending?l=Modelica"
  1336. },
  1337. "Modula-2": {
  1338. color: "#10253f",
  1339. url: "https://github.com/trending?l=Modula-2"
  1340. },
  1341. "Modula-3": {
  1342. color: "#223388",
  1343. url: "https://github.com/trending?l=Modula-3"
  1344. },
  1345. "Module Management System": {
  1346. color: null,
  1347. url: "https://github.com/trending?l=Module-Management-System"
  1348. },
  1349. Monkey: {
  1350. color: null,
  1351. url: "https://github.com/trending?l=Monkey"
  1352. },
  1353. "Monkey C": {
  1354. color: "#8D6747",
  1355. url: "https://github.com/trending?l=Monkey-C"
  1356. },
  1357. Moocode: {
  1358. color: null,
  1359. url: "https://github.com/trending?l=Moocode"
  1360. },
  1361. MoonScript: {
  1362. color: "#ff4585",
  1363. url: "https://github.com/trending?l=MoonScript"
  1364. },
  1365. Motoko: {
  1366. color: "#fbb03b",
  1367. url: "https://github.com/trending?l=Motoko"
  1368. },
  1369. "Motorola 68K Assembly": {
  1370. color: "#005daa",
  1371. url: "https://github.com/trending?l=Motorola-68K-Assembly"
  1372. },
  1373. MQL4: {
  1374. color: "#62A8D6",
  1375. url: "https://github.com/trending?l=MQL4"
  1376. },
  1377. MQL5: {
  1378. color: "#4A76B8",
  1379. url: "https://github.com/trending?l=MQL5"
  1380. },
  1381. MTML: {
  1382. color: "#b7e1f4",
  1383. url: "https://github.com/trending?l=MTML"
  1384. },
  1385. MUF: {
  1386. color: null,
  1387. url: "https://github.com/trending?l=MUF"
  1388. },
  1389. mupad: {
  1390. color: "#244963",
  1391. url: "https://github.com/trending?l=mupad"
  1392. },
  1393. Mustache: {
  1394. color: "#724b3b",
  1395. url: "https://github.com/trending?l=Mustache"
  1396. },
  1397. Myghty: {
  1398. color: null,
  1399. url: "https://github.com/trending?l=Myghty"
  1400. },
  1401. nanorc: {
  1402. color: "#2d004d",
  1403. url: "https://github.com/trending?l=nanorc"
  1404. },
  1405. NASL: {
  1406. color: null,
  1407. url: "https://github.com/trending?l=NASL"
  1408. },
  1409. NCL: {
  1410. color: "#28431f",
  1411. url: "https://github.com/trending?l=NCL"
  1412. },
  1413. Nearley: {
  1414. color: "#990000",
  1415. url: "https://github.com/trending?l=Nearley"
  1416. },
  1417. Nemerle: {
  1418. color: "#3d3c6e",
  1419. url: "https://github.com/trending?l=Nemerle"
  1420. },
  1421. nesC: {
  1422. color: "#94B0C7",
  1423. url: "https://github.com/trending?l=nesC"
  1424. },
  1425. NetLinx: {
  1426. color: "#0aa0ff",
  1427. url: "https://github.com/trending?l=NetLinx"
  1428. },
  1429. "NetLinx+ERB": {
  1430. color: "#747faa",
  1431. url: "https://github.com/trending?l=NetLinx+ERB"
  1432. },
  1433. NetLogo: {
  1434. color: "#ff6375",
  1435. url: "https://github.com/trending?l=NetLogo"
  1436. },
  1437. NewLisp: {
  1438. color: "#87AED7",
  1439. url: "https://github.com/trending?l=NewLisp"
  1440. },
  1441. Nextflow: {
  1442. color: "#3ac486",
  1443. url: "https://github.com/trending?l=Nextflow"
  1444. },
  1445. Nginx: {
  1446. color: "#009639",
  1447. url: "https://github.com/trending?l=Nginx"
  1448. },
  1449. Nim: {
  1450. color: "#ffc200",
  1451. url: "https://github.com/trending?l=Nim"
  1452. },
  1453. Nit: {
  1454. color: "#009917",
  1455. url: "https://github.com/trending?l=Nit"
  1456. },
  1457. Nix: {
  1458. color: "#7e7eff",
  1459. url: "https://github.com/trending?l=Nix"
  1460. },
  1461. "NPM Config": {
  1462. color: "#cb3837",
  1463. url: "https://github.com/trending?l=NPM-Config"
  1464. },
  1465. NSIS: {
  1466. color: null,
  1467. url: "https://github.com/trending?l=NSIS"
  1468. },
  1469. Nu: {
  1470. color: "#c9df40",
  1471. url: "https://github.com/trending?l=Nu"
  1472. },
  1473. NumPy: {
  1474. color: "#9C8AF9",
  1475. url: "https://github.com/trending?l=NumPy"
  1476. },
  1477. Nunjucks: {
  1478. color: "#3d8137",
  1479. url: "https://github.com/trending?l=Nunjucks"
  1480. },
  1481. NWScript: {
  1482. color: "#111522",
  1483. url: "https://github.com/trending?l=NWScript"
  1484. },
  1485. "Objective-C": {
  1486. color: "#438eff",
  1487. url: "https://github.com/trending?l=Objective-C"
  1488. },
  1489. "Objective-C++": {
  1490. color: "#6866fb",
  1491. url: "https://github.com/trending?l=Objective-C++"
  1492. },
  1493. "Objective-J": {
  1494. color: "#ff0c5a",
  1495. url: "https://github.com/trending?l=Objective-J"
  1496. },
  1497. ObjectScript: {
  1498. color: "#424893",
  1499. url: "https://github.com/trending?l=ObjectScript"
  1500. },
  1501. OCaml: {
  1502. color: "#3be133",
  1503. url: "https://github.com/trending?l=OCaml"
  1504. },
  1505. Odin: {
  1506. color: "#60AFFE",
  1507. url: "https://github.com/trending?l=Odin"
  1508. },
  1509. Omgrofl: {
  1510. color: "#cabbff",
  1511. url: "https://github.com/trending?l=Omgrofl"
  1512. },
  1513. ooc: {
  1514. color: "#b0b77e",
  1515. url: "https://github.com/trending?l=ooc"
  1516. },
  1517. Opa: {
  1518. color: null,
  1519. url: "https://github.com/trending?l=Opa"
  1520. },
  1521. Opal: {
  1522. color: "#f7ede0",
  1523. url: "https://github.com/trending?l=Opal"
  1524. },
  1525. "Open Policy Agent": {
  1526. color: "#7d9199",
  1527. url: "https://github.com/trending?l=Open-Policy-Agent"
  1528. },
  1529. OpenCL: {
  1530. color: "#ed2e2d",
  1531. url: "https://github.com/trending?l=OpenCL"
  1532. },
  1533. "OpenEdge ABL": {
  1534. color: "#5ce600",
  1535. url: "https://github.com/trending?l=OpenEdge-ABL"
  1536. },
  1537. OpenQASM: {
  1538. color: "#AA70FF",
  1539. url: "https://github.com/trending?l=OpenQASM"
  1540. },
  1541. "OpenRC runscript": {
  1542. color: null,
  1543. url: "https://github.com/trending?l=OpenRC-runscript"
  1544. },
  1545. OpenSCAD: {
  1546. color: "#e5cd45",
  1547. url: "https://github.com/trending?l=OpenSCAD"
  1548. },
  1549. Org: {
  1550. color: "#77aa99",
  1551. url: "https://github.com/trending?l=Org"
  1552. },
  1553. Ox: {
  1554. color: null,
  1555. url: "https://github.com/trending?l=Ox"
  1556. },
  1557. Oxygene: {
  1558. color: "#cdd0e3",
  1559. url: "https://github.com/trending?l=Oxygene"
  1560. },
  1561. Oz: {
  1562. color: "#fab738",
  1563. url: "https://github.com/trending?l=Oz"
  1564. },
  1565. P4: {
  1566. color: "#7055b5",
  1567. url: "https://github.com/trending?l=P4"
  1568. },
  1569. Pan: {
  1570. color: "#cc0000",
  1571. url: "https://github.com/trending?l=Pan"
  1572. },
  1573. Papyrus: {
  1574. color: "#6600cc",
  1575. url: "https://github.com/trending?l=Papyrus"
  1576. },
  1577. Parrot: {
  1578. color: "#f3ca0a",
  1579. url: "https://github.com/trending?l=Parrot"
  1580. },
  1581. "Parrot Assembly": {
  1582. color: null,
  1583. url: "https://github.com/trending?l=Parrot-Assembly"
  1584. },
  1585. "Parrot Internal Representation": {
  1586. color: null,
  1587. url: "https://github.com/trending?l=Parrot-Internal-Representation"
  1588. },
  1589. Pascal: {
  1590. color: "#E3F171",
  1591. url: "https://github.com/trending?l=Pascal"
  1592. },
  1593. Pawn: {
  1594. color: "#dbb284",
  1595. url: "https://github.com/trending?l=Pawn"
  1596. },
  1597. "PEG.js": {
  1598. color: "#234d6b",
  1599. url: "https://github.com/trending?l=PEG.js"
  1600. },
  1601. Pep8: {
  1602. color: "#C76F5B",
  1603. url: "https://github.com/trending?l=Pep8"
  1604. },
  1605. Perl: {
  1606. color: "#0298c3",
  1607. url: "https://github.com/trending?l=Perl"
  1608. },
  1609. PHP: {
  1610. color: "#4F5D95",
  1611. url: "https://github.com/trending?l=PHP"
  1612. },
  1613. PicoLisp: {
  1614. color: "#6067af",
  1615. url: "https://github.com/trending?l=PicoLisp"
  1616. },
  1617. PigLatin: {
  1618. color: "#fcd7de",
  1619. url: "https://github.com/trending?l=PigLatin"
  1620. },
  1621. Pike: {
  1622. color: "#005390",
  1623. url: "https://github.com/trending?l=Pike"
  1624. },
  1625. PLpgSQL: {
  1626. color: "#336790",
  1627. url: "https://github.com/trending?l=PLpgSQL"
  1628. },
  1629. PLSQL: {
  1630. color: "#dad8d8",
  1631. url: "https://github.com/trending?l=PLSQL"
  1632. },
  1633. PogoScript: {
  1634. color: "#d80074",
  1635. url: "https://github.com/trending?l=PogoScript"
  1636. },
  1637. Pony: {
  1638. color: null,
  1639. url: "https://github.com/trending?l=Pony"
  1640. },
  1641. PostCSS: {
  1642. color: "#dc3a0c",
  1643. url: "https://github.com/trending?l=PostCSS"
  1644. },
  1645. PostScript: {
  1646. color: "#da291c",
  1647. url: "https://github.com/trending?l=PostScript"
  1648. },
  1649. "POV-Ray SDL": {
  1650. color: "#6bac65",
  1651. url: "https://github.com/trending?l=POV-Ray-SDL"
  1652. },
  1653. PowerBuilder: {
  1654. color: "#8f0f8d",
  1655. url: "https://github.com/trending?l=PowerBuilder"
  1656. },
  1657. PowerShell: {
  1658. color: "#012456",
  1659. url: "https://github.com/trending?l=PowerShell"
  1660. },
  1661. Prisma: {
  1662. color: "#0c344b",
  1663. url: "https://github.com/trending?l=Prisma"
  1664. },
  1665. Processing: {
  1666. color: "#0096D8",
  1667. url: "https://github.com/trending?l=Processing"
  1668. },
  1669. Procfile: {
  1670. color: "#3B2F63",
  1671. url: "https://github.com/trending?l=Procfile"
  1672. },
  1673. Prolog: {
  1674. color: "#74283c",
  1675. url: "https://github.com/trending?l=Prolog"
  1676. },
  1677. Promela: {
  1678. color: "#de0000",
  1679. url: "https://github.com/trending?l=Promela"
  1680. },
  1681. "Propeller Spin": {
  1682. color: "#7fa2a7",
  1683. url: "https://github.com/trending?l=Propeller-Spin"
  1684. },
  1685. Pug: {
  1686. color: "#a86454",
  1687. url: "https://github.com/trending?l=Pug"
  1688. },
  1689. Puppet: {
  1690. color: "#302B6D",
  1691. url: "https://github.com/trending?l=Puppet"
  1692. },
  1693. PureBasic: {
  1694. color: "#5a6986",
  1695. url: "https://github.com/trending?l=PureBasic"
  1696. },
  1697. PureScript: {
  1698. color: "#1D222D",
  1699. url: "https://github.com/trending?l=PureScript"
  1700. },
  1701. Python: {
  1702. color: "#3572A5",
  1703. url: "https://github.com/trending?l=Python"
  1704. },
  1705. "Python console": {
  1706. color: "#3572A5",
  1707. url: "https://github.com/trending?l=Python-console"
  1708. },
  1709. "Python traceback": {
  1710. color: "#3572A5",
  1711. url: "https://github.com/trending?l=Python-traceback"
  1712. },
  1713. q: {
  1714. color: "#0040cd",
  1715. url: "https://github.com/trending?l=q"
  1716. },
  1717. "Q#": {
  1718. color: "#fed659",
  1719. url: "https://github.com/trending?l=Qsharp"
  1720. },
  1721. QMake: {
  1722. color: null,
  1723. url: "https://github.com/trending?l=QMake"
  1724. },
  1725. QML: {
  1726. color: "#44a51c",
  1727. url: "https://github.com/trending?l=QML"
  1728. },
  1729. "Qt Script": {
  1730. color: "#00b841",
  1731. url: "https://github.com/trending?l=Qt-Script"
  1732. },
  1733. Quake: {
  1734. color: "#882233",
  1735. url: "https://github.com/trending?l=Quake"
  1736. },
  1737. R: {
  1738. color: "#198CE7",
  1739. url: "https://github.com/trending?l=R"
  1740. },
  1741. Racket: {
  1742. color: "#3c5caa",
  1743. url: "https://github.com/trending?l=Racket"
  1744. },
  1745. Ragel: {
  1746. color: "#9d5200",
  1747. url: "https://github.com/trending?l=Ragel"
  1748. },
  1749. Raku: {
  1750. color: "#0000fb",
  1751. url: "https://github.com/trending?l=Raku"
  1752. },
  1753. RAML: {
  1754. color: "#77d9fb",
  1755. url: "https://github.com/trending?l=RAML"
  1756. },
  1757. Rascal: {
  1758. color: "#fffaa0",
  1759. url: "https://github.com/trending?l=Rascal"
  1760. },
  1761. RDoc: {
  1762. color: "#701516",
  1763. url: "https://github.com/trending?l=RDoc"
  1764. },
  1765. REALbasic: {
  1766. color: null,
  1767. url: "https://github.com/trending?l=REALbasic"
  1768. },
  1769. Reason: {
  1770. color: "#ff5847",
  1771. url: "https://github.com/trending?l=Reason"
  1772. },
  1773. ReasonLIGO: {
  1774. color: "#ff5847",
  1775. url: "https://github.com/trending?l=ReasonLIGO"
  1776. },
  1777. Rebol: {
  1778. color: "#358a5b",
  1779. url: "https://github.com/trending?l=Rebol"
  1780. },
  1781. "Record Jar": {
  1782. color: "#0673ba",
  1783. url: "https://github.com/trending?l=Record-Jar"
  1784. },
  1785. Red: {
  1786. color: "#f50000",
  1787. url: "https://github.com/trending?l=Red"
  1788. },
  1789. Redcode: {
  1790. color: null,
  1791. url: "https://github.com/trending?l=Redcode"
  1792. },
  1793. "Regular Expression": {
  1794. color: "#009a00",
  1795. url: "https://github.com/trending?l=Regular-Expression"
  1796. },
  1797. "Ren'Py": {
  1798. color: "#ff7f7f",
  1799. url: "https://github.com/trending?l=Ren'Py"
  1800. },
  1801. RenderScript: {
  1802. color: null,
  1803. url: "https://github.com/trending?l=RenderScript"
  1804. },
  1805. ReScript: {
  1806. color: "#ed5051",
  1807. url: "https://github.com/trending?l=ReScript"
  1808. },
  1809. reStructuredText: {
  1810. color: "#141414",
  1811. url: "https://github.com/trending?l=reStructuredText"
  1812. },
  1813. REXX: {
  1814. color: "#d90e09",
  1815. url: "https://github.com/trending?l=REXX"
  1816. },
  1817. Ring: {
  1818. color: "#2D54CB",
  1819. url: "https://github.com/trending?l=Ring"
  1820. },
  1821. Riot: {
  1822. color: "#A71E49",
  1823. url: "https://github.com/trending?l=Riot"
  1824. },
  1825. RMarkdown: {
  1826. color: "#198ce7",
  1827. url: "https://github.com/trending?l=RMarkdown"
  1828. },
  1829. RobotFramework: {
  1830. color: "#00c0b5",
  1831. url: "https://github.com/trending?l=RobotFramework"
  1832. },
  1833. Roff: {
  1834. color: "#ecdebe",
  1835. url: "https://github.com/trending?l=Roff"
  1836. },
  1837. "Roff Manpage": {
  1838. color: "#ecdebe",
  1839. url: "https://github.com/trending?l=Roff-Manpage"
  1840. },
  1841. Rouge: {
  1842. color: "#cc0088",
  1843. url: "https://github.com/trending?l=Rouge"
  1844. },
  1845. RPC: {
  1846. color: null,
  1847. url: "https://github.com/trending?l=RPC"
  1848. },
  1849. RPGLE: {
  1850. color: "#2BDE21",
  1851. url: "https://github.com/trending?l=RPGLE"
  1852. },
  1853. Ruby: {
  1854. color: "#701516",
  1855. url: "https://github.com/trending?l=Ruby"
  1856. },
  1857. RUNOFF: {
  1858. color: "#665a4e",
  1859. url: "https://github.com/trending?l=RUNOFF"
  1860. },
  1861. Rust: {
  1862. color: "#dea584",
  1863. url: "https://github.com/trending?l=Rust"
  1864. },
  1865. Sage: {
  1866. color: null,
  1867. url: "https://github.com/trending?l=Sage"
  1868. },
  1869. SaltStack: {
  1870. color: "#646464",
  1871. url: "https://github.com/trending?l=SaltStack"
  1872. },
  1873. SAS: {
  1874. color: "#B34936",
  1875. url: "https://github.com/trending?l=SAS"
  1876. },
  1877. Sass: {
  1878. color: "#a53b70",
  1879. url: "https://github.com/trending?l=Sass"
  1880. },
  1881. Scala: {
  1882. color: "#c22d40",
  1883. url: "https://github.com/trending?l=Scala"
  1884. },
  1885. Scaml: {
  1886. color: "#bd181a",
  1887. url: "https://github.com/trending?l=Scaml"
  1888. },
  1889. Scheme: {
  1890. color: "#1e4aec",
  1891. url: "https://github.com/trending?l=Scheme"
  1892. },
  1893. Scilab: {
  1894. color: "#ca0f21",
  1895. url: "https://github.com/trending?l=Scilab"
  1896. },
  1897. SCSS: {
  1898. color: "#c6538c",
  1899. url: "https://github.com/trending?l=SCSS"
  1900. },
  1901. sed: {
  1902. color: "#64b970",
  1903. url: "https://github.com/trending?l=sed"
  1904. },
  1905. Self: {
  1906. color: "#0579aa",
  1907. url: "https://github.com/trending?l=Self"
  1908. },
  1909. ShaderLab: {
  1910. color: "#222c37",
  1911. url: "https://github.com/trending?l=ShaderLab"
  1912. },
  1913. Shell: {
  1914. color: "#89e051",
  1915. url: "https://github.com/trending?l=Shell"
  1916. },
  1917. "ShellCheck Config": {
  1918. color: "#cecfcb",
  1919. url: "https://github.com/trending?l=ShellCheck-Config"
  1920. },
  1921. ShellSession: {
  1922. color: null,
  1923. url: "https://github.com/trending?l=ShellSession"
  1924. },
  1925. Shen: {
  1926. color: "#120F14",
  1927. url: "https://github.com/trending?l=Shen"
  1928. },
  1929. Sieve: {
  1930. color: null,
  1931. url: "https://github.com/trending?l=Sieve"
  1932. },
  1933. Singularity: {
  1934. color: "#64E6AD",
  1935. url: "https://github.com/trending?l=Singularity"
  1936. },
  1937. Slash: {
  1938. color: "#007eff",
  1939. url: "https://github.com/trending?l=Slash"
  1940. },
  1941. Slice: {
  1942. color: "#003fa2",
  1943. url: "https://github.com/trending?l=Slice"
  1944. },
  1945. Slim: {
  1946. color: "#2b2b2b",
  1947. url: "https://github.com/trending?l=Slim"
  1948. },
  1949. Smali: {
  1950. color: null,
  1951. url: "https://github.com/trending?l=Smali"
  1952. },
  1953. Smalltalk: {
  1954. color: "#596706",
  1955. url: "https://github.com/trending?l=Smalltalk"
  1956. },
  1957. Smarty: {
  1958. color: "#f0c040",
  1959. url: "https://github.com/trending?l=Smarty"
  1960. },
  1961. SmPL: {
  1962. color: "#c94949",
  1963. url: "https://github.com/trending?l=SmPL"
  1964. },
  1965. SMT: {
  1966. color: null,
  1967. url: "https://github.com/trending?l=SMT"
  1968. },
  1969. Solidity: {
  1970. color: "#AA6746",
  1971. url: "https://github.com/trending?l=Solidity"
  1972. },
  1973. SourcePawn: {
  1974. color: "#f69e1d",
  1975. url: "https://github.com/trending?l=SourcePawn"
  1976. },
  1977. SPARQL: {
  1978. color: "#0C4597",
  1979. url: "https://github.com/trending?l=SPARQL"
  1980. },
  1981. SQF: {
  1982. color: "#3F3F3F",
  1983. url: "https://github.com/trending?l=SQF"
  1984. },
  1985. SQL: {
  1986. color: "#e38c00",
  1987. url: "https://github.com/trending?l=SQL"
  1988. },
  1989. SQLPL: {
  1990. color: "#e38c00",
  1991. url: "https://github.com/trending?l=SQLPL"
  1992. },
  1993. Squirrel: {
  1994. color: "#800000",
  1995. url: "https://github.com/trending?l=Squirrel"
  1996. },
  1997. "SRecode Template": {
  1998. color: "#348a34",
  1999. url: "https://github.com/trending?l=SRecode-Template"
  2000. },
  2001. Stan: {
  2002. color: "#b2011d",
  2003. url: "https://github.com/trending?l=Stan"
  2004. },
  2005. "Standard ML": {
  2006. color: "#dc566d",
  2007. url: "https://github.com/trending?l=Standard-ML"
  2008. },
  2009. Starlark: {
  2010. color: "#76d275",
  2011. url: "https://github.com/trending?l=Starlark"
  2012. },
  2013. Stata: {
  2014. color: "#1a5f91",
  2015. url: "https://github.com/trending?l=Stata"
  2016. },
  2017. StringTemplate: {
  2018. color: "#3fb34f",
  2019. url: "https://github.com/trending?l=StringTemplate"
  2020. },
  2021. Stylus: {
  2022. color: "#ff6347",
  2023. url: "https://github.com/trending?l=Stylus"
  2024. },
  2025. "SubRip Text": {
  2026. color: "#9e0101",
  2027. url: "https://github.com/trending?l=SubRip-Text"
  2028. },
  2029. SugarSS: {
  2030. color: "#2fcc9f",
  2031. url: "https://github.com/trending?l=SugarSS"
  2032. },
  2033. SuperCollider: {
  2034. color: "#46390b",
  2035. url: "https://github.com/trending?l=SuperCollider"
  2036. },
  2037. Svelte: {
  2038. color: "#ff3e00",
  2039. url: "https://github.com/trending?l=Svelte"
  2040. },
  2041. SVG: {
  2042. color: "#ff9900",
  2043. url: "https://github.com/trending?l=SVG"
  2044. },
  2045. Swift: {
  2046. color: "#F05138",
  2047. url: "https://github.com/trending?l=Swift"
  2048. },
  2049. SWIG: {
  2050. color: null,
  2051. url: "https://github.com/trending?l=SWIG"
  2052. },
  2053. SystemVerilog: {
  2054. color: "#DAE1C2",
  2055. url: "https://github.com/trending?l=SystemVerilog"
  2056. },
  2057. Talon: {
  2058. color: "#333333",
  2059. url: "https://github.com/trending?l=Talon"
  2060. },
  2061. Tcl: {
  2062. color: "#e4cc98",
  2063. url: "https://github.com/trending?l=Tcl"
  2064. },
  2065. Tcsh: {
  2066. color: null,
  2067. url: "https://github.com/trending?l=Tcsh"
  2068. },
  2069. Terra: {
  2070. color: "#00004c",
  2071. url: "https://github.com/trending?l=Terra"
  2072. },
  2073. TeX: {
  2074. color: "#3D6117",
  2075. url: "https://github.com/trending?l=TeX"
  2076. },
  2077. Textile: {
  2078. color: "#ffe7ac",
  2079. url: "https://github.com/trending?l=Textile"
  2080. },
  2081. "TextMate Properties": {
  2082. color: "#df66e4",
  2083. url: "https://github.com/trending?l=TextMate-Properties"
  2084. },
  2085. Thrift: {
  2086. color: "#D12127",
  2087. url: "https://github.com/trending?l=Thrift"
  2088. },
  2089. "TI Program": {
  2090. color: "#A0AA87",
  2091. url: "https://github.com/trending?l=TI-Program"
  2092. },
  2093. TLA: {
  2094. color: "#4b0079",
  2095. url: "https://github.com/trending?l=TLA"
  2096. },
  2097. TOML: {
  2098. color: "#9c4221",
  2099. url: "https://github.com/trending?l=TOML"
  2100. },
  2101. TSQL: {
  2102. color: "#e38c00",
  2103. url: "https://github.com/trending?l=TSQL"
  2104. },
  2105. TSV: {
  2106. color: "#237346",
  2107. url: "https://github.com/trending?l=TSV"
  2108. },
  2109. TSX: {
  2110. color: "#2b7489",
  2111. url: "https://github.com/trending?l=TSX"
  2112. },
  2113. Turing: {
  2114. color: "#cf142b",
  2115. url: "https://github.com/trending?l=Turing"
  2116. },
  2117. Twig: {
  2118. color: "#c1d026",
  2119. url: "https://github.com/trending?l=Twig"
  2120. },
  2121. TXL: {
  2122. color: "#0178b8",
  2123. url: "https://github.com/trending?l=TXL"
  2124. },
  2125. TypeScript: {
  2126. color: "#2b7489",
  2127. url: "https://github.com/trending?l=TypeScript"
  2128. },
  2129. "Unified Parallel C": {
  2130. color: "#4e3617",
  2131. url: "https://github.com/trending?l=Unified-Parallel-C"
  2132. },
  2133. "Unity3D Asset": {
  2134. color: "#222c37",
  2135. url: "https://github.com/trending?l=Unity3D-Asset"
  2136. },
  2137. "Unix Assembly": {
  2138. color: null,
  2139. url: "https://github.com/trending?l=Unix-Assembly"
  2140. },
  2141. Uno: {
  2142. color: "#9933cc",
  2143. url: "https://github.com/trending?l=Uno"
  2144. },
  2145. UnrealScript: {
  2146. color: "#a54c4d",
  2147. url: "https://github.com/trending?l=UnrealScript"
  2148. },
  2149. UrWeb: {
  2150. color: "#ccccee",
  2151. url: "https://github.com/trending?l=UrWeb"
  2152. },
  2153. V: {
  2154. color: "#4f87c4",
  2155. url: "https://github.com/trending?l=V"
  2156. },
  2157. Vala: {
  2158. color: "#a56de2",
  2159. url: "https://github.com/trending?l=Vala"
  2160. },
  2161. "Valve Data Format": {
  2162. color: "#f26025",
  2163. url: "https://github.com/trending?l=Valve-Data-Format"
  2164. },
  2165. VBA: {
  2166. color: "#867db1",
  2167. url: "https://github.com/trending?l=VBA"
  2168. },
  2169. VBScript: {
  2170. color: "#15dcdc",
  2171. url: "https://github.com/trending?l=VBScript"
  2172. },
  2173. VCL: {
  2174. color: "#148AA8",
  2175. url: "https://github.com/trending?l=VCL"
  2176. },
  2177. Verilog: {
  2178. color: "#b2b7f8",
  2179. url: "https://github.com/trending?l=Verilog"
  2180. },
  2181. VHDL: {
  2182. color: "#adb2cb",
  2183. url: "https://github.com/trending?l=VHDL"
  2184. },
  2185. "Vim Help File": {
  2186. color: "#199f4b",
  2187. url: "https://github.com/trending?l=Vim-Help-File"
  2188. },
  2189. "Vim Script": {
  2190. color: "#199f4b",
  2191. url: "https://github.com/trending?l=Vim-Script"
  2192. },
  2193. "Vim Snippet": {
  2194. color: "#199f4b",
  2195. url: "https://github.com/trending?l=Vim-Snippet"
  2196. },
  2197. "Visual Basic .NET": {
  2198. color: "#945db7",
  2199. url: "https://github.com/trending?l=Visual-Basic-.NET"
  2200. },
  2201. Volt: {
  2202. color: "#1F1F1F",
  2203. url: "https://github.com/trending?l=Volt"
  2204. },
  2205. Vue: {
  2206. color: "#41b883",
  2207. url: "https://github.com/trending?l=Vue"
  2208. },
  2209. Vyper: {
  2210. color: "#2980b9",
  2211. url: "https://github.com/trending?l=Vyper"
  2212. },
  2213. wdl: {
  2214. color: "#42f1f4",
  2215. url: "https://github.com/trending?l=wdl"
  2216. },
  2217. "Web Ontology Language": {
  2218. color: "#5b70bd",
  2219. url: "https://github.com/trending?l=Web-Ontology-Language"
  2220. },
  2221. WebAssembly: {
  2222. color: "#04133b",
  2223. url: "https://github.com/trending?l=WebAssembly"
  2224. },
  2225. WebIDL: {
  2226. color: null,
  2227. url: "https://github.com/trending?l=WebIDL"
  2228. },
  2229. Wikitext: {
  2230. color: "#fc5757",
  2231. url: "https://github.com/trending?l=Wikitext"
  2232. },
  2233. "Windows Registry Entries": {
  2234. color: "#52d5ff",
  2235. url: "https://github.com/trending?l=Windows-Registry-Entries"
  2236. },
  2237. wisp: {
  2238. color: "#7582D1",
  2239. url: "https://github.com/trending?l=wisp"
  2240. },
  2241. "Witcher Script": {
  2242. color: "#ff0000",
  2243. url: "https://github.com/trending?l=Witcher-Script"
  2244. },
  2245. Wollok: {
  2246. color: "#a23738",
  2247. url: "https://github.com/trending?l=Wollok"
  2248. },
  2249. "World of Warcraft Addon Data": {
  2250. color: "#f7e43f",
  2251. url: "https://github.com/trending?l=World-of-Warcraft-Addon-Data"
  2252. },
  2253. X10: {
  2254. color: "#4B6BEF",
  2255. url: "https://github.com/trending?l=X10"
  2256. },
  2257. xBase: {
  2258. color: "#403a40",
  2259. url: "https://github.com/trending?l=xBase"
  2260. },
  2261. XC: {
  2262. color: "#99DA07",
  2263. url: "https://github.com/trending?l=XC"
  2264. },
  2265. XML: {
  2266. color: "#0060ac",
  2267. url: "https://github.com/trending?l=XML"
  2268. },
  2269. "XML Property List": {
  2270. color: "#0060ac",
  2271. url: "https://github.com/trending?l=XML-Property-List"
  2272. },
  2273. Xojo: {
  2274. color: "#81bd41",
  2275. url: "https://github.com/trending?l=Xojo"
  2276. },
  2277. Xonsh: {
  2278. color: "#285EEF",
  2279. url: "https://github.com/trending?l=Xonsh"
  2280. },
  2281. XProc: {
  2282. color: null,
  2283. url: "https://github.com/trending?l=XProc"
  2284. },
  2285. XQuery: {
  2286. color: "#5232e7",
  2287. url: "https://github.com/trending?l=XQuery"
  2288. },
  2289. XS: {
  2290. color: null,
  2291. url: "https://github.com/trending?l=XS"
  2292. },
  2293. XSLT: {
  2294. color: "#EB8CEB",
  2295. url: "https://github.com/trending?l=XSLT"
  2296. },
  2297. Xtend: {
  2298. color: "#24255d",
  2299. url: "https://github.com/trending?l=Xtend"
  2300. },
  2301. Yacc: {
  2302. color: "#4B6C4B",
  2303. url: "https://github.com/trending?l=Yacc"
  2304. },
  2305. YAML: {
  2306. color: "#cb171e",
  2307. url: "https://github.com/trending?l=YAML"
  2308. },
  2309. YARA: {
  2310. color: "#220000",
  2311. url: "https://github.com/trending?l=YARA"
  2312. },
  2313. YASnippet: {
  2314. color: "#32AB90",
  2315. url: "https://github.com/trending?l=YASnippet"
  2316. },
  2317. ZAP: {
  2318. color: "#0d665e",
  2319. url: "https://github.com/trending?l=ZAP"
  2320. },
  2321. Zeek: {
  2322. color: null,
  2323. url: "https://github.com/trending?l=Zeek"
  2324. },
  2325. ZenScript: {
  2326. color: "#00BCD1",
  2327. url: "https://github.com/trending?l=ZenScript"
  2328. },
  2329. Zephir: {
  2330. color: "#118f9e",
  2331. url: "https://github.com/trending?l=Zephir"
  2332. },
  2333. Zig: {
  2334. color: "#ec915c",
  2335. url: "https://github.com/trending?l=Zig"
  2336. },
  2337. ZIL: {
  2338. color: "#dc75e5",
  2339. url: "https://github.com/trending?l=ZIL"
  2340. },
  2341. Zimpl: {
  2342. color: "#d67711",
  2343. url: "https://github.com/trending?l=Zimpl"
  2344. }
  2345. };
  2346. function renderLanguageColor(language) {
  2347. return LANGUAGE_COLORS[language].color;
  2348. }
  2349. var titleTemplate = `
  2350. <h2 class="f5 text-bold mb-1" style="display:inline-block">Explore repositories</h2>
  2351. <details class="details-reset details-overlay dropdown float-right mt-1">
  2352. <summary class="pinned-items-setting-link Link--muted" aria-haspopup="menu" role="button">
  2353. Explore settings
  2354. <div class="dropdown-caret"></div>
  2355. </summary>
  2356.  
  2357. <details-menu class="dropdown-menu dropdown-menu-sw contributions-setting-menu" role="menu" style="width: 240px">
  2358. <button id="gitrec-button" class="dropdown-item ws-normal btn-link text-left pl-5" role="menuitem">
  2359. <div class="text-bold">Explore GitRec</div>
  2360. <span class="f6 mt-1">
  2361. Explore repositories from GitRec based on starred repositories.
  2362. </span>
  2363. </button>
  2364. <div role="none" class="dropdown-divider"></div>
  2365. <button id="github-button" value="1" class="dropdown-item ws-normal btn-link text-left pl-5" role="menuitem">
  2366. <div class="d-flex flex-items-center text-bold">Explore GitHub</div>
  2367. <span class="f6 mt-1">
  2368. Explore repositories from GitHub official recommendation.
  2369. </span>
  2370. </button>
  2371. </details-menu>
  2372. </details>`;
  2373. let itemId = null;
  2374. let similarOffset = 0;
  2375. var exploreContent = null;
  2376. const mountFn = async () => {
  2377. const splits = location.pathname.split("/").filter((s) => s);
  2378. if (splits.length === 2) {
  2379. itemId = splits[0] + ":" + splits[1];
  2380. await api.read({ itemId });
  2381. loadSimilarRepos();
  2382. } else if (splits.length === 0) {
  2383. let exploreDiv = $__default.default("[aria-label='Explore repositories']");
  2384. if (exploreContent == null) {
  2385. exploreContent = exploreDiv.children("div[data-view-component=true]");
  2386. }
  2387. exploreDiv.children("h2.f5").remove();
  2388. exploreDiv.children("details").remove();
  2389. exploreDiv.children("div.py-2").remove();
  2390. exploreDiv.children("a.f6").remove();
  2391. exploreDiv.append($__default.default($__default.default.parseHTML(titleTemplate)));
  2392. $__default.default("#gitrec-button").click(function() {
  2393. client.GM_setValue("explore", "gitrec");
  2394. selectExploreSettings("gitrec");
  2395. loadRecommendRepos();
  2396. return false;
  2397. });
  2398. $__default.default("#github-button").click(function() {
  2399. client.GM_setValue("explore", "github");
  2400. selectExploreSettings("github");
  2401. loadRecommendRepos();
  2402. return false;
  2403. });
  2404. selectExploreSettings(client.GM_getValue("explore", "gitrec"));
  2405. loadRecommendRepos();
  2406. }
  2407. };
  2408. $__default.default(mountFn);
  2409. const pushState = history.pushState.bind(history);
  2410. const replaceState = history.replaceState.bind(history);
  2411. history.pushState = function(...args) {
  2412. setTimeout(mountFn);
  2413. return pushState(...args);
  2414. };
  2415. history.replaceState = function(...args) {
  2416. setTimeout(mountFn);
  2417. return replaceState(...args);
  2418. };
  2419. client.unsafeWindow.addEventListener("popstate", mountFn);
  2420. async function loadSimilarRepos() {
  2421. const result = await api.neighbors({
  2422. neighbors: itemId,
  2423. offset: similarOffset
  2424. });
  2425. if (result.is_authenticated) {
  2426. renderSimilarDiv(result);
  2427. } else {
  2428. let responses = [];
  2429. for (const score of result.scores) {
  2430. const full_name = score.Id.replace(":", "/");
  2431. responses.push(fetchRepo(full_name));
  2432. }
  2433. Promise.all(responses).then((repos) => {
  2434. result.repos = repos;
  2435. for (const [i, score] of result.scores.entries()) {
  2436. if (repos[i].full_name) {
  2437. result.repos[i].item_id = score.Id;
  2438. } else {
  2439. result.message = repos[i].message;
  2440. }
  2441. }
  2442. renderSimilarDiv(result);
  2443. });
  2444. }
  2445. }
  2446. async function renderSimilarDiv(result) {
  2447. let count = 0;
  2448. let rows = "";
  2449. let previous = "";
  2450. let next = "";
  2451. if (result.message) {
  2452. let errorMessage = "";
  2453. if (result.message.startsWith("API rate limit exceeded")) {
  2454. errorMessage = `API rate limit exceeded. Login <a href="https://gitrec.gorse.io" target="_blank">GitRec</a> to get a higher rate limit.`;
  2455. } else {
  2456. errorMessage = result.message;
  2457. }
  2458. rows = `<div class="text-small color-fg-muted">${errorMessage}</div>`;
  2459. } else if (result.repos.length > 0) {
  2460. for (const repo of result.repos) {
  2461. if (repo.full_name) {
  2462. if (repo.item_id != repo.full_name.replace("/", ":").toLowerCase()) {
  2463. api.delete({ itemId: repo.item_id });
  2464. } else if (count < 3) {
  2465. count++;
  2466. rows += `
  2467. <div class="py-2 my-2 color-border-muted">
  2468. <a class="f6 text-bold Link--primary d-flex no-underline wb-break-all d-inline-block" href="/${repo.full_name}">${repo.full_name}</a>
  2469. <p class="f6 color-fg-muted mb-2" itemprop="description">${repo.description ? repo.description : ""}</p>
  2470. ${renderLanguageSpan(repo.language)}
  2471. <span class="f6 color-fg-muted text-normal">
  2472. <svg aria-label="star" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-star">
  2473. <path fill-rule="evenodd" d="M8 .25a.75.75 0 01.673.418l1.882 3.815 4.21.612a.75.75 0 01.416 1.279l-3.046 2.97.719 4.192a.75.75 0 01-1.088.791L8 12.347l-3.766 1.98a.75.75 0 01-1.088-.79l.72-4.194L.818 6.374a.75.75 0 01.416-1.28l4.21-.611L7.327.668A.75.75 0 018 .25zm0 2.445L6.615 5.5a.75.75 0 01-.564.41l-3.097.45 2.24 2.184a.75.75 0 01.216.664l-.528 3.084 2.769-1.456a.75.75 0 01.698 0l2.77 1.456-.53-3.084a.75.75 0 01.216-.664l2.24-2.183-3.096-.45a.75.75 0 01-.564-.41L8 2.694v.001z"></path>
  2474. </svg>
  2475. ${repo.stargazers_count}
  2476. </span>
  2477. </div>`;
  2478. }
  2479. } else if (repo.message == "Not Found") {
  2480. api.delete({ itemId: repo.item_id });
  2481. }
  2482. }
  2483. previous = similarOffset > 0 ? `<a id="previous-button" class="text-small" href="#">\u2190 Previous</a>` : '<span id="previous-button" class="text-small color-fg-muted">\u2190 Previous</span>';
  2484. next = similarOffset < 9 ? `<a id="next-button" class="text-small" style="float: right" href="#">Next \u2192</a>` : `<span id="next-button" class="text-small color-fg-muted" style="float: right">Next \u2192</span>`;
  2485. } else {
  2486. rows = '<div class="text-small color-fg-muted">No similar repositories found</div>';
  2487. }
  2488. const template = `
  2489. <div class="BorderGrid-row" id="similar-repositories">
  2490. <div class="BorderGrid-cell">
  2491. <h2 class="h4 mb-3">Related repositories</h2>
  2492. ${rows}${previous}${next}
  2493. </div>
  2494. </div>`;
  2495. $__default.default("#similar-repositories").remove();
  2496. $__default.default(".BorderGrid:first").append($__default.default($__default.default.parseHTML(template)));
  2497. $__default.default("a#previous-button").click(function() {
  2498. $__default.default("#previous-button").remove();
  2499. $__default.default("#next-button").remove();
  2500. similarOffset -= 3;
  2501. loadSimilarRepos();
  2502. return false;
  2503. });
  2504. $__default.default("a#next-button").click(function() {
  2505. $__default.default("#previous-button").remove();
  2506. $__default.default("#next-button").remove();
  2507. similarOffset += 3;
  2508. loadSimilarRepos();
  2509. return false;
  2510. });
  2511. }
  2512. async function loadRecommendRepos() {
  2513. let exploreDiv = $__default.default("[aria-label='Explore repositories']");
  2514. exploreDiv.children("div[data-view-component=true]").remove();
  2515. exploreDiv.children("div.py-2").remove();
  2516. exploreDiv.children("a.f6").remove();
  2517. exploreDiv.children("#error-message").remove();
  2518. const explore = client.GM_getValue("explore", "gitrec");
  2519. if (explore == "gitrec") {
  2520. const result = await api.recommendExtension();
  2521. if (result.is_authenticated) {
  2522. showRecommend(result);
  2523. } else {
  2524. const login = $__default.default("meta[name=user-login]").attr("content");
  2525. const result2 = await (await fetch(
  2526. `https://api.github.com/users/${login}/starred?per_page=100`
  2527. )).json();
  2528. if (result2.message) {
  2529. showRecommend(result2);
  2530. } else {
  2531. let repoNames = result2.map((value) => {
  2532. return value.full_name.replace("/", ":");
  2533. });
  2534. const scores = await api.recommendSession({
  2535. recommend: repoNames
  2536. });
  2537. let responses = [];
  2538. for (const score of scores) {
  2539. const full_name = score.Id.replace(":", "/");
  2540. responses.push(fetchRepo(full_name));
  2541. }
  2542. Promise.all(responses).then((repos) => {
  2543. result2.repos = repos;
  2544. for (const [i, score] of scores.entries()) {
  2545. result2.repos[i].item_id = score.Id;
  2546. }
  2547. showRecommend(result2);
  2548. });
  2549. }
  2550. }
  2551. } else {
  2552. exploreDiv.append(exploreContent);
  2553. }
  2554. }
  2555. async function showRecommend(result) {
  2556. let exploreDiv = $__default.default("[aria-label='Explore repositories']");
  2557. exploreDiv.children("div.py-2").remove();
  2558. exploreDiv.children("a.f6").remove();
  2559. exploreDiv.children("#error-message").remove();
  2560. let template = "";
  2561. if (result.message) {
  2562. let errorMessage = "";
  2563. if (result.message.startsWith("API rate limit exceeded")) {
  2564. errorMessage = `API rate limit exceeded. Login <a href="https://gitrec.gorse.io" target="_blank">GitRec</a> to get a higher rate limit.`;
  2565. } else {
  2566. errorMessage = result.message;
  2567. }
  2568. template = `<div class="d-block no-underline f6 mb-3" id="error-message">${errorMessage}</div>`;
  2569. } else if (result.repos.length > 0) {
  2570. for (const [i, repo] of result.repos.entries()) {
  2571. let row = `
  2572. <div class="py-2 my-2${i == result.repos.length - 1 ? "" : " border-bottom color-border-muted"}">
  2573. <a class="f6 text-bold Link--primary d-flex no-underline wb-break-all d-inline-block" href="/${repo.full_name}">${repo.full_name}</a>
  2574. <p class="f6 color-fg-muted mb-2" itemprop="description">${repo.description ? repo.description : ""}</p>
  2575. ${renderLanguageSpan(repo.language)}
  2576. <span class="f6 color-fg-muted text-normal">
  2577. <svg aria-label="star" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-star">
  2578. <path fill-rule="evenodd" d="M8 .25a.75.75 0 01.673.418l1.882 3.815 4.21.612a.75.75 0 01.416 1.279l-3.046 2.97.719 4.192a.75.75 0 01-1.088.791L8 12.347l-3.766 1.98a.75.75 0 01-1.088-.79l.72-4.194L.818 6.374a.75.75 0 01.416-1.28l4.21-.611L7.327.668A.75.75 0 018 .25zm0 2.445L6.615 5.5a.75.75 0 01-.564.41l-3.097.45 2.24 2.184a.75.75 0 01.216.664l-.528 3.084 2.769-1.456a.75.75 0 01.698 0l2.77 1.456-.53-3.084a.75.75 0 01.216-.664l2.24-2.183-3.096-.45a.75.75 0 01-.564-.41L8 2.694v.001z"></path>
  2579. </svg>
  2580. ${repo.stargazers_count}
  2581. </span>
  2582. </div>`;
  2583. exploreDiv.append($__default.default($__default.default.parseHTML(row)));
  2584. }
  2585. if (result.is_authenticated) {
  2586. template = `
  2587. <a class="d-block Link--secondary no-underline f6 mb-3" href="#" id="renew-button">
  2588. Next batch \u2192
  2589. </a>`;
  2590. } else {
  2591. template = `
  2592. <a class="d-block Link--secondary no-underline f6 mb-3" href="https://gitrec.gorse.io" target="_blank">
  2593. Login GitRec for better recommendation \u2192
  2594. </a>`;
  2595. }
  2596. }
  2597. exploreDiv.append($__default.default($__default.default.parseHTML(template)));
  2598. $__default.default("a#renew-button").click(async function() {
  2599. $__default.default("#renew-button").remove();
  2600. const items = result.items;
  2601. await Promise.all(items.map((id) => api.read({ itemId: id })));
  2602. const result2 = await api.recommendExtension();
  2603. showRecommend(result2);
  2604. return false;
  2605. });
  2606. }
  2607. async function fetchRepo(name) {
  2608. let response = await fetch(`https://api.github.com/repos/${name}`);
  2609. return await response.json();
  2610. }
  2611. function renderLanguageSpan(language) {
  2612. if (language) {
  2613. return `
  2614. <span class="mr-2 f6 color-fg-muted text-normal">
  2615. <span class="">
  2616. <span class="repo-language-color" style="background-color: ${renderLanguageColor(
  2617. language
  2618. )}"></span>
  2619. <span itemprop="programmingLanguage">${language}</span>
  2620. </span>
  2621. </span>`;
  2622. } else {
  2623. return "";
  2624. }
  2625. }
  2626. function selectExploreSettings(setting) {
  2627. $__default.default("#explore-settings-select-menu-item-icon").remove();
  2628. const template = `
  2629. <svg id="explore-settings-select-menu-item-icon" aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-check select-menu-item-icon mt-1">
  2630. <path fill-rule="evenodd" d="M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z"></path>
  2631. </svg>`;
  2632. let button = $__default.default(`#${setting}-button`);
  2633. button.prepend($__default.default($__default.default.parseHTML(template)));
  2634. }
  2635. })($, (window.monkeyWindow = window, window));

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址