Skip to main content

Add your description here

Project description

🐍 SteelSnakes

Python Version License Documentation

A powerful Python library for working with UK/European steel sections. Access comprehensive steel section properties with a unified, type-safe interface.

✨ Features

  • 18 Section Types - Universal beams, columns, channels, angles, hollow sections, bolts, and welds
  • Advanced Search - Powerful database search with comparison operators
  • Type Safety - Built with Pydantic models for complete type safety and validation
  • High Performance - Efficient JSON-based database with smart caching
  • Factory Pattern - Auto-detection of section types from designations
  • Complete Properties - All geometric and mass properties included

🚀 Quick Start

Installation

pip install steelsnakes

Basic Usage

from steelsnakes.core.sections.UK import UB, UC, PFC

# Create sections using simple designations
beam = UB("457x191x67")
column = UC("305x305x137")
channel = PFC("430x100x64")

# Access properties immediately
print(f"Beam moment of inertia: {beam.I_yy} cm⁴")
print(f"Column mass: {column.mass_per_metre} kg/m")
print(f"Channel shear center: {channel.e0} mm")

Advanced Search

from steelsnakes.core.sections.UK import get_database, SectionType

database = get_database()

# Find heavy beams
heavy_beams = database.search_sections(
    SectionType.UB, 
    mass_per_metre__gt=200
)

# Find deep channels
deep_channels = database.search_sections(
    SectionType.PFC,
    h__gt=300,
    b__gt=100
)

📚 Documentation

🔧 Section Types Supported

Category Types Count Standards
Universal Sections UB, UC, UBP 3 BS EN 10365
Channels PFC 1 BS EN 10365
Angles L_EQUAL, L_UNEQUAL, B2B variants 4 BS EN 10365
Hot Finished Hollow HFCHS, HFRHS, HFSHS, HFEHS 4 BS EN 10365
Cold Formed Hollow CFCHS, CFRHS, CFSHS 3 BS EN 10365
Connection Elements Bolts (8.8, 10.9), Welds 3 BS EN standards

🤝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

📄 License

This project is licensed under the MIT License - see the LICENSE.md file for details.

🙏 Acknowledgments

  • Steel section data sourced from official UK steel supplier tables
  • Conforms to BS EN 10365 and related UK/European standards
  • Built with modern Python best practices

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

steelsnakes-0.0.1a1.tar.gz (102.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

steelsnakes-0.0.1a1-py3-none-any.whl (116.5 kB view details)

Uploaded Python 3

File details

Details for the file steelsnakes-0.0.1a1.tar.gz.

File metadata

  • Download URL: steelsnakes-0.0.1a1.tar.gz
  • Upload date:
  • Size: 102.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for steelsnakes-0.0.1a1.tar.gz
Algorithm Hash digest
SHA256 8ef6d2906ffffa1a247350a35dc6e9aa3d53141944dc3cfc294fef8880316023
MD5 6cfc1ead187b7f3cc8d167e1bf46c5c1
BLAKE2b-256 194e4f53f0f4e44ff2a057985f2dccfb8b5102b05129f3cde400887d4d392511

See more details on using hashes here.

Provenance

The following attestation bundles were made for steelsnakes-0.0.1a1.tar.gz:

Publisher: python-publish.yml on waynemaranga/steelsnakes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file steelsnakes-0.0.1a1-py3-none-any.whl.

File metadata

  • Download URL: steelsnakes-0.0.1a1-py3-none-any.whl
  • Upload date:
  • Size: 116.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for steelsnakes-0.0.1a1-py3-none-any.whl
Algorithm Hash digest
SHA256 6a7d969f1726bdf09651e9a091995ca6ca48ec653a1b202f1119fd9e331f9d9f
MD5 af70d566182fb785998788daa72f48ee
BLAKE2b-256 2f0f18f6d615adde3ca9c67c32a9683107a34417ee195d36d618ed50cb3779a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for steelsnakes-0.0.1a1-py3-none-any.whl:

Publisher: python-publish.yml on waynemaranga/steelsnakes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page