Penampil sederhana untuk menyajikan matakuliah TPB ITB dalam kurikulum 2019 [1], yang dapat dibuat menggunakan JS.
Kode, nama, dan jumlah SKS tiap matakuliah dapat diperoleh dengan mengubah pilihan F/S.
Terdapat beberapa kelas yang digunakan untuk membuat tampilan di atas, yaitu kelas Course
class Course {
	constructor(code, name, credit) {
		this.code = code;
		this.name = name;
		this.credit = credit;
	}
};
kelas Semester
class Semester {
	constructor(term, courses) {
		this.term = term;
		this.courses = [];
		if(arguments.length > 1) {
			this.courses = courses.split(" ");
		}
		this.credit = 0;
	}
	
	addCourse(course) {
		this.courses.push(course);
	}
	
	getCredit() {
		var N = this.courses.length;
		var cre = 0;
		for(var i = 0; i < N; i++) {
			var c = getCourse(this.courses[i]).from(courses).credit;
			cre += c;
		}
		this.credit = cre;
		return this.credit;
	}
};
dan kelas Curriculum
class Curriculum {
	constructor(name) {
		this.name = name;
		this.semesters = [];
	}
	
	addSemester(term, courses) {
		var s = new Semester(term, courses);
		this.semesters.push(s);
	}
};
serta beberapa fungsi
function createCourse(info) {
	var s = info.split("\t");
	if(info.length > 0 && s.length > 1) {
		var c = new Course(s[0], s[1], parseInt(s[2]));
		courses.push(c);
	}
}
function getCourse(code) {
	var o = {
		from(courses) {
			var N = courses.length;
			var c;
			for(var i = 0; i < N; i++) {
				if(code == courses[i].code) {
					c = courses[i];
					break;
				}	
			}
			return c;
		}
	}
	return o;
}
function getSemester(term) {
	var o = {
		from(semesters) {
			var s;
			N = semesters.length;
			for(var i = 0; i < N; i++) {
				if(term == semesters[i].term) {
					s = semesters[i];
					break;
				}
			}
			return s;
		}
	}
	return o;
}
function getCurriculum(name) {
	var o = {
		from(faculties) {
			var f;
			N = faculties.length;
			for(var i = 0; i < N; i++) {
				if(name == faculties[i].name) {
					f = faculties[i];
					break;
				}
			}
			return f;
		}
	}
	return o;
}
function strCurriculum0(curriculum) {
	var sem = curriculum.semesters;
	var str = "";
	str += curriculum.name + "\n";
	for(var i = 0; i < sem.length; i++) {
		str += "Semester " + sem[i].term + "\n";
		var cou = sem[i].courses;
		for(var j = 0; j < cou.length; j++) {
			var c = getCourse(cou[j]).from(courses);
			str += c.code + "\t";
			str += c.name + "\t";
			str += c.credit + "\n";
		}
	}
	return str;
}
untuk menggakan kelas-kelas di sebelumnya. Beberapa fungsi dapat dintegrasikan ke dalam kelas terkait, yang mungkin akan dilakukan dalam versi berikutnya. Penggunaan larik global, e.g. courses, curriculums juga akan ditinjau ulang.
Kode lengkap dapat diperoleh [2] dan dapat dimodifikasi. Digunakan dengan cara meletakkan baris berikut
<script src="js-view-tpb-curriculum.js"></script>
dalam suatu berkas HTML setelah berkas JS js-view-tpb-curriculum.js tersebut disimpan pada link tertentu agar dapat dipanggil seperti potongan kode di atas.