Skip to content

MalangBvp/malang

Repository files navigation



Site > Updation

Events

Managing Upcoming Events

  • Go to /resrc/data/events.json and add events like:
[ 
  {
    "name": "EVENT NAME",
    "date": "EVENT DATE",
    "location": "EVENT VENUE",
    "description": "EVENT DESCRIPTION",
    "image": "[/resrc/images/misc/IMAGE] || IMAGE URL",
    "buttons": [
      {
        "text": "ALTERNATE BUTTON TEXT",
        "link": "REDIRECTION LINK",
        "focus": false
      },
      {
        "text": "PRIMARY BUTTON TEXT",
        "link": "REDIRECTION LINK",
        "focus": true
      }
    ]
  }
]

Managing Past Events

  • Go to /resrc/data/timeline.json and add events like:
{
    "title": "EVENT TITLE",
    "date": "EVENT DATE",
    "description": "EVENT DESCRIPTION",
    "images": [
      list of paths of images to be added
    ]
  }

Galleries

  • Go to /resrc/data/artworks.json and add artwork like:
"0": {
        "title": "ARTWORK TITLE",
        "artist": "ARTIST'S NAME",
        "type": "ARTWORK TYPE"
    }

Caution

Artwork image must be in .webp format.

The JSON key must be unique, continued series of existing keys and must match the image name.

Note

Don't forget to add artwork image in resrc\images\artworks folder.

Update the artwork count in src/scripts/gallery.js:

        // artwork count and photograph count
        const total = mode === 'artworks' ? 68 : 42;
                                            ^
  • Go to /resrc/data/photographs.json and add artwork like:
"0": {
        "title": "PHOTOGRAPH TITLE",
        "artist": "PHOTOGRAPHER'S NAME",
        "type": "PHOTOGRAPH TYPE"
    }

Caution

Phogograph must be in .webp format.

The JSON key must be unique, continued series of existing keys and must match the image name.

Note

Don't forget to add photograph in resrc\images\photographs folder.

Update the photograph count in src/scripts/gallery.js:

        // artwork count and photograph count
        const total = mode === 'artworks' ? 68 : 42;
                                                  ^

Malang Tools

Tool CSV Requirements How to use?
Certificate Tool name Read
Contact Tool contact no. Read
Mail Tool name, email Read

Certificate Tool

GitHub Link

For creating bulk certificated with custom names and font-style.

# sample configuration -----------------------------------------------------------------------
output_dir = "Certificate-tool/certificates"
# Certificate template (PNG/JPG)
template_path = "Certificate-tool/certificate_template.jpg"
#font style
pdfmetrics.registerFont(TTFont('NoticiaText', 'Certificate-tool/NoticiaText-BoldItalic.ttf'))
# size
PAGE_WIDTH, PAGE_HEIGHT = landscape(A4)
# position of the name on the certificate
NAME_X = PAGE_WIDTH / 1.6
NAME_Y = PAGE_HEIGHT / 1.8
FONT_SIZE = 42
data="Mail-tool/shortlisted.csv"
#--------------------------------------------------------------------------------------------
  • output_dir: path of directory where certificates are saved
  • template_path: path of certificate template.

Caution

Template must be .png or .jpg.

  • Store .ttf file in Certificate-tool/ for custom font and refer it here
#font style
pdfmetrics.registerFont(TTFont('NoticiaText', 'Certificate-tool/NoticiaText-BoldItalic.ttf'))
  • Set NAME_X and NAME_Y for position of name on the certificate.
  • FONT_SIZE: Sets the size of name text.
  • data: Is the path to the file containing names.

Contact Tool

GitHub Link

For saving bulk contacts to Google contacts, generally useful for adding multiple people to Whatsapp group.

Setup
  1. Install dependencies
pip install google-auth google-auth-oauthlib google-auth-httplib2 google-api-python-client
  1. Enable Google People API
  • Create a project in Google Cloud Console.

  • Enable Google People API.

  • Create OAuth credentials (Desktop app) and replace credentials.json.

Configurations (edit in add_contacts.py)
# configurations ---------------------------------------------------
contacts_file = 'Contact-tool/contacts.csv'   # CSV file path
prefix = "malang2025@"                        # Contact name prefix
#-------------------------------------------------------------------
  • contacts.csv → one phone number per line, like:
8279843949,
1234567890,
  • Contacts will be created as: malang2025@1, malang2025@2, etc.

Mail Tool

GitHub Link

Used for sending bulk emails with customised names, template and attachments.

Note

email_template.html is the customizable design template of the email to be sent.

Important

Always use media like images, posters, etc. from this repo using links like:

https://raw.githubusercontent.com/MalangBvp/media/refs/heads/main/images/malang.webp
# ------------- sample configurations --------------
subject = "Malang: Welcome to the club! 🥳"
csv_path = "Mail-tool/shortlisted.csv"
attachment_dir = "Certificate-tool/certificates"
#---------------------------------------------------
  • subject: Subject of the emails to be sent.
  • csv_path: Path of file that contains names and emails.
  • attachment_dir: Path of directory where attachments are stored.

Broadcasts

Newsletter Emails

Send E-mails to newsletter subscribers via Mail Tool.

Releases

No releases published

Packages

 
 
 

Contributors