Skip to main content

mondantic is a free and open source Python library for working with Monday boards. From each board it creates a Pydantic class definition whose fields are the board’s columns. You can then hydrate the class from a board, so that each row of the board becomes an instance of that dataclass.


For example:



Becomes


class TestBoard(BaseModel):
board_name: ClassVarastr] = 'Test Board'
board_id: ClassVarastr] = '1964053908'
name: OptionalaColumnValue] = Field(alias='name', default=None)
owner: OptionalaPeopleValue] = Field(alias='project_owner', default=None)
status: OptionalaStatusValue] = Field(alias='project_status', default=None)
due_date: OptionalaDateValue] = Field(alias='date', default=None)
priority: OptionalaStatusValue] = Field(alias='priority_1', default=None)
notes: OptionalaTextValue] = Field(alias='text9', default=None)
budget: OptionalaNumbersValue] = Field(alias='numbers', default=None)
files: OptionalaFileValue] = Field(alias='files_1', default=None)
timeline: OptionalaTimelineValue] = Field(alias='project_timeline', default=None)
last_updated: OptionalaLastUpdatedValue] = Field(alias='last_updated', default=None)

Advantages:



  • Allows developers to seamlessly use Monday data in downstream applications where Python is better suited

  • Static typing allows you to use autocompletion and type checking

  • Generating class definitions allows you to define a common set of interfaces for your team to work with


At present, you can install mondantic using pip install git+https://github.com/WEHI-ResearchComputing/mondantic.git, which will automatically resolve all dependencies.


Feel free to report issues and feature requests here on GitHub.

Be the first to reply!

Reply