I've been taking a look inside the Blackboard Attendance B2 and I've found some interesting facts. The first one is that is pretty well designed, I like the frontend isolation via react, minimized and ofuscated just like every client side code should be, and the rest nature of the architecture. This is the second interesting fact, because no local storage is used by the B2 but a rest service. The B2 implements a client for the rest api that access to the attendance data:
private static String ATTENDANCE_SERVICE_BASE_PATH = "/attendance/api/v1/meetings";
private static String MEETING_ATTENDANCE_SERVICE_BASE_PATH = "/attendance/api/v1/attendanceRecords";
private static String ATTENDANCE_GRADE_COLUMN_BASE_PATH = "/attendance/api/v1/course/";
This looks like we will have a public rest api for attendance very soon!
A third thing that catch my eye is that the API will be very versatile, because is shared between several other applications like Collaborate and Transact.
I hope to hear about this pretty soon.