Dec 23, 2019


  • Schools now have a public homepage! It shows details about the school and lists its featured courses. The course details page, and the enrollment page have also been redesigned to use the course’s header and thumbnail images (when available). The screenshots below show how it looks without customized images. The school customization section has also been updated to reflect the new design, and includes new controls to edit the school’s name, description, and a header image.

  • Course authors can now configure targets to allow teams of students to tackle a target together, in a single submission, or to require students to submit work individually.

  • The course enrollment / application form now accepts the name, email, and a tag using URL parameters; this allows you to forward students from other sources such as third-party forms, so that the page appears with pre-filled data.

UI and UX

  • Instead of locking milestone targets, the option to level up is now blocked if students have failed milestone submissions, or those pending review in the previous level. This change allows students to always access all targets in the level that they’re in, but shows a blocked message to prevent them from continuing to level-up with pending work.

  • The editor for a student’s details in the school admin interface has been re-worked. It now accepts the access end date, and moves the dropout option into a new Actions tab. Dropped-out students, and students whose access have ended are now hidden from the main list, and shown in the inactive students section.

  • Notification mails sent to coaches when students create new submissions links to the new review interface, instead of the legacy interface (which is being phased out).

  • Students can now level up immediately after submitting or completing the final milestone target in a level. Previously, the student needed to reload the page before the option to level up would show up.

Dec 02, 2019


  • Courses can now have thumbnail and cover images, for display on the home page, and the course’s inner pages, respectively. These can be assigned via an updated courses list in the school administration interface.

UI and UX

  • Long strings such as URLs will now line-break properly within Markdown input text boxes.

  • Restored browser-based spell-check on Markdown input text boxes. This was lost when we switched to a different text input implementation a few months ago, without realising that the spell-check feature needed to be manually enabled.


  • Fixed a bug that caused teams from other courses to be listed in a coach’s team assignment list within a course.

  • Fixed a bug that would cause the Evaluated by name for a submission to change when another coach added new feedback for a submission.

Nov 05, 2019


  • The review interface now supports the creation of a checklist with templated feedback. This allows reviewers to quickly and easily set up checklists for review and to automatically generate relevant feedback from the result of the checklist. This feature can be used to greatly speed up the review process and to improve the overall quality of the feedback when multiple reviewers are working together.

  • School admins can now be deleted from the admin interface. School admins can also delete their own access, as long as they aren’t the only admin left.

UI and UX

  • Improved the heading messages displayed on the sign in page so that the school’s name is included correctly on some screens.

  • Removal of coaches from a course now requires an extra confirmation step.


  • Fixed a bug that could cause grading of older submissions with different evaluation criteria to render incorrectly on a student’s target overlay.

  • Fixed a bug that could cause the submissions review interface to get stuck on the loading state.

  • The email field was removed from the coach editor for existing coaches on the school admin interface - it’s unsafe to change emails of existing users, and the server would have simply rejected the request.

Oct 22, 2019

UI and UX

  • Improved the styling of multi-line code blocks that are nested inside lists.

  • The list of pending submissions for review on the coach’s review interface is now sorted by date, with the newest at the top.

  • The list of course exports on the school admin interface is now properly sorted by date, with the most recent at the top.

  • The student addition form now prevents school admins from listing the same email address twice.

  • A datepicker has been introduced to the school admin interface to make selecting dates easier. They’re present in the course details editor (course end date), and on the level editor (level unlock on).

  • The school admin interface’s course students page now only shows directly linked (personal / team) coaches on the index page. The previous implementation listed course coaches as well, which wasn’t particularly useful. The student editor on the page now hides the team name field for students who aren’t teamed up. This page has also been slimmed down to load faster.


  • Fixed a bug that could cause the addition of a coach as a student in a course to remove the saved title of that user, which would then cause a crash of the school admin interface. The title field is now always given some value whenever a user is created, and no edit is allowed to remove an existing title.

  • The submit button on the coach addition form now properly starts in the disabled state, and becomes enabled only after basic info has been filled in.

  • Fixed a bug in the student editor’s tag field that would allow admins to set a blank tag that contains only a space character.

  • Fixed a crash that would occur when trying to delete the sample content block generated along with a new target, right after the target is created.


  • The platform has been upgraded to use Rails 6, and Ruby 2.6.5.

  • The changelog, and the code that renders the changelog as a page has been moved out out the platform since didn’t make sense for it to be there. It is now hosted seperately at

