Sample corpora for legacy-system discovery practice
| Field | Value |
|---|---|
| Type | Skill Resource |
| Source | ~/.copilot/skills/architecture/references/discovery/sample-corpora.md |
| Description | Not specified |
Source Content
Sample corpora for legacy-system discovery practice
Every repository below was verified to exist on GitHub during curation; each one carries real, readable legacy artifacts (source plus file/data layouts) rather than empty stubs. Use them to rehearse the discovery phases — inventory, artifact classification, data-model reconstruction, call-graph and dependency mapping, and business-rule extraction. Sizes are approximate and drift over time; treat them as complexity signals, not exact counts.
IBM i / AS400
IBM/ibmi-company_system
URL: <https://github.com/IBM/ibmi-company_system>
The official IBM i example application — an employee and department management system, self-contained and built to compile three ways (GNU Make, ibmi-bob, ARCAD).
Demonstrates: RPGLE, SQLRPGLE, DDS physical files (PF), DDS display files (DSPF), SQL stored procedures (.SQLPRC), and Makefile-driven builds.
Good for phase: inventory and artifact classification (mixed RPG/DDS/SQL tree), data-model reconstruction (PF layouts plus stored procs), call-graph mapping (programs to display files to database), and build-system discovery (three coexisting build tools).
Size/complexity: small-to-medium; ~175 commits; RPGLE ~69% with Makefile ~31%. A clean, modern demo that reads like a real shop’s project.
PoC-dev/as400-sfltemplates
URL: <https://github.com/PoC-dev/as400-sfltemplates>
A heavily commented template collection for building subfile-based 5250 (green-screen) terminal applications, covering both Load-All and Load-Paged subfile patterns back to V4R4.
Demonstrates: RPGLE driver programs, DDS physical files, DDS logical files (LF), DDS display files (DSPF) with subfiles, help panel groups, menu definitions, and test-data loaders.
Good for phase: artifact classification (PF/LF/DSPF split), UI-flow reconstruction (subfile screen logic), and business-rule extraction from densely commented drivers.
Size/complexity: small; RPGLE ~92% with REXX ~8%; ~12 stars; updated 2026. Production-ready and unusually well documented for teaching.
SJLennon/IBM-i-RPG-Free-CLP-Code
URL: <https://github.com/SJLennon/IBM-i-RPG-Free-CLP-Code>
A working-examples collection of modern free-format RPGLE, embedded SQL, and CLP, including a 5250 subfile folder and database examples.
Demonstrates: free-format RPGLE, SQLRPGLE, CLP/CLLE, DDS display/physical/logical files, copy members, and procedure interfaces.
Good for phase: artifact classification across many small programs, dependency mapping (copybooks and procedure interfaces), and business-rule extraction from focused examples.
Size/complexity: small-to-medium; ~114 commits; RPGLE ~92%; ~69 stars. Many discrete snippets rather than one cohesive app — good for breadth drills.
mrKlar/IBM-RPG
URL: <https://github.com/mrKlar/IBM-RPG>
Learning notes, examples, and programs for RPG, CL, DDS, and Db2 SQL, deliberately laid out to mirror how source physical files are stored on a real IBM i.
Demonstrates: RPGLE (QRPGLESRC), classic RPG (QRPGSRC), DDS (QDDSSRC), CL (QCLSRC), CLLE (QCLLESRC), MI (QMISRC), and Db2 SQL.
Good for phase: inventory against authentic library/source-file conventions (QxxxSRC members), and recognizing the classic-RPG vs RPGLE generational split during classification.
Size/complexity: small; ~8 stars; language detection is skewed by the SQL content, so confirm the member mix in the tree. Best value is the true-to-platform directory structure.
Mainframe COBOL
openmainframeproject/cobol-programming-course
URL: <https://github.com/openmainframeproject/cobol-programming-course>
The Open Mainframe Project’s “Getting Started” COBOL course — four books plus labs, the de facto teaching corpus for z/OS COBOL.
Demonstrates: COBOL source, JCL, and lab exercises (course folders COBOL Programming Course #1–#4).
Good for phase: inventory and artifact classification (COBOL plus JCL), and business-rule extraction from progressively harder lab programs.
Size/complexity: large repo (~692 commits, ~3.6k stars) but individual labs are small; COBOL ~74% with JCL ~20%. Pull specific lab folders rather than the whole tree for a focused drill.
CICS online
cicsdev/cics-genapp
URL: <https://github.com/cicsdev/cics-genapp>
The IBM CICS GENAPP general-insurance sample (from SupportPac CB12) — policy insert/query/delete over 3270 green screens with a Db2 backend. A strong analog to unemployment, benefits, and claims systems.
Demonstrates: COBOL, JCL, REXX, and CICS online transaction structure (the base directory holds the core application).
Good for phase: business-domain reconstruction (insurance policy lifecycle), transaction/call-graph mapping (CICS program flow), and data-model reconstruction (policy/customer records).
Size/complexity: small-to-medium; ~19 commits; ~36 stars; COBOL ~74% with JCL ~24%. Compact enough to read end-to-end, domain-rich enough to practice rule extraction.
Mixed / other
aws-samples/aws-mainframe-modernization-carddemo
URL: <https://github.com/aws-samples/aws-mainframe-modernization-carddemo>
A comprehensive COBOL credit-card management application spanning online CICS transactions and batch jobs, built to showcase full mainframe modernization patterns.
Demonstrates: COBOL, JCL, CICS BMS mapsets, VSAM KSDS with alternate indexes, copybooks, and sample EBCDIC data files (plus optional Db2/IMS/MQ extensions).
Good for phase: every phase — large-tree inventory, artifact classification across the widest mix (COBOL/JCL/BMS/VSAM/copybooks), data-model reconstruction from VSAM layouts and EBCDIC data, and online-plus-batch call-graph mapping.
Size/complexity: medium-to-large; ~247 stars; COBOL ~84% with JCL ~6%; Apache-2.0. The richest single corpus here — best when you want one repo that exercises the whole discovery workflow.
Finding more
When a listed repo is gone or you need a different flavor, run these searches and verify each finalist before trusting it (open the repo page, or gh api repos/OWNER/NAME).
GitHub CLI:
gh search repos --language=RPGLE --sort=starsgh search repos rpg as400 --sort=updatedgh search repos ibm i sample application rpgle ddsgh search repos cobol cics sample --language=COBOLgh search repos mainframe modernization sample --language=COBOLGitHub API (topic and language filters):
gh api "search/repositories?q=language:RPGLE+topic:ibmi&sort=stars"gh api "search/repositories?q=DDS+DSPF+RPGLE+in:readme"gh api "search/repositories?q=cobol+jcl+cics+sample&sort=stars"GitHub web search (paste into the search box):
language:RPGLElanguage:COBOL cics sampletopic:ibmi rpgle ddstopic:as400topic:mainframe cobol jclPer-repo verification (preferred):
gh api repos/OWNER/NAME --jq '.full_name,.description,.stargazers_count,.language,.size,.pushed_at'Owners and orgs worth browsing for IBM i / RPG samples:
IBM(seeibmi-company_system,ibmi-tobi,ibmi-oss-examples)codefori(Code for IBM i tooling and demos)worksofliam(blog and sample repos)PoC-dev,SJLennon,mrKlar(community RPG/DDS/CL collections)