Skip to main content
mento_github

An intuitive tool for structural engineers to design concrete elements efficiently.

Tests Docs codecov PyPI Python versions License: MIT DOI Ruff

This repository provides a comprehensive package for the design and structural analysis of concrete sections, beams and columns. The package adheres to multiple design codes, ensuring broad applicability in structural engineering projects.

Installation

pip install mento

Requires Python 3.12 or newer.

Features

  • Check and design for flexure and shear of:
    • Rectangular Concrete Beam
    • Rectangular One way Slab
  • Unit-sensitive design, allowing users to input variables with their respective units for accurate calculations.
  • Interactive usage in Jupyter Notebooks, allowing users to create custom calculations using package modules.
  • Results are presented in markdown format within the notebook and as pandas DataFrames for easy handling of multiple checks.
  • Ability to generate detailed calculation reports in Word.
  • Comprehensive testing for design code compliance, including ACI 318-19, EN 1992-2004, and CIRSOC 201-2025.

Where mento fits

mento designs and verifies structural members against a design code, and documents the result: given a section, its materials and a set of load combinations, it returns the required reinforcement, the demand-to-capacity ratios, and a calculation report you can hand to a reviewer.

mento is also, as far as we know, the only open source package that implements CIRSOC 201-2025, the Argentinian concrete design standard.

Using mento at your company?

mento is free and open-source under MIT. If your team wants help going further, we offer a few things on top:

  • Team onboarding — short remote sessions to get your engineers productive with Python, Jupyter, VS Code and Git, using mento as the starting point.
  • Custom tools — building specific workflows on top of mento (custom reports, integrations with Revit / ETABS / Robot, batch design tools, internal company libraries).
  • Sponsored features — if your firm needs a specific element type, design code, or check that's on the roadmap (or not), we can scope it as paid work and contribute it back.

If any of that is useful for your team, fill out this form and we'll follow up.

Not looking for anything? A ⭐ on the repo or feedback in Discussions is also genuinely appreciated.

Roadmap

The development is structured around key milestones, with ongoing tasks that aim to enhance functionality and compliance with design standards:

  • Rectangular concrete beam section check and design for ACI 318-19 and CIRSOC 201-25.
  • Rectangular concrete beam section check and design for EN 1992-2004.
  • One way concrete slab and footing check and design for ACI 318-19 and CIRSOC 201-25.
  • One way concrete slab and footing check and design for EN 1992-2004.
  • Shear wall shear check and design for ACI 318-19 and CIRSOC 201-25.
  • Shear wall shear check and design for EN 1992-2004. (in progress)
  • Slab shear punching check and design for ACI 318-19 and CIRSOC 201-25. (in progress)
  • Slab shear punching check and design for EN 1992-2004. (in progress)

Each milestone incorporates rigorous testing and continuous integration to ensure code quality and reliability.

Documentation

You can read the official documentation in this link: Mento Docs

Contributing

We welcome contributions from the community to expand and enhance the package. Start with the contributing guide, then look through the open issues — those labelled good first issue are a good entry point. Every calculation contributed to mento is validated against a published worked example before it is merged; the guide explains how.

Participation in this project is governed by our Code of Conduct.

Disclaimer

mento is a tool to assist structural engineers, not a replacement for engineering judgement. Results must be reviewed and accepted by a qualified engineer who takes responsibility for the design. The software is provided "as is", without warranty of any kind, and the authors accept no liability for its use. Verify the output against the applicable design code before relying on it for any real structure.

Citing mento

If mento supports your research or professional work, cite it with the DOI 10.5281/zenodo.21956634, which always resolves to the latest release. Citation metadata is in CITATION.cff, and GitHub's "Cite this repository" button will format it for you. The citing guide explains which version to cite and gives a BibTeX entry.

License

This project is licensed under the MIT License. See LICENSE for the full text.

Release files for mento 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mento 1.2.0
File Size Uploaded
mento-1.2.0.tar.gz 315.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mento 1.2.0
File Interpreter ABI Platform
mento-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 521.6 kB

Release files / mento-1.2.0.tar.gz

Download URL mento-1.2.0.tar.gz
Size 315.9 kB
Tags Source
SHA-256 checksum
How to use checksums
8ec8b361be92220b4af1672702052c7a376d07284c8836309739d2044e218dc0
BLAKE2b-256 checksum
How to use checksums
d196773eaa3ab7d8f044577426667d7f89be16d3a45aa1e5cc85da81b35c2336
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.

Transparency log

Release files / mento-1.2.0-py3-none-any.whl

Download URL mento-1.2.0-py3-none-any.whl
Size 205.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
333632c31a991b0f61c89a3ec7295bd7eb7acd9caeefd0c33cfef583c01cf6f5
BLAKE2b-256 checksum
How to use checksums
4b2dd621b95919ebadc8c3b7f49f5d29644dcd7f51ce95c8decc6e2c6a46ed55
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page