Oct 07, 2019


  • We’ve deployed a brand new interface for reviewing student submissions! The new interface lists pending and reviewed submissions separately with a level filter, and lets coaches view all submissions for a target from a student in one place, making it easy to compare and check for improvements. The new interface strips out the student filter, because of which the old review interface will remain accessible (via the Home page, marked as legacy) until a new “Your Students” interface goes live.

  • The Markdown editor now supports direct file uploads. Image files will be embedded inline whereas all other file types will be treated as a Markdown-formatted links.

  • School admins and coaches can now preview courses without being enrolled in them as a student. School admins can preview all courses whereas coaches can preview courses where they have assigned students.

UI and UX

  • The preview button on the school admin target editor has been changed to a tab that switches between the Preview and Edit modes.

  • The design of the separator between submissions listed on a student’s target overlay has been tweaked to avoid confusion with a carousel’s control.

  • Fixed some design issues that could cause text to overflow on the student’s target overlay and on the community index.


  • Fixed a bug in the Markdown editor that could cause the cursor to jump around when editing a single character.

Sep 23, 2019


  • The feedback editor in the coach review interface now accepts Markdown. There will be a bit of a downgrade in the experience for a short while, as the editor doesn’t have any UI elements to help with writing Markdown, but it introduces support for tables, syntax-highlighted code-blocks, and much more. This was done in preparation for a complete redesign of the review interface, which is now underway.

  • The target editor in the school admin interface now supports versioning. A daily snapshot of target content is taken whenever the content is edited, the editor now includes a method to view previous verisons and to restore them, if required.

  • Linked targets are now displayed when viewing a question in the community.

UI and UX

  • When visiting a target’s details page directly, the target’s level is now selected on the curriculum page underneath.

Sep 02, 2019

UI and UX

  • The quiz editor in the school admin interface now has improved styling that makes the selected answer stand out in the list of possible answers - this decreases the likelihood that the target author will forget to select the right answer before moving on.

  • The student submission form is now disabled when the attachment form contains a link that hasn’t been attached yet. The form now lets the user know that the link needs to be at attached for it to count as a part of the submission.


  • PupilFirst is now open-source! This project’s overall goal has always been to make modern tooling available in the field of education, and to do so in a manner that promotes effective techniques for improving student outcome. Going open-source allows us to be transparent about the work that we do, and the changes we’re making to the platform to aid that goal.

Aug 28, 2019


  • School admins can now sort targets and target groups using the curriculum editor, similar to how target content blocks are sorted.

  • School admins can now alter the affiliation property when editing the details of a coach.

UI and UX

  • Many pages have been updated to redirect users to the sign in page if they haven’t logged in (instead of 404-ing).

  • Improved the informational message displayed when students are prevented from completing a target when they’re in a lower level.


  • The leaderboard now properly excludes inactive students from the aggregate counts displayed.

  • Fixed incorrect page rendering that could occur when school admins attempt to visit the leaderboard page without having a student profile.

  • School admins can no longer submit the target editor form with a blank link-to-complete. The form now proplerly blocks the user from submitting the form without the link.

Aug 20, 2019


  • School administrators can now invite others to become admins.

  • Schools admins can now export data about student submissions from the administartion interface.


  • Levels that do not have milestone targets no longer show the option to level up - the level up button wouldn’t have worked, but it obviously didn’t make sense to show the option either.

  • Removed links to archived questions from the community daily digest mail.

Aug 12, 2019


  • Added the ability for school administators to open up a course for public registration.

  • Leaderboard pagination links are now permalinks. The leaderboard navigation links used to use a page number for navigation, because of which, a paginated link would show a different leaderboard every week. This parameter has been replaced with a date, which allows leaderboard paginated links to always show the same leaderboard.

  • Added the field affiliation to students - this allows differentiation between student groups outside the school administration interface. It is currently displayed on the leaderboard and on community question pages.

UI and UX

  • We’ve added a number of new illustrations for notice messages on the student dashboard.

  • The design for the leaderboard has been updated and merged into the student dashboard.

  • The coach review dashboard now shows all feedback sent for a student submission, instead of just the latest one.

  • Added a placeholder logo on the school administration interface when the school does not have a custom image.

  • The coach review dashboard has been updated to load up to 100 pending submissions (previously 20).

  • Longer school names are now handled correctly on the top navigation bar and the sign in page.

  • The email sent when a coach adds feedback for a student submission has been updated to include a more helpful subject and up-to-date links.


  • We’ve fixed a number of bugs related to the Markdown editor that is used in community pages and in the school administration interface by replacing the textarea-based implementation with one that uses Facebook’s Draft.js library.

