Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposal: Certificates Templates Library (Studio UI) #370

Open
juliakudriavtseva opened this issue Jul 17, 2024 · 10 comments
Open

Proposal: Certificates Templates Library (Studio UI) #370

juliakudriavtseva opened this issue Jul 17, 2024 · 10 comments
Assignees

Comments

@juliakudriavtseva
Copy link

Abstract

The primary objective of this proposal is to enhance the efficiency of the certificate configuration process for course creators. This improvement targets the needs of course creators who operate within a platform offering multiple courses for diverse learners, each requiring certificates with distinct templates.

The goal will be accomplished by developing tools that enable course authors to select specific templates from the pre-existing certificate templates library, which is managed by the platform administrator.

Implementing this proposal will provide several key benefits:

  • Improved User Satisfaction: Users will experience greater flexibility in certificate configuration and the ability to reuse certificate templates within a single instance.
  • Time Efficiency: Course creators will save time by easily selecting and applying pre-designed templates, streamlining the certificate issuance process.
  • Scalability: The system will support a growing number of courses and learners, ensuring that certificate management remains efficient as the platform expands.
  • Reduced Administrative Burden: By empowering course creators to choose certificate templates for their courses, platform administrators will face fewer requests for custom certificate configurations.
  • Enhanced User Experience: A more intuitive and user-friendly interface for certificate selection will lead to a smoother overall user experience for course creators.

Detailed Product Proposal

No response

Context & Background (in brief, if a Product Proposal is linked above)

Open edX platform serves a diverse range of educators and learners, offering multiple courses across various disciplines. As the demand for online education continues to grow, so does the need for a streamlined and flexible approach to certificate issuance.

Currently, OeX platform provides a certificate templates library, managed by administrators, which houses a variety of pre-designed certificate templates. However, course creators don’t have an efficient mechanism to select and apply these templates to their courses within the Studio UI. This gap not only leads to the lack of course author’s autonomy and efficiency in managing their course certificates, but also increases the administrative burden on platform managers.

Scope & Approach (in brief, if a Product Proposal is linked above)

Scope of features

Basic Certificate Template Usage

As a course author, I want to select and use a single certificate template from the library for all learners in my course so that I can quickly issue certificates using pre-existing templates without additional configuration.

  • Feature implemented in: CMS
  • Primary persona: Course Author

Certificate Previews for a Template

As a course author, I want to preview certificate with selected template in Certificate Settings so that I can ensure it meets my course requirements.

  • Feature implemented in: CMS
  • Primary persona: Course Author

Value & Impact (in brief, if a Product Proposal is linked above)

The primary beneficiaries of this initiative are educational institutions and organizations aiming to serve a diverse audience of learners, including:

1. Educational Institutions with Blended Study Programs:

Institutions offering online degree programs and certification courses will benefit from the ability to efficiently issue professional certificates. Universities that offer a variety of programs, such as undergraduate degrees, postgraduate degrees, and professional certifications, will be able to issue distinct certificates with appropriate branding and design requirements.

2. Corporate Training Providers that Work with Larger Organizations:

Companies that offer internal training programs and professional development courses can streamline the certificate issuance process for employees. Large corporations that provide training in different areas (e.g. leadership development, technical skills, compliance training, language proficiency) will be able to distinguish between internal training certifications, external professional development courses, and mandatory compliance training certificates, aligning with the corporate branding for each department or training type.

3. Non-Profit Organizations and NGOs:

Organizations focused on educational outreach and development can issue certificates for different training programs and workshops. NGOs providing educational programs in underprivileged areas can use different templates for each program to reflect the unique focus and objectives of the course, offering tailored recognition of the skills acquired.

4. Others:

Additionally, the certificate template library will be highly beneficial for any course author or course-provider organization. By allowing users to select a template from this library, the system increases efficiency and flexibility in certificate creation.

Milestones and/or Epics

Milestone 1: Basic Certificate Template Usage and Preview

Basic Certificate Template Usage

As a course author, I want to select and use a single certificate template from the library for all learners in my course so that I can quickly issue certificates using pre-existing templates without additional configuration.

