PLDB Readme
Top 1K Features Creators Events Podcasts Books Extensions Interviews Blog Explorer CSV

PLDB Readme

A Programming Language Database

View this readme as HTML

PLDB is a public domain ScrollSet and website containing over 135,000 facts about over 5,000 programming languages.

This repo contains the entire ScrollSet, code, and website for http://pldb.info.

To download the data

The entire ScrollSet is ready to analyze in popular formats. Full documentation is here: http://pldb.info/csv.html

To build the site locally

git clone https://github.com/breck7/pldb cd pldb # Required to run this during first install only. npm i -g cloc # Required to run this on fresh checkout and when upgrading from an old checkout or periodically when there are new releases npm install . # (Optional) Run tests npm run test npm run build # After you make changes and before you commit make sure to run: npm run format

Making changes and deploying

1. Make your changes locally

Edit the ScrollSet files in concepts/, update parsers in code/measures.parsers, or modify any other source files.

2. Push to main

When you push to the main branch, a GitHub Actions workflow automatically:

The build takes about 2 minutes on GitHub's runners.

3. Deploy to server

The setup-pldb.sh script deploys the pre-built site to a fresh Ubuntu server (tested on Ubuntu 24.04). It downloads the build artifact from GitHub Releases, so no building happens on the server.

Requirements:

./setup-pldb.sh <ip-address> <repo-url> # Example: ./setup-pldb.sh 159.65.99.188 https://github.com/kaby76/pldb.git

The script will:

Managing the server

After deployment, manage the server with:

systemctl status pldb # Check status systemctl restart pldb # Restart server systemctl stop pldb # Stop server journalctl -u pldb -f # View logs

Redeploying after changes

After pushing new changes to main, wait for the GitHub Actions build to complete, then re-run setup-pldb.sh to deploy the updated site.

To explore this repo

The most important folder is concepts, which contains the ScrollSet (a file for each concept). The file code/measures.parsers contains the Parsers (schema) for the ScrollSet.

You can see the cloc language stats on this repo at http://pldb.info/pages/about.html.

Citation

PLDB content is published to the public domain and you can use it freely. If needed, here are 3 options for citing PLDB:

http://pldb.info
PLDB contributors. (2026) - "PLDB: a Programming Language Database". Retrieved from: 'http://pldb.info' [Online Resource]
@article{pldb, author = {PLDB contributors}, title = {PLDB: a Programming Language Database}, journal = {PLDB}, year = {2026}, note = {http://pldb.info} }

All sources for PLDB can be found here: http://pldb.info/pages/acknowledgements.html

- Build the next great programming language Add Add Prompt Issues About Search Keywords Livestreams Labs Resources Acknowledgements

Built with Scroll v178.2.3