Skip to content

Django email builder  #8768

@octavioamu

Description

@octavioamu

User Story

Email epic: https://www.notion.so/gitcoin/Gitcoin-Email-Accountability-06ed4107dd654488b562fb7b9d08e386

We need more control on the content of the emails in a WYSWYG builder way, not only for static data, also for dynamic blocks

We still want to put most of the mkt emails on Mautic but we need more control on the emails that are not send by Mautic, because dynamic data or transactional emails.

Agreements:

  • We need a django builder for mails, but most of the packages are bad so there is a oss project grapejs and seems great.
  • Dynamic data, email tokens will be created so on the admin email creator can be used like {{upcoming_hackathons}}
  • The system doesn't create email, it create TEMPLATES that assigned to a tag will generate the email. Example: on the UI you will have a dropdown "email:" with options like "Daily_email" "Monthly_email" .... so means if you click Daily and create a template, next day email will use that template, next time you want to change the daily email design/ content you can just get in and edit (with grapejs) on the admin.
  • 2 kind of queries, general queries and per user queries, first will going to focus on the "general queries" like upcoming hackathons, last quest, etc. per user queries will be investigated later (we need to check if is doable)
  • Future code need to be Dry so we can reuse it to create landings on the future.
  • Integrate with mautic UTM so mautic can still track the opening click bouncing etc.
  • Test email, add a field to input an email and send button so you can test how it actually looks like in the email.

Resources
https://github.com/gitcoinco/web/pull/6728/files
https://grapesjs.com/
https://github.com/artf/grapesjs
https://mjml.io/
https://github.com/gulliverbms/django_grapesjs
https://pypi.org/project/django-grapesjs/

Why Is this Needed

Summary:
We have a poor control on our django email system.

Description

Type:

Current Behavior

no builder

Expected Behavior

Builder and mkt happy

Definition of Done

Data Requirements

comment: # (How will we measure the success of this feature? What kind of tracking is needed for this feature (clicks, impressions, flag)?)

Additional Information

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions