Skip to content
176 changes: 176 additions & 0 deletions oeps/processes/oep-0070-proc-shared-design-collateral.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,176 @@
.. _OEP-70 Shared Design Collateral Contribution Requirements:

OEP-70: Shared Design Collateral Contribution Requirements
##########################################################

.. list-table::
:widths: 25 75

* - OEP
- :ref:`OEP-0070 <OEP-70 Shared Design Collateral Contribution Requirements>`
* - Title
- Shared Design Collateral Contribution Requirements
* - Last Modified
- 2026-07-27
* - Authors
- Sam Daitzman <sam.daitzman@schema.education>
* - Arbiter
- TBD (Needs an arbiter)
* - Status
- Draft
* - Type
- Process
* - Created
- 2026-07-14
* - Review Period
- TBD (recommended 2 weeks)
* - References
- Open edX shared Figma instance; `Open edX Shared Design Collateral
<https://openedx.atlassian.net/wiki/x/A4BtbwE>`_;
:ref:`OEP-1 <OEP-1 OEP Purpose and Guidelines>`
Comment thread
sdaitzman marked this conversation as resolved.
Outdated

.. contents::
:local:
:depth: 1

Abstract
********

This OEP establishes that design collateral contributed to the Open edX
platform must be contributed back into the shared Open edX Figma instance,
under open access for reuse, as a condition of the work being considered
complete. This applies to all design contributions to the platform. It applies
the same collaboration model the community already relies on for code to
design: a single source of truth, versioned work in branches, and maintainer
review before merge.

Following the precedent of prior *amnesty*-style process changes (e.g., the
:ref:`lint amnesty <OEP-34 Lint Amnesty>`),
the requirement applies going forward only: existing and legacy design files
are granted amnesty and are not required to be retroactively migrated to match
the structure or format of the standard reference design collateral, though
contributing them is strongly encouraged.

Motivation
**********

Historically, Open edX has had no shared source of truth for design resources.
Comment thread
sdaitzman marked this conversation as resolved.
Outdated
This created three recurring problems:

1. **Duplicated, siloed work.** Every provider with design capacity maintained
Comment thread
sdaitzman marked this conversation as resolved.
Outdated
separate, out-of-date versions of designs, and teams regularly recreated
designs from scratch for existing Open edX apps.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should you add a clause about how this impacts a11y concerns as well? And/or something about Paragon component custom overrides?

2. **Ambiguous intent.** Without a design source of truth, engineers could not
differentiate intentional design decisions from provider-specific Figma
quirks or accidents.
3. **High onboarding cost.** New design contributors had nowhere to start and
no history of decisions to build on, making community onboarding very
difficult.

The shared Open edX Figma instance now provides that source of truth, with
resources across nearly all platform areas and modern, reusable file structures
aligned to Paragon. However, **adoption is now the central risk to future Open
edX community shared/open design efforts.** Strong in-person interest has not
translated into active use of the shared instance, and some active
contributions have built on openly shared components without contributing their
new files back or making them available for open reuse.

Without a community-wide norm, a single provider effectively becomes the only
party keeping the files current, which is not sustainable. Codifying a
contribution expectation is the most direct lever to secure the long-term value
of the shared instance.
Comment on lines +71 to +82

@sarina sarina Aug 10, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These paragraphs feel kind of like it is a "blame and shame" on the community, and a bit too much detail as far as "motivation". The bullets above clearly explain the motivation for creating the shared instance, and I feel it'd be more compact and easy to align upon to just clearly state why we are doing this with no further text. If you wanted to say something like this but have it be concise, I'd maybe just say something like this:

Suggested change
The shared Open edX Figma instance now provides that source of truth, with
resources across nearly all platform areas and modern, reusable file structures
aligned to Paragon. However, **adoption is now the central risk to future Open
edX community shared/open design efforts.** Strong in-person interest has not
translated into active use of the shared instance, and some active
contributions have built on openly shared components without contributing their
new files back or making them available for open reuse.
Without a community-wide norm, a single provider effectively becomes the only
party keeping the files current, which is not sustainable. Codifying a
contribution expectation is the most direct lever to secure the long-term value
of the shared instance.
The shared Open edX Figma instance will provide that source of truth, with
resources across nearly all platform areas and modern, reusable file structures
aligned to Paragon. An expectation of continual contribution to this shared instance,
from all parties working on design collateral, mirrors the norms that the project
already has around code contributions.


Specification
*************

1. **Contribution requirement.** Any accepted product proposal that includes
design work MUST submit its design collateral to the shared Open edX Figma
Comment thread
sdaitzman marked this conversation as resolved.
Outdated
instance for the project to be considered complete. This SHOULD be captured

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
instance for the project to be considered complete. This SHOULD be captured
instance for the project to be considered complete. This will be captured

All-caps again I don't like, and replacing "should" with "will" seems reasonable since the idea of an OEP is a community agreement around how we will work together moving forward.

as an expectation in future design contributions.

