← all organisations

wmfs / Code

13 languages, 11.2 MB of source, and what the live estate is written in today.

Language figures come from GitHub's own per-repository byte counts, which measure source rather than a single headline label. File counts and repository sizes come from the mirrors themselves. The two tell different stories, and the difference is the point.

The codebase

13
languages in use
11.2 MB of source
7.5k
files at HEAD
across every analysed repository
0 B
on disk as mirrors
full history, every branch and tag
61.6 MB
largest repository
cardscript

What stands out

One archived repository holds 32% of all the bytes.

cardscript is 61.6 MB of git - a 2013 static snapshot of www.gov.uk, not source code. It single-handedly makes HTML the largest language by volume (14% of all source bytes). Any size or language statistic that does not exclude it is measuring an archive, not a codebase.

Sizes here are GitHub's reported figures.

This organisation was harvested with blobless partial clones, which fetch every commit and file path but not file contents, so there is no local size to measure against. Checked elsewhere in this dataset against 1,526 fully mirrored repositories, GitHub's reported size is accurate to within about six percent.

Ruby is the house language, but its share is falling.

Ruby is the primary language of 0% of archived repositories but only 0% of live ones. Python, Go, TypeScript and HCL have taken the difference - the signature of a shift from monolithic Rails publishing apps toward data pipelines, infrastructure-as-code and platform tooling.

Most repositories are small; a handful are enormous.

74% of repositories are under a megabyte of git data. The estate is not a monolith - it is a very long tail of small services, gems and prototypes around a few large publishing applications.

Languages, two ways

By volume of source

Bytes of code. Dominated by archived static HTML.

JavaScriptJavaScript: 8.3 MB8.3 MBHTMLHTML: 1.5 MB1.5 MBPythonPython: 728.2 kB728.2 kBJavaJava: 392.0 kB392.0 kBVueVue: 77.9 kB77.9 kBPLpgSQLPLpgSQL: 59.5 kB59.5 kBCSSCSS: 44.4 kB44.4 kBEJSEJS: 35.0 kB35.0 kBShellShell: 29.6 kB29.6 kBStylusStylus: 4.8 kB4.8 kBGAPGAP: 2.3 kB2.3 kBDockerfileDockerfile: 1.1 kB1.1 kBBatchfileBatchfile: 213 B213 B

By number of repositories

How many repositories name each language as their primary one. A better guide to what engineers actually work in.

JavaScriptJavaScript: 108108ShellShell: 3535HTMLHTML: 1414VueVue: 77CSSCSS: 44EJSEJS: 44PythonPython: 33StylusStylus: 33PLpgSQLPLpgSQL: 33DockerfileDockerfile: 33JavaJava: 22GAPGAP: 11BatchfileBatchfile: 11

Live estate versus archive

The same language ranking, split by whether the repository is still active. The shift is the clearest signal of technical direction in the whole dataset.

Active repositories

JavaScriptJavaScript: 9797VueVue: 55HTMLHTML: 44ShellShell: 33JavaJava: 22EJSEJS: 11PythonPython: 11BatchfileBatchfile: 11

Archived repositories

JavaScriptJavaScript: 22VueVue: 00HTMLHTML: 00ShellShell: 00JavaJava: 00EJSEJS: 00PythonPython: 00BatchfileBatchfile: 00

Scale

Repository size distribution

Git data per repository, log-ish buckets.

7052.53517.50< 10 kB: 3< 10 kB< 100 kB: 15< 100 kB< 1 MB: 70< 1 MB< 10 MB: 28< 10 MB< 100 MB: 3< 100 MB100 MB +: 0100 MB +

Commits against files

Each circle is a repository, sized by number of distinct authors. Both axes are logarithmic. The diagonal band is the normal relationship between codebase size and churn; outliers above it are long-lived apps with heavy iteration, below it are dumps and imports.