Acceptance criteria (AC):

  1. The Course Author should be able to choose a certificate template from the instance's certificate template library in the course certificates settings interface in the CMS;
  2. The Course Author should be able to configure general certificate settings, such as course details and signatories, for the certificate that uses the selected template;
  3. When the certificate is activated, all certificates for all learners in the course should be generated using the selected certificate template;
  4. If the course author does not select a certificate template from the library, the platform should generate certificates for learners using the default certificate template specified by the Admin.

image

Certificate Previews for a Template

As a course author, I want to preview certificate with selected template in Certificate Settings so that I can ensure it meets my course requirements.

Acceptance criteria (AC):

  1. The Course author should be able to access a preview of a certificate template in the Certificate Settings interface of the CMS.

Named Release

Sumac

Timeline (in brief, if a Product Proposal is linked above)

TBD

Proposed By

Raccoon Gang

Additional Info

No response

Copy link

Thanks for your submission, @openedx/openedx-product-managers will review shortly.

@jmakowski1123 jmakowski1123 moved this to [Prod Proposals] NEW in Open edX Roadmap Jul 18, 2024
@jmakowski1123 jmakowski1123 moved this from [Prod Proposals] NEW to [Prod Proposals] In Review in Open edX Roadmap Jul 18, 2024
@jmakowski1123
Copy link

jmakowski1123 commented Jul 18, 2024

Thanks so much for submitting, @juliakudriavtseva! Overall, this sounds like it would deliver a lot of value for users, and also aligns with the overall platform goals to enhance customization. I have a couple of questions.

  1. Your user stories are really helpful, thanks for putting those together. I want to make sure I understand the scope of what you're proposing to pull out of Django and into the CMS. Would the process of creating certificate templates remain in the Django admin, and the CMS would contain the library of pre-created templates? Or would the process of creating templates be pulled into the CMS as well? Out of these current Django admin capabilities, which ones are you targeting?
Screen Shot 2024-07-18 at 10 51 16 AM
  1. From a Core Product perspective, I define the capability of creating, customizing and generating certificates as part of the core. However, to maximize customization potential here, I wonder if we should explore implementing this via a front-end plugin in Studio. In other words, what would it look like to make the Certificates setting in Studio a pluggable slot? As a platform, we should support a basic feature that enables certificate templates to be created, and we should also support a basic library of re-useable templates. But if that were developed as a plugin, it would open the door to making certification customization extensible. What are you thoughts? Also tapping @arbrandes for feasibility input? The Certificates space in Studio accomplishes a couple of different functions, so would that need to translate into multiple slots?
Screen Shot 2024-07-18 at 10 53 29 AM
  1. I'd also like to tap Scott Dunn and @e0d if there's any overlap here with the credentialing service?

  2. Is this a project RG is already planning to take on? Does it have implementation resources allocated?

@GlugovGrGlib
Copy link
Member

Hi @jmakowski1123

I can address some questions and wanted to provide more context around the latest work on credentials.

  1. This wasn't described in details, but I believe initially we proposed continuing with the Django admin approach. In the second milestone, however, we need to consider exposing HTML editing and asset uploads into the CMS UI. In my opinion, it might be useful to implement functionality to create and configure new certificate templates outside the course context and make it accessible from the CMS Home Page, what do you think? I still believe both milestones could potentially be completed before Sumac.

  2. That's a great idea, and we should definitely do it! Meanwhile, it was discussed today in the Frontend Working Group that all plugin slots should have specific names, similar to Hooks in Python code. Extending the course certificate page with additional custom fields to display on the certificate is likely the most common customization, but we should reach out to the community for suggestions on useful customizations for the Certificates page. This way, we can introduce standardized slots on this page.

  3. We are currently working on the proposal for the next phase of the credentials-sharing initiative, which we plan to discuss with Scott and Ed by the end of this month. The items prioritized and that potentially can be completed before Sumac do not overlap in these proposals, as the credentials-sharing proposal focuses on micro-credentials, not Course Certificates. However, future phases for both initiatives depend on finalizing the architectural decision about migrating the Course Certificates from the LMS to the Credentials service, an idea that has been considered since 2020-2021 but has not yet been decided.

  4. RG has development resources to deliver initial phases of this functionality before Sumac. However, RG is looking for a sponsor for the Certificates Templates Library initiative.