- **Note**: the contribution model is actively maintained by the `Design
<https://openedx.atlassian.net/wiki/x/KwDR3w>`_ and `Frontend
<https://openedx.atlassian.net/wiki/x/9YYuu>`_ Working Groups, which will
allow for flexibility and openness in shared design collateral governance
going forward.

2. **Open access.** Contributed files MUST be openly accessible and reusable by

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
2. **Open access.** Contributed files MUST be openly accessible and reusable by
2. **Open access.** Contributed files must be openly accessible and reusable by

the community (viewable and exportable, under an open license) so that
anyone can reference or build on them, including for open-format export and
agentic prototyping.
3. **Workflow parity with code.** Contributions happen in branches within the
shared instance. Design maintainers review work-in-progress and provide

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reference to working with Figma branches that could be linked here for this phrase: branches within the shared instance

feedback before it is merged into the live product-area files, mirroring the
code-maintainer model. Frozen release files are published to the Figma
Community as part of the release (Build-Test-Release, or BTR) process.
Comment thread
sdaitzman marked this conversation as resolved.
Outdated
4. **Roles.** Each proposal and contribution stream has identified Author(s)
and an Arbiter, plus Design Maintainers (analogous to code maintainers)
responsible for reviewing and merging contributions.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems like a big process - how is this managed? Is there documentation for this? If I was a new contributor looking to contribute, this paragraph does not at all give me a starting point to engage in this process and honestly it reads as kind of intimidating/big.

5. **Communication and relay.** This expectation is relayed to current and
future contribution owners and providers, and at minimum current
contribution owners are asked to return files they worked on to the shared
instance.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm honestly not quite sure what your intention is with this bullet point - it is basically a reiteration of point 1


Backward Compatibility
**********************

This OEP applies to new and future work only: **no regressions.** Design work

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does "regression" mean in this context?

that predates this proposal is granted amnesty: providers are not required to
retroactively migrate legacy files into the shared instance, though doing so is
strongly encouraged. This mirrors the community's linting-amnesty precedent,
where new violations are disallowed while pre-existing ones are forgiven.

Rationale
*********

- **Proven model.** Code contributors already benefit from a shared source of

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Proven model.** Code contributors already benefit from a shared source of
- **Open-source as a priority.** The Open edX project is licensed under open-source licenses. Open-source means making software code public so anyone can view, use, modify, and share it. Making our design collateral similarly open-source enables community innovation on the same scale as the code itself.
- **Proven model.** Code contributors already benefit from a shared source of

Feel free to adjust, but I think we'd be remiss to not first and foremost call out that this is a natural extension of our existing open-source ethos.

truth, versioning, parallel work, central issue tracking, and a shared doc
site (Paragon). Extending the same practices to design is a natural, low-risk
step.
- **Lower barrier to entry.** A shared, openly licensed instance lets new
contributors start from existing work instead of an empty canvas,
accelerating onboarding.
- **Cleaner handoffs.** A design source of truth lets engineers distinguish
intentional decisions from accidents, reducing guesswork and rework.
- **Reduced duplication.** Shared, reusable atoms, molecules, and full views
cut redundant design spend across providers.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
cut redundant design spend across providers.
cut redundant design spend across providers.
- **Adherence to standards.** Ensuring that all designs use the same, reusable elements across the platform enables all components to natively follow accessibility, internationalization, and other standards.


Rejected Alternatives
Comment thread
sdaitzman marked this conversation as resolved.
Outdated
*********************

- **Voluntary adoption only.** Already attempted through direct and
working-group outreach. It produced enthusiasm but insufficient
follow-through, leaving maintenance concentrated in a single provider.
- **Any single provider as ongoing design arbiter.** Rejected. The goal is a
shared community norm and capability, not a gatekeeper. Time-boxed resourcing
to help providers through first-time heavy lifts, plus reusable training, is
a complementary effort, not a permanent arbitration role.

Open Questions
**************

- Identification of the Arbiter.
Comment thread
sdaitzman marked this conversation as resolved.
Outdated
- Exact licensing terms and access mechanics for contributed files.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm curious about this - I don't think code licenses will apply to design work, but I can dig a bit. For our available courses (eg https://github.com/openedx/training-courses) we use a Creative Commons license which may be more applicable here. Attribution-NonCommercial-ShareAlike 4.0 International would be my recommendation, it's what we've cleared with Axim legal previously.

- Whether the requirement applies to all design contributions or a defined
subset or tier.
- The support and resourcing model (e.g., a pilot and training) to help
providers meet the requirement.

Change History
**************

2026-07-27
Comment thread
sdaitzman marked this conversation as resolved.
Outdated
==========

* Converted the working draft to the OEP format and claimed the number OEP-70.

2026-07-14 - 2026-07-20
=======================

* Editing some details, asking for some community input.

2026-07-14
==========

* Initial draft synthesized from recent Shared Design Collateral syncs and the
community provider-adoption debrief.