3.7k737.2148.329.86.029.241.9192.0879.0addressbase-plus-blueprint: 2,121 commits, 25 files, 22 authorsaddressbase-premium-blueprint: 2,634 commits, 58 files, 23 authorsamazon-states-visualiser: 51 commits, 46 files, 7 authorsasl-choice-processor: 826 commits, 38 files, 27 authorsblocky-experiment: 6 commits, 762 files, 2 authorsbuilding-blueprint: 2,061 commits, 21 files, 30 authorscardlint: 104 commits, 12 files, 6 authorscardscript: 1,447 commits, 74 files, 19 authorscardscript-assets: 89 commits, 57 files, 11 authorscardscript-component: 18 commits, 8 files, 5 authorscardscript-doc-generator: 145 commits, 81 files, 12 authorscardscript-examples: 702 commits, 67 files, 16 authorscardscript-expressions: 602 commits, 16 files, 15 authorscardscript-extract-defaults: 966 commits, 10 files, 21 authorscardscript-extract-graphs: 490 commits, 10 files, 12 authorscardscript-extract-lists: 674 commits, 10 files, 18 authorscardscript-parser: 512 commits, 10 files, 17 authorscardscript-post-processor: 410 commits, 16 files, 8 authorscardscript-schema: 761 commits, 22 files, 17 authorscardscript-table-of-contents: 588 commits, 10 files, 15 authorscardscript-to-quasar: 2,545 commits, 92 files, 31 authorscardscript-to-vuelidate: 809 commits, 11 files, 17 authorscardscript-vue-sdk: 422 commits, 11 files, 17 authorscare-quality-commission-blueprint: 2,373 commits, 28 files, 26 authorschimp: 120 commits, 139 files, 4 authorscoalesce: 11 commits, 17 files, 6 authorsconcrete-paths: 886 commits, 14 files, 21 authorsconventional-changelog-tymly: 68 commits, 25 files, 7 authorsdependency-search: 22 commits, 11 files, 2 authorsenvy: 12 commits, 8 files, 5 authorsess-contact-form: 370 commits, 15 files, 6 authorsfood-hygiene-blueprint: 2,288 commits, 31 files, 24 authorsform-maker: 760 commits, 16 files, 24 authorsgazetteer-blueprint: 2,128 commits, 39 files, 23 authorsgenerator-flobot: 13 commits, 30 files, 3 authorshakken: 359 commits, 362 files, 9 authorsheritage-blueprint: 2,249 commits, 14 files, 25 authorshl-pg-client: 926 commits, 11 files, 23 authorsindices-multi-deprivation-blueprint: 1,925 commits, 32 files, 25 authorsj2119: 817 commits, 44 files, 15 authorsjson-path-input-resolver: 283 commits, 10 files, 7 authorsjson-schema-builder: 656 commits, 21 files, 16 authorsjson-schema-markdown-a-tron: 565 commits, 11 files, 13 authorsjson-schema-to-cardscript: 643 commits, 35 files, 19 authorsjson-to-vuelidate: 790 commits, 10 files, 14 authorsjsonpath: 108 commits, 31 files, 16 authorslerna-sync: 538 commits, 16 files, 17 authorsmystic-taiga: 31 commits, 10 files, 2 authorsnotify-locator-app: 22 commits, 7 files, 5 authorsnotify-locator-server: 24 commits, 7 files, 5 authorsofsted-blueprint: 1,979 commits, 24 files, 24 authorspg-address-matcher: 827 commits, 15 files, 16 authorspg-concat: 772 commits, 10 files, 23 authorspg-delta-file: 1,334 commits, 22 files, 27 authorspg-diff-sync: 874 commits, 46 files, 23 authorspg-info: 950 commits, 16 files, 28 authorspg-model: 1,131 commits, 24 files, 25 authorspg-telepods: 1,436 commits, 24 files, 25 authorspizza-blueprint: 630 commits, 32 files, 19 authorspizza-build: 134 commits, 14 files, 4 authorsquasar-map-mapbox: 397 commits, 11 files, 13 authorsquasar-twitter-experiment: 57 commits, 85 files, 4 authorsrbac: 690 commits, 14 files, 16 authorsrelationize: 888 commits, 18 files, 21 authorssharepoint: 1,014 commits, 12 files, 22 authorssmithereens: 1,070 commits, 17 files, 22 authorsstatebox: 1,856 commits, 232 files, 33 authorsstatelint: 756 commits, 86 files, 16 authorsstates-language: 8 commits, 3 files, 4 authorsstatic-eval: 42 commits, 10 files, 11 authorssupercopy: 1,218 commits, 47 files, 29 authorstag-builder: 503 commits, 11 files, 8 authorstymless: 25 commits, 18 files, 5 authorstymly: 3,340 commits, 24 files, 37 authorstymly-alerts-plugin: 283 commits, 19 files, 9 authorstymly-assets: 9 commits, 45 files, 4 authorstymly-auth-auth0-plugin: 1,983 commits, 62 files, 28 authorstymly-base: 1,913 commits, 14 files, 16 authorstymly-cardscript-plugin: 2,039 commits, 183 files, 24 authorstymly-cardscript-sdk: 3,665 commits, 49 files, 24 authorstymly-cli: 469 commits, 879 files, 13 authorstymly-cli-rest-client: 779 commits, 32 files, 20 authorstymly-cloudstorage-plugin: 728 commits, 54 files, 15 authorstymly-core: 2,688 commits, 524 files, 35 authorstymly-crypto-plugin: 1,237 commits, 31 files, 20 authorstymly-data-types: 554 commits, 16 files, 13 authorstymly-diaries-plugin: 1,632 commits, 38 files, 19 authorstymly-doc-generator: 621 commits, 33 files, 19 authorstymly-etl-plugin: 1,986 commits, 33 files, 23 authorstymly-express-plugin: 1,554 commits, 96 files, 25 authorstymly-fastify-plugin: 1,694 commits, 138 files, 17 authorstymly-gatherer: 1,367 commits, 41 files, 20 authorstymly-gov-uk-notify-plugin: 1,823 commits, 101 files, 24 authorstymly-graphql-plugin: 235 commits, 23 files, 12 authorstymly-localfilestorage-plugin: 763 commits, 31 files, 12 authorstymly-model-playpen: 59 commits, 84 files, 3 authorstymly-notes-plugin: 932 commits, 20 files, 14 authorstymly-os-places-plugin: 849 commits, 18 files, 13 authorstymly-pg-plugin: 3,386 commits, 138 files, 31 authorstymly-rankings-plugin: 2,348 commits, 67 files, 32 authorstymly-rbac-plugin: 1,235 commits, 112 files, 19 authorstymly-rest-client-plugin: 910 commits, 24 files, 21 authorstymly-runner: 2,392 commits, 43 files, 28 authorstymly-scaffold: 466 commits, 35 files, 13 authorstymly-schedule-plugin: 549 commits, 56 files, 13 authorstymly-sharepoint-plugin: 1,601 commits, 15 files, 23 authorstymly-solr-plugin: 2,673 commits, 85 files, 31 authorstymly-statelint: 885 commits, 26 files, 16 authorstymly-test-helpers: 646 commits, 60 files, 18 authorstymly-upload-plugin: 1,300 commits, 20 files, 19 authorstymly-users-plugin: 1,231 commits, 158 files, 27 authorstymly-website: 197 commits, 308 files, 13 authorsviewscript: 7 commits, 2 files, 3 authorsvirtual-everest-climb: 47 commits, 282 files, 4 authorswmfs.github.io: 34 commits, 144 files, 2 authorsxml-flatten2csv: 756 commits, 26 files, 20 authorsxml2csv: 917 commits, 16 files, 30 authorszx-tymly: 6 commits, 15 files, 1 authorsfiles at HEAD (log)commits (log)

