gian-gg/icon-marquee

Dynamic SVG icon marquees for READMEs, portfolios, and web pages.

TypeScript

2

23 commits

updated Oct 3, 2026

See the code

See what people are saying

SourceMessageScoreDate

I built an open-source API for animated SVG icon marquees (r/coolgithubprojects)

I built **icon-marquee**, a small open-source API for generating animated SVG icon marquees for GitHub READMEs. The idea is pretty simple: give it a list of icons: https://icon-marquee.giann.dev/v1/marquee?i=js,ts,react,nextjs,docker and embed the generated SVG directly into a README: ![Tech…

11

Oct 3, 2026

README

icon-marquee pixel heart logo

icon-marquee

Scrolling marquees and static rows of tech icons, served as SVG. Drop one into a README, a portfolio or any page with a plain <img> tag.

icon marquee

Icons come from skills-icons. See Credits.

Quick start

Markdown:

![my stack](https://icon-marquee.giann.dev/v1/marquee?i=js,ts,react,docker)

HTML:

<img src="https://icon-marquee.giann.dev/v1/marquee?i=js,ts,react,docker" alt="my stack" />

For AI agents

Agents and LLMs: read https://icon-marquee.giann.dev/llms.txt before building URLs. It lists every endpoint, parameter, limit, short name and valid icon name in Markdown.

Endpoints

EndpointReturns
GET /v1/marquee?i=…Animated SVG that scrolls the icons in a seamless loop
GET /v1/icons?i=…Static SVG with the icons in a row
GET /v1Health check: {"status":"ok"}

/v1/marquee

marquee

https://icon-marquee.giann.dev/v1/marquee?i=html,css,js,ts,react,vue,svelte,angular
  • The icons scroll left at a constant 30px/s, so a longer list makes a longer loop. 8 icons loop every 15 seconds.
  • The visible window is at most 400px wide. With fewer icons than fill 400px, the window shrinks to exactly one row and still loops.
  • Pass width to set the window yourself, up to 3840px. The row repeats to fill it, so even a few icons can span a full-width banner.
  • The animation stops for viewers who turn on reduced motion (prefers-reduced-motion: reduce).
  • It's plain SVG with CSS animation: no JavaScript and no GIF. It stays sharp at any size and works inside <img>, including GitHub READMEs.

A wide banner, with three icons repeated to fill 800px:

wide marquee

https://icon-marquee.giann.dev/v1/marquee?i=go,rust,zig&width=800

A short list:

short marquee

https://icon-marquee.giann.dev/v1/marquee?i=go,rust,zig

/v1/icons

icons

https://icon-marquee.giann.dev/v1/icons?i=js,html,css,wasm

The same icons in a static row, in the order you list them.

Query parameters

ParamRequiredDescription
iyesComma-separated icon names or short names, e.g. i=js,ts,react
widthno/v1/marquee only. Window width in px, a whole number from 1 to 3840, e.g. width=1200

Behaviour of the i list:

  • Order is kept: icons render left to right as listed.
  • Case and spaces are ignored: i=JS, TS works.
  • Duplicates are allowed: i=js,js,js renders three.
  • Limit: at most 100 icons per request.
  • Unknown names are skipped, so a typo costs one icon, not the whole image. The skipped names are listed in the X-Unknown-Icons response header. If no name is known, the request fails with 400.
  • Names: use any icon name from the full list or a short name.

Theme

Icons that have light and dark versions switch automatically with the viewer's system light/dark setting. Icons with one design always render the same. The full list marks themed icons with *.

themed

Short names

Short nameIcon
accessmicrosoftaccess
acrobatadobeacrobat
adiantiadiantiframework
adonisadonisjs
aeadobeaftereffects
aftereffectsadobeaftereffects
aiadobeillustrator
amberamberlang
angularangularjs
antigravitygoogleantigravity
arcarcbrowser
archarchlinux
asmassembly
auadobeaudition
auditionadobeaudition
awsamazonwebservices
batchfilebatch
batchscriptbatch
beamapachebeam
beefbeeflang
beekeeperbeekeeperstudio
bigquerygooglebigquery
botsdiscordbots
budgiedesktopbuddiesofbudgie
c4dcinema4d
caddycaddyserver
capacitorcapacitorjs
cfcloudflare
chromegooglechrome
clipchampmicrosoftclipchamp
cloudcomposergooglecloudcomposer
cloudfirestorefirebasecloudfirestore
cloudstoragegooglecloudstorage
computeenginegooglecomputeengine
copilotmicrosoftcopilot
cspclipstudiopaint
cudacppcudacplusplus
ddlang
d3d3js
dataflowgoogledataflow
dataprocgoogledataproc
davincidavinciresolve
docsgoogledocs
dreamweaveradobedreamweaver
drfdjangorestframework
drivegoogledrive
dvcdataversioncontrol
dwadobedreamweaver
elysiaelysiajs
emberemberjs
entramicrosoftentra
eselasticsearch
excelmicrosoftexcel
expressexpressjs
fabricmicrosoftfabric
fasmflatassembler
fbfacebook
firebaseaifirebaseailogic
firebasecloudfirebasecloudfirestore
foundrymicrosoftfoundry
fsfusejs
fsdfeaturesliceddesign
fusefusejs
gadsensegoogleadsense
gatsbyjsgatsby
gcloudgooglecloud
gcpgooglecloud
geminigooglegemini
ghgithub
ghactionsgithubactions
ghcopilotgithubcopilot
ghpagesgithubpages
gogolang
gqlgraphql
gruntgruntjs
hadoopapachehadoop
hfhuggingface
hiveapachehive
hopapachehop
htbhackthebox
idadobeindesign
idxgoogleidx
iginstagram
illustratoradobeillustrator
indesignadobeindesign
inertiainertiajs
intellijintellijidea
intunemicrosoftintune
jmeterapachejmeter
jsjavascript
jsrjavascriptregistry
k8skubernetes
kalikalilinux
ktorioktor
lightroomadobelightroom
lookerlookerstudio
lottielottiefiles
lradobelightroom
manifoldmanifoldjs
mavenapachemaven
mcpmodelcontextprotocol
mdmarkdown
mongomongodb
muimaterialui
myshellmyshellai
nestnestjs
netdotnet
nextnextjs
nextauthauthjs
nixnixos
nodenodejs
notepad++notepadplusplus
notepadppnotepadplusplus
nuxtnuxtjs
objcobjectivec
ocioraclecloudinfrastructure
officemicrosoftoffice
onedrivemicrosoftonedrive
onenotemicrosoftonenote
oodopenondemand
otelopentelemetry
outlookmicrosoftoutlook
oxfmtoxc
oxlintoxc
pbpocketbase
photoshopadobephotoshop
poppopos
postgrespostgresql
powerautomatemicrosoftpowerautomate
powerpointmicrosoftpowerpoint
premiereproadobepremierepro
projectmicrosoftproject
psadobephotoshop
pwshpowershell
pypython
pysparkapachespark
railsrubyonrails
reactreactjs
reglereglejs
rolluprollupjs
rosrobotoperatingsystem
s3amazons3
scscala
sclearnscikitlearn
scsssass
sdlsimpledirectmedialayer
sharepointmicrosoftsharepoint
sheetsgooglesheets
sklearnscikitlearn
sostackoverflow
solidsolidjs
sparkapachespark
sqlasqlalchemy
stanstanjs
synapseazuresynapse
tailwindtailwindcss
teamsmicrosoftteams
truenastruenascore
tstypescript
tseslinttypescripteslint
unrealunrealengine
upstageupstageai
uvastraluv
visiomicrosoftvisio
vscodevisualstudiocode
vscodeinsidersvisualstudiocodeinsiders
vuevuejs
wasdkwindowsappsdk
wasmwebassembly
windiwindicss
wordmicrosoftword
workspacegoogleworkspace
wpwordpress
wswebsocket
xdadobexd
ymlyaml
ytyoutube

Full icon names also work, e.g. i=javascript is the same as i=js. Names that changed when icon-marquee switched icon sets (e.g. react → reactjs, photoshop → adobephotoshop) are kept as short names, so existing URLs that use them still work.

Available icons

1041 icons, 767 of them themed.

Show all icon names

7zip, 8th, activitypub, actix, adiantiframework, adobe, adobeacrobat, adobeaftereffects, adobeaudition, adobecoldfusion, adobedreamweaver, adobeexpress, adobeillustrator, adobeindesign, adobelightroom, adobephotoshop, adobepremierepro, adobexd, adonisjs, affinity, agda, airflow, aiscript, aisdk, alacritty, alchemy, algolia, alibabacloud, alpinejs, alpinelinux, amazons3, amazonwebservices, amberlang, amplify, anaconda, android, androidstudio, angularjs, animejs, ansible, antdesign, anyrun, anyscale, anytype, apache, apachebeam, apachehadoop, apachehive, apachehop, apachejmeter, apachemaven, apachespark, apachesubversion, apidog, apifox, apipost, apktool, apollo, appian, appium, apple, appwrite, arcbrowser, archlinux, archunit, arduino, argocd, arturo, asciidoctordocs, aseprite, aspaper, assembly, astraluv, astro, atom, auth0, authjs, authy, autocad, autodeskfusion, autohotkey, avaloniaui, axios, azul, azure, azuresynapse, babel, babylonjs, backblaze, backbonejs, balenaetcher, ballerina, bambustudio, baseui, bash, batch, bazarr, beagleboard, beeflang, beekeeperstudio, bento, betterauth, bevy, bing, binijs, biome, bitbucket, blazor, blender, bloc, bluesky, bolt, bookstack, bootstrap, boundary, box2d, brave, browserstack, bruno, buddiesofbudgie, bugsnag, builder, bullmq, bulma, bun, bunnynet, burncloud, burpsuite, bytedance, c, cachyos, caddyserver, cairo, cakebuild, cakephp, camtasia, camunda, canva, capacitorjs, capcut, cassandra, catboost, catch2, celery, centos, chakraui, chartjs, chatgpt, chocolatey, chroma, chromium, cinema4d, circleci, cisco, civitai, claudeai, claudecode, clerk, clickhouse, clickup, cline, clion, clipstudiopaint, clojure, cloudflare, cloudflareworkers, cloudinary, cmake, cmder, codeberg, codeblocks, codechef, codecov, codeforces, codegeex, codeigniter, codepen, codeql, coderabbit, codewars, codex, coffeescript, cohere, comfyui, commitlint, composehotreload, composemultiplatform, composer, conar, confluence, consul, convex, cookiecutter, coolify, coze, cpanel, cpp, crewai, crush, crusoe, crystal, csharp, css, css3, csv, cucumber, cudacplusplus, curl, curseforge, cursor, cypress, d3js, dagshub, dailydev, daisyui, dart, databricks, datadog, datagrip, datalore, dataversioncontrol, datefns, davinciresolve, dbeaver, dbt, debian, deepin, deepseek, deno, dependabot, designali, devto, dhizuku, digitalocean, directus, discord, discordbots, discordjs, disqus, django, djangorestframework, dlang, dlthub, dndkit, dnspy, docker, dockge, docus, docusaurus, dokploy, dotnet, drawio, dremio, drizzle, dropbox, drupal, duckdb, dyad, easybuild, echo, eclipseide, edge, edgeimpulse, effect, ejs, elasticsearch, electron, element, elementaryos, elementor, elementplus, elevenlabs, elixir, elysiajs, emberjs, emby, endeavouros, erlang, esbuild, eslint, esp32, etcd, eventbridge, excalidraw, expo, exposed, expressjs, expressvpn, fabricjs, fabricmc, facebook, fastapi, fastify, fdroid, featuresliceddesign, fedora, fiber, figma, filezilla, filmora, firebase, firebaseailogic, firebaseauthentication, firebasecloudfirestore, firebasestudio, firefox, fivetran, flameengine, flask, flatassembler, fleet, flightcontrol, flourish, flowbite, flutter, flutterflow, flyio, forem, forgejo, forgemc, fortran, framer, freebsd, freecad, freecodecamp, freelancer, fresh, fresheditor, fsharp, fusejs, ganache, gatsby, gdevelop, geany, geminicli, genkit, gentoo, getx, ghdl, ghidra, ghostty, gimp, gin, git, gitbash, gitbook, gitea, github, githubactions, githubcopilot, githubpages, gitkraken, gitlab, gitlocalize, gitmind, gitpod, gleam, gmail, gnu, godot, goland, golang, googleadk, googleadsense, googleantigravity, googlebigquery, googlechrome, googlecloud, googlecloudcomposer, googlecloudstorage, googlecolaboratory, googlecomputeengine, googledataflow, googledataproc, googledocs, googledrive, googleforms, googlegemini, googleidx, googlesheets, googleslides, googleworkspace, gorm, gradle, grafana, graphite, graphql, greeter, gridsome, grok, groovy, groq, grpc, gruntjs, gsap, gtkwave, hackerrank, hackthebox, hacs, handycontrols, haproxy, hashicorp, hashnode, haskell, haxe, headlessui, helia, helm, herdr, heroku, heroui, hexo, heyapi, hibernate, homeassistant, homebrew, hono, hoppscotch, hostgator, html, htmx, httpie, hub, hubspot, huggingface, hugo, hyper, hyprland, i18next, iceberg, ida, ifttt, inertiajs, influxdb, inkscape, insomnia, instagram, intellijidea, ionic, ios, ipados, istio, jaeger, jakartaee, jamstack, jasmine, jaspr, java, javascript, javascriptregistry, jdbc, jekyll, jellyfin, jellyseerr, jenkins, jest, jetpack, jetpackcompose, jira, jitsi, joomla, jotai, jquery, json, jsonschema, jujutsu, julia, junit4, junit5, jupyter, jwt, k3s, k6, kafka, kaggle, kalilinux, katalon, keet, kepware, keras, kestra, keycloak, kiali, kicad, kiro, kitty, kofi, koin, konva, kotlin, kotlinmultiplatform, kotlinnotebook, koyeb, krita, ktor, kubernetes, kubuntu, lando, langchain, laravel, latex, launchdarkly, lavalink, leaflet, leetcode, lemonsqueezy, lenis, less, letterboxd, librepcb, lidarr, linkedin, linux, linuxmint, liquidsoap, litert, litestar, litmus, livewire, llamaindex, llmrouter, llvm, lmstudio, logto, lokalise, loki, lookerstudio, lottiefiles, lovable, lua, lubuntu, lucia, lucide, lumo, lynxjs, macos, magicui, magisk, makecode, mambaui, manifoldjs, manim, manjaro, mapbox, mariadb, markdown, mastodon, materialdesign, materialformkdocs, materialui, matlab, matplotlib, matrix, medium, medusa, mermaid, meta, metabase, metasploit, mgx, micropython, microsoft365copilot, microsoftaccess, microsoftclipchamp, microsoftcopilot, microsoftentra, microsoftexcel, microsoftfabric, microsoftforms, microsoftfoundry, microsoftintune, microsoftoffice, microsoftonedrive, microsoftonenote, microsoftoutlook, microsoftpowerautomate, microsoftpowerpoint, microsoftproject, microsoftsharepoint, microsoftteams, microsoftvisio, microsoftword, mikroc, milligram, mimir, minimax, minio, mkdocs, mlflow, modelcontextprotocol, mohistmc, mongodb, motherduck, motion, mqtt, msdos, msys2, myshellai, mysql, n8n, navicat, neo4j, neocities, neoforge, neon, neovim, nestjs, netbeans, netbird, netflixdgs, netlify, newrelic, nextdns, nextjs, nginx, ngrok, ngrx, nim, niri, nitro, nixos, nmap, noctalia, nodejs, nodemon, nodered, nomad, notepadplusplus, notion, npm, nuget, numpy, nunjucks, nuxthub, nuxtjs, oauth, objectivec, obs, obsidian, obtainium, ocaml, ollama, omarchy, ombi, onyx, openapi, openclaw, opencode, opencv, opengl, openlayers, openondemand, openscad, opensergo, openstreetmap, opensuse, opentelemetry, openvpn, openweather, openwebui, opera, oracle, oraclecloudinfrastructure, orcaslicer, orpc, oumi, overleaf, overpassapi, overseerr, oxc, p4, packer, pandacss, pandas, papermc, parcel, parrotos, passportjs, patreon, payload, peazip, peerlist, pennylane, penpot, pentahopdi, perplexity, phoenix, php, phpstorm, pinia, pinterest, pkgroll, platformio, plausible, playwright, plex, plotly, pnpm, pocketbase, podman, polars, popos, portugolstudio, postcss, postgresql, posthog, postman, powerbi, powershell, preact, prettier, primevue, prisma, prismic, procure, prolog, prometheus, protoncalendar, protondrive, protonmail, protonpass, protonvpn, protonwallet, prowlarr, proxmox, psycopg, pug, pull, pulumi, puppeteer, puppylinux, purpur, putty, pwa, pycharm, pydantic, pygame, pymc, pypi, pyramid, pytest, python, pytorch, pytorch3d, pywebview, qdrant, qoder, qtwidgets, quarkus, quasar, qubesos, quiltmc, qwik, qwiklabs, r, rabbitmq, radarr, radixui, railway, raspberrypi, raygui, raylib, reactdatepicker, reacthookform, reactjs, reactlynx, reactnative, reactquery, reactrouter, readarr, readthedocs, reddit, redhat, redis, redoc, redux, refine, regex, reglejs, rekaui, render, renovate, replit, resend, rest, revolt, rider, riverpod, robotoperatingsystem, rocketmq, rocksdb, rolldown, rollupjs, roocode, ruby, rubymine, rubyonrails, rust, rxjs, sanity, sap, sass, scala, scikitlearn, scipy, scratch, seaborn, semanticui, sentry, sequelize, serverless, servicenow, session, setapp, seyfert, shadcnui, shiki, shizuku, shopify, signal, signoz, simpledirectmedialayer, singlespa, singularity, skeletonui, sketch, slack, slackwarelinux, slidev, slint, slurm, snipcart, snowflake, snyk, soap, socketio, solidity, solidjs, solidstart, solr, solus, sonarqube, sonarr, soundbridge, sphinx, splunk, spring, springai, springbatch, springboot, springcloud, springgraphql, springsecurity, springshell, spss, spyder, sql, sqlalchemy, sqlite, sqlserver, sst, stackblitz, stackoverflow, stanjs, starlight, stata, steam, stimulus, storyblok, storybook, strapi, streamlit, stride, stripe, styledcomponents, sublime, suitecrm, supabase, surrealdb, svelte, svg, swagger, swc, swift, swiftui, swiper, swr, symfony, systemd, t0ggles, tabby, tableau, taiga, tailscale, tailwindcss, tailwindmerge, tanstack, targon, tauri, telegram, tempo, tensorflow, termux, terraform, testcontainers, thesvg, threads, threejs, thunderbird, thunderclient, tidb, tiktok, tinacms, tinkercad, tinyhttp, tmux, toml, trae, traefik, treesitter, trello, triage, trivy, trpc, truenascore, truenasenterprise, truenasscale, tsdown, turborepo, turso, twilio, twine, twitter, typeorm, typescript, typescripteslint, typst, ubuntu, udemy, umami, umbraco, umbriel, uml, unity, unocss, unrealengine, upstageai, upstash, uvicorn, v0, vagrant, vala, valibot, valkey, vanillaos, vapor, vault, vaxee, vegaspro, velocity, veracrypt, vercel, vhdl, videojs, vike, vim, virtualbox, virustotal, visualstudio, visualstudiocode, visualstudiocodeinsiders, vite, vitepress, vitepwa, vitest, vivaldi, vk, vlc, vlitejs, vmix, vmware, voidlinux, vscodium, vuefire, vueform, vuejs, vuepress, vuetify, vueuse, vulkan, wakatime, wampserver, warp, waypoint, weaviate, webassembly, weblate, websocket, webstorm, webstudio, whatsapp, whisparr, windicss, windows, windowsappsdk, windsurf, winui, wireshark, wolframmathematica, woocommerce, wordpress, wxt, x, xamarin, xaml, xampp, xcode, xftp, xml, xposed, xshell, xubuntu, yaak, yaml, yandexen, yandexru, yarn, yii, yolo, youtube, zabbix, zeabur, zed, zen, zensical, zerops, zig, zod, zorinos, zshell, zustand*

* follows the viewer's light/dark setting.

Self-hosting

Requires Bun.

bun install
cp .env.example .env   # then set APP_NAME
bun dev                # http://localhost:3000/v1/marquee?i=js,ts

Environment

VariableRequiredDescription
APP_NAMEyesApp name. The server refuses to start without it.

Scripts

ScriptDoes
bun devRun with hot reload
bun startRun
bun testRun tests
bun run typecheckType-check with tsc
bun run checkLint, format and sort imports with Biome

Credits

Icons are from skills-icons by Syvixor, MIT licensed. See ATTRIBUTION.md.

License

MIT

animated-sv
api
developer-tools
github-readme
icons
readme-profile
skills-icons
svg

gian-gg/icon-marquee

Dynamic SVG icon marquees for READMEs, portfolios, and web pages.

TypeScript

2

23 commits

updated Oct 3, 2026

See the code

See what people are saying

SourceMessageScoreDate

I built an open-source API for animated SVG icon marquees (r/coolgithubprojects)

I built **icon-marquee**, a small open-source API for generating animated SVG icon marquees for GitHub READMEs. The idea is pretty simple: give it a list of icons: https://icon-marquee.giann.dev/v1/marquee?i=js,ts,react,nextjs,docker and embed the generated SVG directly into a README: ![Tech…

11

Oct 3, 2026

README

icon-marquee pixel heart logo

icon-marquee

Scrolling marquees and static rows of tech icons, served as SVG. Drop one into a README, a portfolio or any page with a plain <img> tag.

icon marquee

Icons come from skills-icons. See Credits.

Quick start

Markdown:

![my stack](https://icon-marquee.giann.dev/v1/marquee?i=js,ts,react,docker)

HTML:

<img src="https://icon-marquee.giann.dev/v1/marquee?i=js,ts,react,docker" alt="my stack" />

For AI agents

Agents and LLMs: read https://icon-marquee.giann.dev/llms.txt before building URLs. It lists every endpoint, parameter, limit, short name and valid icon name in Markdown.

Endpoints

EndpointReturns
GET /v1/marquee?i=…Animated SVG that scrolls the icons in a seamless loop
GET /v1/icons?i=…Static SVG with the icons in a row
GET /v1Health check: {"status":"ok"}

/v1/marquee

marquee

https://icon-marquee.giann.dev/v1/marquee?i=html,css,js,ts,react,vue,svelte,angular
  • The icons scroll left at a constant 30px/s, so a longer list makes a longer loop. 8 icons loop every 15 seconds.
  • The visible window is at most 400px wide. With fewer icons than fill 400px, the window shrinks to exactly one row and still loops.
  • Pass width to set the window yourself, up to 3840px. The row repeats to fill it, so even a few icons can span a full-width banner.
  • The animation stops for viewers who turn on reduced motion (prefers-reduced-motion: reduce).
  • It's plain SVG with CSS animation: no JavaScript and no GIF. It stays sharp at any size and works inside <img>, including GitHub READMEs.

A wide banner, with three icons repeated to fill 800px:

wide marquee

https://icon-marquee.giann.dev/v1/marquee?i=go,rust,zig&width=800

A short list:

short marquee

https://icon-marquee.giann.dev/v1/marquee?i=go,rust,zig

/v1/icons

icons

https://icon-marquee.giann.dev/v1/icons?i=js,html,css,wasm

The same icons in a static row, in the order you list them.

Query parameters

ParamRequiredDescription
iyesComma-separated icon names or short names, e.g. i=js,ts,react
widthno/v1/marquee only. Window width in px, a whole number from 1 to 3840, e.g. width=1200

Behaviour of the i list:

  • Order is kept: icons render left to right as listed.
  • Case and spaces are ignored: i=JS, TS works.
  • Duplicates are allowed: i=js,js,js renders three.
  • Limit: at most 100 icons per request.
  • Unknown names are skipped, so a typo costs one icon, not the whole image. The skipped names are listed in the X-Unknown-Icons response header. If no name is known, the request fails with 400.
  • Names: use any icon name from the full list or a short name.

Theme

Icons that have light and dark versions switch automatically with the viewer's system light/dark setting. Icons with one design always render the same. The full list marks themed icons with *.

themed

Short names

Short nameIcon
accessmicrosoftaccess
acrobatadobeacrobat
adiantiadiantiframework
adonisadonisjs
aeadobeaftereffects
aftereffectsadobeaftereffects
aiadobeillustrator
amberamberlang
angularangularjs
antigravitygoogleantigravity
arcarcbrowser
archarchlinux
asmassembly
auadobeaudition
auditionadobeaudition
awsamazonwebservices
batchfilebatch
batchscriptbatch
beamapachebeam
beefbeeflang
beekeeperbeekeeperstudio
bigquerygooglebigquery
botsdiscordbots
budgiedesktopbuddiesofbudgie
c4dcinema4d
caddycaddyserver
capacitorcapacitorjs
cfcloudflare
chromegooglechrome
clipchampmicrosoftclipchamp
cloudcomposergooglecloudcomposer
cloudfirestorefirebasecloudfirestore
cloudstoragegooglecloudstorage
computeenginegooglecomputeengine
copilotmicrosoftcopilot
cspclipstudiopaint
cudacppcudacplusplus
ddlang
d3d3js
dataflowgoogledataflow
dataprocgoogledataproc
davincidavinciresolve
docsgoogledocs
dreamweaveradobedreamweaver
drfdjangorestframework
drivegoogledrive
dvcdataversioncontrol
dwadobedreamweaver
elysiaelysiajs
emberemberjs
entramicrosoftentra
eselasticsearch
excelmicrosoftexcel
expressexpressjs
fabricmicrosoftfabric
fasmflatassembler
fbfacebook
firebaseaifirebaseailogic
firebasecloudfirebasecloudfirestore
foundrymicrosoftfoundry
fsfusejs
fsdfeaturesliceddesign
fusefusejs
gadsensegoogleadsense
gatsbyjsgatsby
gcloudgooglecloud
gcpgooglecloud
geminigooglegemini
ghgithub
ghactionsgithubactions
ghcopilotgithubcopilot
ghpagesgithubpages
gogolang
gqlgraphql
gruntgruntjs
hadoopapachehadoop
hfhuggingface
hiveapachehive
hopapachehop
htbhackthebox
idadobeindesign
idxgoogleidx
iginstagram
illustratoradobeillustrator
indesignadobeindesign
inertiainertiajs
intellijintellijidea
intunemicrosoftintune
jmeterapachejmeter
jsjavascript
jsrjavascriptregistry
k8skubernetes
kalikalilinux
ktorioktor
lightroomadobelightroom
lookerlookerstudio
lottielottiefiles
lradobelightroom
manifoldmanifoldjs
mavenapachemaven
mcpmodelcontextprotocol
mdmarkdown
mongomongodb
muimaterialui
myshellmyshellai
nestnestjs
netdotnet
nextnextjs
nextauthauthjs
nixnixos
nodenodejs
notepad++notepadplusplus
notepadppnotepadplusplus
nuxtnuxtjs
objcobjectivec
ocioraclecloudinfrastructure
officemicrosoftoffice
onedrivemicrosoftonedrive
onenotemicrosoftonenote
oodopenondemand
otelopentelemetry
outlookmicrosoftoutlook
oxfmtoxc
oxlintoxc
pbpocketbase
photoshopadobephotoshop
poppopos
postgrespostgresql
powerautomatemicrosoftpowerautomate
powerpointmicrosoftpowerpoint
premiereproadobepremierepro
projectmicrosoftproject
psadobephotoshop
pwshpowershell
pypython
pysparkapachespark
railsrubyonrails
reactreactjs
reglereglejs
rolluprollupjs
rosrobotoperatingsystem
s3amazons3
scscala
sclearnscikitlearn
scsssass
sdlsimpledirectmedialayer
sharepointmicrosoftsharepoint
sheetsgooglesheets
sklearnscikitlearn
sostackoverflow
solidsolidjs
sparkapachespark
sqlasqlalchemy
stanstanjs
synapseazuresynapse
tailwindtailwindcss
teamsmicrosoftteams
truenastruenascore
tstypescript
tseslinttypescripteslint
unrealunrealengine
upstageupstageai
uvastraluv
visiomicrosoftvisio
vscodevisualstudiocode
vscodeinsidersvisualstudiocodeinsiders
vuevuejs
wasdkwindowsappsdk
wasmwebassembly
windiwindicss
wordmicrosoftword
workspacegoogleworkspace
wpwordpress
wswebsocket
xdadobexd
ymlyaml
ytyoutube

Full icon names also work, e.g. i=javascript is the same as i=js. Names that changed when icon-marquee switched icon sets (e.g. react → reactjs, photoshop → adobephotoshop) are kept as short names, so existing URLs that use them still work.

Available icons

1041 icons, 767 of them themed.

Show all icon names

7zip, 8th, activitypub, actix, adiantiframework, adobe, adobeacrobat, adobeaftereffects, adobeaudition, adobecoldfusion, adobedreamweaver, adobeexpress, adobeillustrator, adobeindesign, adobelightroom, adobephotoshop, adobepremierepro, adobexd, adonisjs, affinity, agda, airflow, aiscript, aisdk, alacritty, alchemy, algolia, alibabacloud, alpinejs, alpinelinux, amazons3, amazonwebservices, amberlang, amplify, anaconda, android, androidstudio, angularjs, animejs, ansible, antdesign, anyrun, anyscale, anytype, apache, apachebeam, apachehadoop, apachehive, apachehop, apachejmeter, apachemaven, apachespark, apachesubversion, apidog, apifox, apipost, apktool, apollo, appian, appium, apple, appwrite, arcbrowser, archlinux, archunit, arduino, argocd, arturo, asciidoctordocs, aseprite, aspaper, assembly, astraluv, astro, atom, auth0, authjs, authy, autocad, autodeskfusion, autohotkey, avaloniaui, axios, azul, azure, azuresynapse, babel, babylonjs, backblaze, backbonejs, balenaetcher, ballerina, bambustudio, baseui, bash, batch, bazarr, beagleboard, beeflang, beekeeperstudio, bento, betterauth, bevy, bing, binijs, biome, bitbucket, blazor, blender, bloc, bluesky, bolt, bookstack, bootstrap, boundary, box2d, brave, browserstack, bruno, buddiesofbudgie, bugsnag, builder, bullmq, bulma, bun, bunnynet, burncloud, burpsuite, bytedance, c, cachyos, caddyserver, cairo, cakebuild, cakephp, camtasia, camunda, canva, capacitorjs, capcut, cassandra, catboost, catch2, celery, centos, chakraui, chartjs, chatgpt, chocolatey, chroma, chromium, cinema4d, circleci, cisco, civitai, claudeai, claudecode, clerk, clickhouse, clickup, cline, clion, clipstudiopaint, clojure, cloudflare, cloudflareworkers, cloudinary, cmake, cmder, codeberg, codeblocks, codechef, codecov, codeforces, codegeex, codeigniter, codepen, codeql, coderabbit, codewars, codex, coffeescript, cohere, comfyui, commitlint, composehotreload, composemultiplatform, composer, conar, confluence, consul, convex, cookiecutter, coolify, coze, cpanel, cpp, crewai, crush, crusoe, crystal, csharp, css, css3, csv, cucumber, cudacplusplus, curl, curseforge, cursor, cypress, d3js, dagshub, dailydev, daisyui, dart, databricks, datadog, datagrip, datalore, dataversioncontrol, datefns, davinciresolve, dbeaver, dbt, debian, deepin, deepseek, deno, dependabot, designali, devto, dhizuku, digitalocean, directus, discord, discordbots, discordjs, disqus, django, djangorestframework, dlang, dlthub, dndkit, dnspy, docker, dockge, docus, docusaurus, dokploy, dotnet, drawio, dremio, drizzle, dropbox, drupal, duckdb, dyad, easybuild, echo, eclipseide, edge, edgeimpulse, effect, ejs, elasticsearch, electron, element, elementaryos, elementor, elementplus, elevenlabs, elixir, elysiajs, emberjs, emby, endeavouros, erlang, esbuild, eslint, esp32, etcd, eventbridge, excalidraw, expo, exposed, expressjs, expressvpn, fabricjs, fabricmc, facebook, fastapi, fastify, fdroid, featuresliceddesign, fedora, fiber, figma, filezilla, filmora, firebase, firebaseailogic, firebaseauthentication, firebasecloudfirestore, firebasestudio, firefox, fivetran, flameengine, flask, flatassembler, fleet, flightcontrol, flourish, flowbite, flutter, flutterflow, flyio, forem, forgejo, forgemc, fortran, framer, freebsd, freecad, freecodecamp, freelancer, fresh, fresheditor, fsharp, fusejs, ganache, gatsby, gdevelop, geany, geminicli, genkit, gentoo, getx, ghdl, ghidra, ghostty, gimp, gin, git, gitbash, gitbook, gitea, github, githubactions, githubcopilot, githubpages, gitkraken, gitlab, gitlocalize, gitmind, gitpod, gleam, gmail, gnu, godot, goland, golang, googleadk, googleadsense, googleantigravity, googlebigquery, googlechrome, googlecloud, googlecloudcomposer, googlecloudstorage, googlecolaboratory, googlecomputeengine, googledataflow, googledataproc, googledocs, googledrive, googleforms, googlegemini, googleidx, googlesheets, googleslides, googleworkspace, gorm, gradle, grafana, graphite, graphql, greeter, gridsome, grok, groovy, groq, grpc, gruntjs, gsap, gtkwave, hackerrank, hackthebox, hacs, handycontrols, haproxy, hashicorp, hashnode, haskell, haxe, headlessui, helia, helm, herdr, heroku, heroui, hexo, heyapi, hibernate, homeassistant, homebrew, hono, hoppscotch, hostgator, html, htmx, httpie, hub, hubspot, huggingface, hugo, hyper, hyprland, i18next, iceberg, ida, ifttt, inertiajs, influxdb, inkscape, insomnia, instagram, intellijidea, ionic, ios, ipados, istio, jaeger, jakartaee, jamstack, jasmine, jaspr, java, javascript, javascriptregistry, jdbc, jekyll, jellyfin, jellyseerr, jenkins, jest, jetpack, jetpackcompose, jira, jitsi, joomla, jotai, jquery, json, jsonschema, jujutsu, julia, junit4, junit5, jupyter, jwt, k3s, k6, kafka, kaggle, kalilinux, katalon, keet, kepware, keras, kestra, keycloak, kiali, kicad, kiro, kitty, kofi, koin, konva, kotlin, kotlinmultiplatform, kotlinnotebook, koyeb, krita, ktor, kubernetes, kubuntu, lando, langchain, laravel, latex, launchdarkly, lavalink, leaflet, leetcode, lemonsqueezy, lenis, less, letterboxd, librepcb, lidarr, linkedin, linux, linuxmint, liquidsoap, litert, litestar, litmus, livewire, llamaindex, llmrouter, llvm, lmstudio, logto, lokalise, loki, lookerstudio, lottiefiles, lovable, lua, lubuntu, lucia, lucide, lumo, lynxjs, macos, magicui, magisk, makecode, mambaui, manifoldjs, manim, manjaro, mapbox, mariadb, markdown, mastodon, materialdesign, materialformkdocs, materialui, matlab, matplotlib, matrix, medium, medusa, mermaid, meta, metabase, metasploit, mgx, micropython, microsoft365copilot, microsoftaccess, microsoftclipchamp, microsoftcopilot, microsoftentra, microsoftexcel, microsoftfabric, microsoftforms, microsoftfoundry, microsoftintune, microsoftoffice, microsoftonedrive, microsoftonenote, microsoftoutlook, microsoftpowerautomate, microsoftpowerpoint, microsoftproject, microsoftsharepoint, microsoftteams, microsoftvisio, microsoftword, mikroc, milligram, mimir, minimax, minio, mkdocs, mlflow, modelcontextprotocol, mohistmc, mongodb, motherduck, motion, mqtt, msdos, msys2, myshellai, mysql, n8n, navicat, neo4j, neocities, neoforge, neon, neovim, nestjs, netbeans, netbird, netflixdgs, netlify, newrelic, nextdns, nextjs, nginx, ngrok, ngrx, nim, niri, nitro, nixos, nmap, noctalia, nodejs, nodemon, nodered, nomad, notepadplusplus, notion, npm, nuget, numpy, nunjucks, nuxthub, nuxtjs, oauth, objectivec, obs, obsidian, obtainium, ocaml, ollama, omarchy, ombi, onyx, openapi, openclaw, opencode, opencv, opengl, openlayers, openondemand, openscad, opensergo, openstreetmap, opensuse, opentelemetry, openvpn, openweather, openwebui, opera, oracle, oraclecloudinfrastructure, orcaslicer, orpc, oumi, overleaf, overpassapi, overseerr, oxc, p4, packer, pandacss, pandas, papermc, parcel, parrotos, passportjs, patreon, payload, peazip, peerlist, pennylane, penpot, pentahopdi, perplexity, phoenix, php, phpstorm, pinia, pinterest, pkgroll, platformio, plausible, playwright, plex, plotly, pnpm, pocketbase, podman, polars, popos, portugolstudio, postcss, postgresql, posthog, postman, powerbi, powershell, preact, prettier, primevue, prisma, prismic, procure, prolog, prometheus, protoncalendar, protondrive, protonmail, protonpass, protonvpn, protonwallet, prowlarr, proxmox, psycopg, pug, pull, pulumi, puppeteer, puppylinux, purpur, putty, pwa, pycharm, pydantic, pygame, pymc, pypi, pyramid, pytest, python, pytorch, pytorch3d, pywebview, qdrant, qoder, qtwidgets, quarkus, quasar, qubesos, quiltmc, qwik, qwiklabs, r, rabbitmq, radarr, radixui, railway, raspberrypi, raygui, raylib, reactdatepicker, reacthookform, reactjs, reactlynx, reactnative, reactquery, reactrouter, readarr, readthedocs, reddit, redhat, redis, redoc, redux, refine, regex, reglejs, rekaui, render, renovate, replit, resend, rest, revolt, rider, riverpod, robotoperatingsystem, rocketmq, rocksdb, rolldown, rollupjs, roocode, ruby, rubymine, rubyonrails, rust, rxjs, sanity, sap, sass, scala, scikitlearn, scipy, scratch, seaborn, semanticui, sentry, sequelize, serverless, servicenow, session, setapp, seyfert, shadcnui, shiki, shizuku, shopify, signal, signoz, simpledirectmedialayer, singlespa, singularity, skeletonui, sketch, slack, slackwarelinux, slidev, slint, slurm, snipcart, snowflake, snyk, soap, socketio, solidity, solidjs, solidstart, solr, solus, sonarqube, sonarr, soundbridge, sphinx, splunk, spring, springai, springbatch, springboot, springcloud, springgraphql, springsecurity, springshell, spss, spyder, sql, sqlalchemy, sqlite, sqlserver, sst, stackblitz, stackoverflow, stanjs, starlight, stata, steam, stimulus, storyblok, storybook, strapi, streamlit, stride, stripe, styledcomponents, sublime, suitecrm, supabase, surrealdb, svelte, svg, swagger, swc, swift, swiftui, swiper, swr, symfony, systemd, t0ggles, tabby, tableau, taiga, tailscale, tailwindcss, tailwindmerge, tanstack, targon, tauri, telegram, tempo, tensorflow, termux, terraform, testcontainers, thesvg, threads, threejs, thunderbird, thunderclient, tidb, tiktok, tinacms, tinkercad, tinyhttp, tmux, toml, trae, traefik, treesitter, trello, triage, trivy, trpc, truenascore, truenasenterprise, truenasscale, tsdown, turborepo, turso, twilio, twine, twitter, typeorm, typescript, typescripteslint, typst, ubuntu, udemy, umami, umbraco, umbriel, uml, unity, unocss, unrealengine, upstageai, upstash, uvicorn, v0, vagrant, vala, valibot, valkey, vanillaos, vapor, vault, vaxee, vegaspro, velocity, veracrypt, vercel, vhdl, videojs, vike, vim, virtualbox, virustotal, visualstudio, visualstudiocode, visualstudiocodeinsiders, vite, vitepress, vitepwa, vitest, vivaldi, vk, vlc, vlitejs, vmix, vmware, voidlinux, vscodium, vuefire, vueform, vuejs, vuepress, vuetify, vueuse, vulkan, wakatime, wampserver, warp, waypoint, weaviate, webassembly, weblate, websocket, webstorm, webstudio, whatsapp, whisparr, windicss, windows, windowsappsdk, windsurf, winui, wireshark, wolframmathematica, woocommerce, wordpress, wxt, x, xamarin, xaml, xampp, xcode, xftp, xml, xposed, xshell, xubuntu, yaak, yaml, yandexen, yandexru, yarn, yii, yolo, youtube, zabbix, zeabur, zed, zen, zensical, zerops, zig, zod, zorinos, zshell, zustand*

* follows the viewer's light/dark setting.

Self-hosting

Requires Bun.

bun install
cp .env.example .env   # then set APP_NAME
bun dev                # http://localhost:3000/v1/marquee?i=js,ts

Environment

VariableRequiredDescription
APP_NAMEyesApp name. The server refuses to start without it.

Scripts

ScriptDoes
bun devRun with hot reload
bun startRun
bun testRun tests
bun run typecheckType-check with tsc
bun run checkLint, format and sort imports with Biome

Credits

Icons are from skills-icons by Syvixor, MIT licensed. See ATTRIBUTION.md.

License

MIT

animated-sv
api
developer-tools
github-readme
icons
readme-profile
skills-icons
svg

Languages

TypeScript

100.0%