Jul 30, 2019


  • Users can now set a new password for signing in, or request a password reset from the sign in menu. Using any of the federated sign-in methods (Google, Facebook, Github) is still preferred, as it is the most secure option; however signing in with passwords is convenient when the email isn’t linked with any of the providers.

  • Email notifications have been enabled for community updates. Answers to your questions or comments on your questions or answers will trigger an immediate email. An additional community digest email will also be sent daily, listing new questions and unanswered questions from the past week. The diget email can be controlled from the edit user profile page.

UI and UX

  • Removed links to course communities for dropped out students from their home page.


  • Corrected the link of the Clear button that removes the link between a target and a new community question.

  • Fixed crashes caused by invalid attempts to generate links to user avatars.

  • Fixed a crash that could occur if the like button on community answers was clicked in quick succession. The button has also been updated to disable itself while a network request is ongoing.

  • Fixed a crash that would occur when trying to download files that were attached to submissions.

Jul 16, 2019


  • Quizzes now support Markdown content in both questions and answers. This allows the quiz to include code snippets, images, etc.

  • The generation of leaderboard entries can now be controlled, per-course, from the admin interface.

UI and UX

  • The back button on the New Question page now takes the user back to where they came from (community index, or target details page), instead of always linking to the community index.

  • The ordering of answers in the community section has been improved; answers with more likes are listed first, and if two have the same number of likes, the newest is preferred.


  • Fixed a crash which could occur when users uploaded a profile pictures between 2 and 5 megabytes. The form now correctly limits the file size to 5 MB.

  • Fixed a bug which hid the review button for courses in a coach’s home page under certain conditions.

Jun 28, 2019


  • The student dashboard has been overhauled with a fresh design, and the target details overlay has been upgraded to allow us to present rich documents as content for students to consume. School admins can now author much larger documents as content for targets, freely introducing blocks of Markdown, embeds from various sites, images, or files for students to download.

  • We have a new home landing page for the signed-in user. Users can now see all the courses and communities they belong to in a single page. All course related links are also directly accessed from this page.

  • The community feature is now live! This new features enables school admins to create multiple communities in a school where students can discuss target and other doubts with their peers. All communities linked to a course can now be directly accessed from the student dashboard. Students who have access to a community can ask question, answer questions from others, and upvote answers. Coaches act as moderators for the community. The author of the community resource, or any coach, can edit or remove said resources. The content of questions, answers, and comments are versioned, to keep track of changes, and Markdown can be used to format the content of questions, answers and comments.

  • There’s a new customization interface which school admins can use to change various aspects of the school’s appearance, from logos and icons, to links and legal agreements.

UI and UX

  • Student submissions can now be un-done / deleted right after they are submitted, and directly from the target details overlay. This replaces the old approach of navigating to the student’s profile page to be able to delete a submission. Like before, only un-reviewed submissions can be deleted.


  • Fixed a bug that prevented the coach review dashboard from loading previously reviewed submissions in some cases.

Apr 22, 2019


  • Coaches can now be added to schools and enrolled to courses or teams using the school administration interface.

UI and UX

  • The name of reviewer is now mentioned on the coach review dashboard, for submissions that have already been reviewed.

Mar 25, 2019


  • A beta version of a school administration interface is now live - this will allow school admins to control all aspects of the courses they manage through a modern UI.

  • The weekly leaderboard feature, that shows top active students, has been reinstated with a brand new design.

UI and UX

  • Improved UX on coach review dashboard - this update allows coaches to search for a student in their list, and to load previous submissions from students when the filter is active. Messaging in these screens has also been improved.


  • Targets which can be completed by visiting a link now actually complete when the link is visited.

Feb 04, 2019

UI and UX

  • Improved the coach dashboard UI by splitting into pending and completed tabs

Jan 31, 2019


  • We have a new and flexible grading system! Course admins will now be able to configure how they want to review student submissions. A sleek grade bar will be visible on both the student and coach dashboards.

  • We’ve tweaked the behavior of the target overlay on the student dashboard, for students who go through a course as a team. With this update, students can now see which team members still have to complete targets that they have to tackle independently. It’s cleaner than the earlier approach of displaying the status for every student in the team.

  • Coaches can now be assigned directly to multiple courses so that they can review submissions from all students taking the course. Previously they had to be individually assigned to students (or teams) to gain review access.


  • Auto-verified targets now behave correctly when they’re also team targets (completed together as group). The platform used to assume that such targets were always individually completed.


  • The primary component from the team profile page - the timeline of students’ activity has been moved into the student profile page, and the team profile page has been shut down.

Jan 03, 2019


  • Happy new year, folks! :-)

Pupilfirst Pvt. Ltd. uses cookies on to analyse usage of the website and to understand where our visitors are coming from. Cookies may be placed by third parties. By closing this message and continuing to use the site you consent to cookie use by