The shape of a repository

Directory layout is the cheapest reliable signal of what a repository actually is. app/ with config/ and spec/ is a Rails application; src/ with test/ is Java or Node. Counted by how many repositories contain each top-level directory at HEAD.

Most common top-level directories

.circleci.circleci: 9191testtest: 9090liblib: 8484modelsmodels: 1111state-machinesstate-machines: 1010functionsfunctions: 88docsdocs: 88srcsrc: 77scriptsscripts: 77categoriescategories: 77card-templatescard-templates: 66configconfig: 66binbin: 55seed-dataseed-data: 44template-rolestemplate-roles: 44sharedshared: 44imagesimages: 44assetsassets: 33

Most common file extensions

By total file count across the estate.

.json.json: 2.3k2.3k.js.js: 2.2k2.2k.md.md: 548548.png.png: 492492.yml.yml: 182182.html.html: 153153.java.java: 133133.xml.xml: 126126.svg.svg: 110110.sql.sql: 6767.csv.csv: 6666.j2119.j2119: 6262.py.py: 5959.ejs.ejs: 5151.jpg.jpg: 4343.xlf.xlf: 3737

The twenty largest repositories

RepositoryLanguageGit size CommitsFilesStatus
cardscriptVue61.6 MB1,44774active
virtual-everest-climbJavaScript33.8 MB47282active
blocky-experimentJavaScript12.8 MB6762active
hakkenJava7.5 MB359362active
tymlyJavaScript5.2 MB3,34024active
tymly-assets-5.1 MB945active
tymly-model-playpenVue2.5 MB5984active
tymly-cardscript-sdkJavaScript1.8 MB3,66549active
tymly-pg-pluginJavaScript1.8 MB3,386138active
tymly-coreJavaScript1.7 MB2,688524active
wmfs.github.ioHTML1.7 MB34144active
addressbase-premium-blueprintJavaScript1.6 MB2,63458active
care-quality-commission-blueprintJavaScript1.5 MB2,37328active
tymly-solr-pluginJavaScript1.5 MB2,67385active
tymly-rankings-pluginJavaScript1.5 MB2,34867active
heritage-blueprintJavaScript1.4 MB2,24914active
food-hygiene-blueprintJavaScript1.4 MB2,28831active
cardscript-to-quasarJavaScript1.3 MB2,54592active
building-blueprintJavaScript1.3 MB2,06121active
tymly-runnerJavaScript1.2 MB2,39243active