@juliakudriavtseva
Copy link
Author

Hi @jmakowski1123 !

Glib is right: As of now, we propose to leave the certificate templates configuration in Django admin, while the template selection for a specific course will be implemented in the CMS. This looks like a fairly simple change that can drastically improve the user experience and provide course creators with a significant amount of independence. However, in future milestones, we plan to expand certificate customization exactly as Glib described: providing course creators with a certificate editor within the CMS UI.

@jmakowski1123
Copy link

Thanks @GlugovGrGlib and @juliakudriavtseva ! I agree that a good first step, an MVP, is to simply create the template selection/template library in Studio, and then explore template creation outside of django in future phases.

As for that second stage, I think we'll need to do some discovery work to confirm that it makes sense to keep the workflow for creating certificate templates outside of the course context. This might be a good protoype concept for an administrator dashboard, which also doesn't exist yet but that we've been talking about for a long time.

And good idea for getting community input on customizations for the certificate page. Maybe starting with a forum post? And I'm happy to reach out to a few users as well. Let's centralize findings in Wiki, I've created a space for this project: https://openedx.atlassian.net/wiki/spaces/OEPM/pages/4354703383/Certificate+Templates+Library+in+Studio

@marcotuts
Copy link

Having dealt many years ago with the existing Django admin certificate templates and customized template generation (shudder) - It may be helpful also to consider ways of linking the "Certificate html view configurations" with associated "Certificate assets" etc.

As I recall, an HTML template was stored in the first area, and CSS / JS was stored in the second area, and the only link was if you happened to reference the right CSS / JS in the HTML file you generated.

Being able to say that a certificate template A is a bundle of the necessary HTML / JS / CSS might be helpful, compared to the manual and error prone approach for custom HTML certs today.

Thanks for pushing this forward!

@juliakudriavtseva
Copy link
Author

Hi everyone! Thanks for your input to this proposal!!
@jmakowski1123 , so, if I understood correctly, we can now go on with the iteration 1 solution (template selection in CMS) while also preparing the 2nd iteration's proposal (or even several proposals): certificate editing for course creators, general improvements on certificate page and user flow etc, right? I am planning to gather all the ideas and insights and decompose them into tangible tasks so we can create a plan and move forward with it

@crathbun428 crathbun428 self-assigned this Sep 10, 2024
@marcotuts
Copy link

marcotuts commented Dec 3, 2024

Note - Not all certificate templates should be shown to all courses in an instance. You may need a site and / or org level filters to show the right subset of certificate templates for a given course.

You don't want to offer a choice for a certificate template to Org1 for a cert template generate for Org2.

Edit: Already this proposal covers the idea of a default template, so defining / specifying that in Django admin might also need to specify these other site / org level exceptions somehow.

@marcotuts
Copy link

Additional details on mocks for the previewing would be helpful here if that has been considered @GlugovGrGlib ?

Currently, my understanding is that django certificate templates are linked to a course mode and this is what powers the single or multiple certificate previews & templates issued for a course.

I'm not sure how this proposal expands the course mode linked associations, or whether the preview mode buttons / tools are also rendered in the top right as a page level action?

@crathbun428
Copy link

@juliakudriavtseva - I agree that if and when this gets worked on, it must include the following (both to echo Marco's point above):

  1. There needs to be some functionality around allowing administrators to restrict the certificates that course authors can chose (for example: a platform admin might only want course authors for X org to be able to select X certificates for example).
  2. Can we see how you'd envision allowing the course author to preview the certificate template? I know there are some members of the product wg that would be happy to weigh in or assist if you need any thoughts on how the preview flow should/could work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: [Prod Proposals] In Review
Development

No branches or pull requests

5 participants