python wrapper for simple-icons

Overview

Logo simpleicons

Code style: black

Use a wide-range of icons derived from the simple-icons repo in python. Go to their website for a full list of icons. The slug version must be used for the icon_name. The icons folder that accompanies the package has all the files. The package uses the latest verison of Simple Icons. It does not depend on the filesystem.

Installation

Install with pip install simpleicons. Keep in mind that this is a fairly large package due to all the icons.

Usage

General Usage

The API can then be used as follows, where [ICON SLUG] is replaced by a slug:

from simpleicons.all import icons

# Get a specific icon by its slug as:
icons.get('[ICON SLUG]')

# For example:
icon = icons.get('simpleicons')

print(icon.__dict__)

"""
{
    'title': 'Simple Icons',
    'slug': 'simpleicons',
    'hex': '111111',
    'source': 'https://simpleicons.org/',
    'svg': '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">...</svg>',
    'path': 'M12 12v-1.5c-2.484 ...',
    'guidelines': 'https://simpleicons.org/styleguide',
    'license': {
        type: '...',
        url: 'https://example.com/'
    }
}
"""

NOTE: The guidelines entry will be None if we do not yet have guidelines data for the icon.

NOTE: The license entry will be None if we do not yet have license data for the icon.

Alternatively you can import the needed icons individually, where [ICON SLUG] is replaced by a slug:

# Import a specific icon by its slug as:
from simpleicons.icons import si_[ICON_SLUG]

# For example:
from simpleicons.icons import si_simpleicons

Lastly, the icons object is also enumerable. This is useful if you want to do a computation on every icon:

from simpleicons.all import icons

for (key, icon in icons) {
    # do stuff
}

XML

The XML for each icon can be easily manipulated with either of two functions:

Icon.get_xml(**attrs) -> ElementTree

from simpleicons.icons import si_simpleicons

# blue logo, adds the fill attribute: <svg fill="blue"></svg>
si_simpleicons.get_xml(fill="blue")

Icon.get_xml_bytes(**attrs) -> bytes

from simpleicons.icons import si_simpleicons

si_simpleicons.get_xml_bytes(fill="blue")

Image

In order to use this, you must install the extras: pip install -e simpleicons[imaging] . Icons can be converted to PIL Images with icon_to_image(icon_xml: bytes, bg: int=0xffffff, scale: Tuple[int, int]=(1, 1)) -> Image:

from simpleicons.icons import si_simpleicons
from simpleicons.image import icon_to_image

xml_bytes = si_simpleicons.get_xml_bytes(fill="blue")

# black background and 5x scale
img = icon_to_image(xml_bytes, bg=0x000000, scale=(5, 5))

# manipulate PIL Image
img.putalpha(32)
img.save("simpleicons_blue.png")
Comments
  • Make svglib/reportlab/pillow extra dependencies?

    Make svglib/reportlab/pillow extra dependencies?

    Just discovered this nice tool! If I see that correctly svglib, reportlab and pillow are only used when converting to bitmaps, right? As these are pretty heavy dependencies (I know because I'm the original author of svglib ;) one might consider declaring them "extra" dependencies for pip. But I'm not familiar with poetry to know if it supports that.

    opened by deeplook 3
  • get_xml(), get_xml_bytes() and get_str() not working

    get_xml(), get_xml_bytes() and get_str() not working

    It seems like the three functions get_xml(), get_xml_bytes() and get_str() aren't working.

    Minimal reproducible example:

    from simpleicons.icon_xml import get_xml
    
    github_icon = get_xml("github")
    

    Throwing this error:

    Traceback (most recent call last):
      File "/home/fbernhart/.config/JetBrains/PyCharmCE2021.1/scratches/scratch_4.py", line 3, in <module>
        github_icon = get_xml("github")
      File "/mnt/Daten/Python/Python_Divers/venv/lib/python3.9/site-packages/simpleicons/icon_xml.py", line 41, in get_xml
        tree = get_et(icon_name)
      File "/mnt/Daten/Python/Python_Divers/venv/lib/python3.9/site-packages/simpleicons/icon_xml.py", line 28, in get_et
        return ET.parse(f"simpleicons/icons/{icon_name.lower()}.svg")
      File "/usr/local/lib/python3.9/xml/etree/ElementTree.py", line 1229, in parse
        tree.parse(source, parser)
      File "/usr/local/lib/python3.9/xml/etree/ElementTree.py", line 569, in parse
        source = open(source, "rb")
    FileNotFoundError: [Errno 2] No such file or directory: 'simpleicons/icons/github.svg'
    
    Process finished with exit code 1
    

    The same happens for

    from simpleicons.icon_xml import get_xml_bytes
    
    github_bytes = get_xml_bytes("github")
    

    and

    from simpleicons.icon_xml import get_str
    
    github_str = get_str("github")
    

    Looking at the icon_xml.py file, the error happens because you're trying to access simpleicons/icons/github.svg. This might be working if you're testing your code locally and have your tests in the same directory, but it doesn't work while installing simpleicons as a package through pip. Because simpleicons/icons/github.svg isn't located inside the current working directory (from where the script is called).

    I'm not very familiar with opening a file from within a package, but I gave it a few tries and came up with this solution. It should work by replacing

    return ET.parse(f"simpleicons/icons/{icon_name.lower()}.svg")
    

    with

        import sys
        package_path = sys.modules[__package__].__path__[0]
    
        return ET.parse(f"{package_path}/icons/{icon_name.lower()}.svg")
    

    the same for the get_str() function.

    But let me know if you've got a better idea. 😊

    opened by fbernhart 2
  • chore(deps): bump gitpython from 3.1.18 to 3.1.19

    chore(deps): bump gitpython from 3.1.18 to 3.1.19

    Bumps gitpython from 3.1.18 to 3.1.19.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Configure Renovate

    Configure Renovate

    WhiteSource Renovate

    Welcome to Renovate! This is an onboarding PR to help you understand and configure settings before regular Pull Requests begin.

    🚦 To activate Renovate, merge this Pull Request. To disable Renovate, simply close this Pull Request unmerged.


    Detected Package Files

    • .github/workflows/auto-update.yml (github-actions)
    • .github/workflows/ci.yml (github-actions)
    • pyproject.toml (poetry)

    Configuration Summary

    Based on the default config's presets, Renovate will:

    • Start dependency updates only once this onboarding PR is merged
    • Separate major versions of dependencies into individual branches/PRs
    • Do not separate patch and minor upgrades into separate PRs for the same dependency
    • Upgrade to unstable versions only if the existing version is unstable
    • Raise PRs immediately (after branch is created)
    • If semantic commits detected, use semantic commit type fix for dependencies and chore for all others
    • Keep existing branches updated even when not scheduled
    • Disable automerging feature - wait for humans to merge all PRs
    • Ignore node_modules, bower_components, vendor and various test/tests directories
    • Autodetect whether to pin dependencies or maintain ranges
    • Rate limit PR creation to a maximum of two per hour
    • Limit to maximum 20 open PRs at any time
    • Group known monorepo packages together
    • Use curated list of recommended non-monorepo package groupings
    • Ignore spring cloud 1.x releases
    • Ignore http4s digest-based 1.x milestones
    • Use node versioning for @types/node
    • Limit concurrent requests to reduce load on Repology servers until we can fix this properly, see issue 10133

    🔡 Would you like to change the way Renovate is upgrading your dependencies? Simply edit the renovate.json in this branch with your custom config and the list of Pull Requests in the "What to Expect" section below will be updated the next time Renovate runs.


    What to Expect

    It looks like your repository dependencies are already up-to-date and no Pull Requests will be necessary right away.


    ❓ Got questions? Check out Renovate's Docs, particularly the Getting Started section. If you need any further assistance then you can also request help here.


    This PR has been generated by WhiteSource Renovate. View repository job log here.

    opened by renovate[bot] 1
  • chore(deps-dev): bump black from 21.6b0 to 21.7b0

    chore(deps-dev): bump black from 21.6b0 to 21.7b0

    Bumps black from 21.6b0 to 21.7b0.

    Release notes

    Sourced from black's releases.

    21.7b0

    Black

    • Configuration files using TOML features higher than spec v0.5.0 are now supported (#2301)
    • Add primer support and test for code piped into black via STDIN (#2315)
    • Fix internal error when FORCE_OPTIONAL_PARENTHESES feature is enabled (#2332)
    • Accept empty stdin (#2346)
    • Provide a more useful error when parsing fails during AST safety checks (#2304)

    Docker

    • Add new latest_release tag automation to follow latest black release on docker images (#2374)

    Integrations

    • The vim plugin now searches upwards from the directory containing the current buffer instead of the current working directory for pyproject.toml. (#1871)
    • The vim plugin now reads the correct string normalization option in pyproject.toml (#1869)
    • The vim plugin no longer crashes Black when there's boolean values in pyproject.toml (#1869)
    Changelog

    Sourced from black's changelog.

    21.7b0

    Black

    • Configuration files using TOML features higher than spec v0.5.0 are now supported (#2301)
    • Add primer support and test for code piped into black via STDIN (#2315)
    • Fix internal error when FORCE_OPTIONAL_PARENTHESES feature is enabled (#2332)
    • Accept empty stdin (#2346)
    • Provide a more useful error when parsing fails during AST safety checks (#2304)

    Docker

    • Add new latest_release tag automation to follow latest black release on docker images (#2374)

    Integrations

    • The vim plugin now searches upwards from the directory containing the current buffer instead of the current working directory for pyproject.toml. (#1871)
    • The vim plugin now reads the correct string normalization option in pyproject.toml (#1869)
    • The vim plugin no longer crashes Black when there's boolean values in pyproject.toml (#1869)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • chore(deps): bump pillow from 8.2.0 to 8.3.1

    chore(deps): bump pillow from 8.2.0 to 8.3.1

    Bumps pillow from 8.2.0 to 8.3.1.

    Release notes

    Sourced from pillow's releases.

    8.3.1

    https://pillow.readthedocs.io/en/stable/releasenotes/8.3.1.html

    Changes

    8.3.0

    https://pillow.readthedocs.io/en/stable/releasenotes/8.3.0.html

    Changes

    ... (truncated)

    Changelog

    Sourced from pillow's changelog.

    8.3.1 (2021-07-06)

    • Catch OSError when checking if fp is sys.stdout #5585 [radarhere]

    • Handle removing orientation from alternate types of EXIF data #5584 [radarhere]

    • Make Image.array take optional dtype argument #5572 [t-vi, radarhere]

    8.3.0 (2021-07-01)

    • Use snprintf instead of sprintf. CVE-2021-34552 #5567 [radarhere]

    • Limit TIFF strip size when saving with LibTIFF #5514 [kmilos]

    • Allow ICNS save on all operating systems #4526 [baletu, radarhere, newpanjing, hugovk]

    • De-zigzag JPEG's DQT when loading; deprecate convert_dict_qtables #4989 [gofr, radarhere]

    • Replaced xml.etree.ElementTree #5565 [radarhere]

    • Moved CVE image to pillow-depends #5561 [radarhere]

    • Added tag data for IFD groups #5554 [radarhere]

    • Improved ImagePalette #5552 [radarhere]

    • Add DDS saving #5402 [radarhere]

    • Improved getxmp() #5455 [radarhere]

    • Convert to float for comparison with float in IFDRational eq #5412 [radarhere]

    • Allow getexif() to access TIFF tag_v2 data #5416 [radarhere]

    ... (truncated)

    Commits
    • 92933b8 8.3.1 version bump
    • 31bd320 Added release notes for 8.3.1
    • afca674 Update CHANGES.rst [ci skip]
    • c712d68 Catch OSError when checking if fp is sys.stdout
    • 9b4fff8 Handle removing orientation from alternate types of EXIF data
    • 76037e5 Use numpy.array with dtype
    • 2ebb695 Use numpy.float64 instead of numpy.float to avoid deprecation (thank you rada...
    • 7e8cefa Make Image.array take optional dtype argument
    • 51591a8 8.3.0 version bump
    • 8041c04 Update CHANGES.rst [ci skip]
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • chore(deps): bump pillow from 8.2.0 to 8.3.0

    chore(deps): bump pillow from 8.2.0 to 8.3.0

    Bumps pillow from 8.2.0 to 8.3.0.

    Release notes

    Sourced from pillow's releases.

    8.3.0

    https://pillow.readthedocs.io/en/stable/releasenotes/8.3.0.html

    Changes

    ... (truncated)

    Changelog

    Sourced from pillow's changelog.

    8.3.0 (2021-07-01)

    • Use snprintf instead of sprintf. CVE-2021-34552 #5567 [radarhere]

    • Limit TIFF strip size when saving with LibTIFF #5514 [kmilos]

    • Allow ICNS save on all operating systems #4526 [baletu, radarhere, newpanjing, hugovk]

    • De-zigzag JPEG's DQT when loading; deprecate convert_dict_qtables #4989 [gofr, radarhere]

    • Replaced xml.etree.ElementTree #5565 [radarhere]

    • Moved CVE image to pillow-depends #5561 [radarhere]

    • Added tag data for IFD groups #5554 [radarhere]

    • Improved ImagePalette #5552 [radarhere]

    • Add DDS saving #5402 [radarhere]

    • Improved getxmp() #5455 [radarhere]

    • Convert to float for comparison with float in IFDRational eq #5412 [radarhere]

    • Allow getexif() to access TIFF tag_v2 data #5416 [radarhere]

    • Read FITS image mode and size #5405 [radarhere]

    • Merge parallel horizontal edges in ImagingDrawPolygon #5347 [radarhere, hrdrq]

    • Use transparency behind first GIF frame and when disposing to background #5557 [radarhere, zewt]

    • Avoid unstable nature of qsort in Quant.c #5367 [radarhere]

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Reading _data/simple_icons.json instead of putting icons in all.py

    Reading _data/simple_icons.json instead of putting icons in all.py

    Looking through your package I was wondering why all the icons data is stored inside the all.py file and at the same time the same information is available as .json, pulled from the original Simple Icons project.

    Wouldn't it be easier to just read the _data/simple_icons.json file and then extract the needed information from there? This would as well avoid having the same data saved twice, which seems quite redundant in my opinion.

    I'm looking forward to hear your opinion. :)

    opened by fbernhart 1
  • chore(deps): update dependency poethepoet to ^0.17.0

    chore(deps): update dependency poethepoet to ^0.17.0

    Mend Renovate

    This PR contains the following updates:

    | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | poethepoet | ^0.16.0 -> ^0.17.0 | age | adoption | passing | confidence |


    Release Notes

    nat-n/poethepoet

    v0.17.1

    Compare Source

    Fixes

    • Fix handling of Keyboardinterrupt when running a task on windows #​42

    Full Changelog: https://github.com/nat-n/poethepoet/compare/v0.17.0...v0.17.1

    v0.17.0

    Compare Source

    Enhancements

    • Support for interpolating env vars into task arg default values (#​3c994684)
    • Support providing a cwd for tasks included from another file #​110
    • Add new switch task type for running different versions of a task depending on the result of a control task #​83

    Fixes

    • Set PYTHONIOENCODING to utf-8 before invoking poetry env info -p #​112

    New Contributors

    Full Changelog: https://github.com/nat-n/poethepoet/compare/v0.16.5...v0.17.0

    v0.16.5

    Compare Source

    Fixes

    New Contributors

    Full Changelog: https://github.com/nat-n/poethepoet/compare/v0.16.4...v0.16.5

    v0.16.4

    Compare Source

    Fixes

    Full Changelog: https://github.com/nat-n/poethepoet/compare/v0.16.3...v0.16.4

    v0.16.3

    Compare Source

    Fixes

    New Contributors

    Full Changelog: https://github.com/nat-n/poethepoet/compare/v0.16.2...v0.16.3

    v0.16.2

    Compare Source

    Fixes

    • Revert all changes in v0.16.1 to address bug reported in #​88

    Full Changelog: https://github.com/nat-n/poethepoet/compare/v.0.16.1...v0.16.2

    v0.16.1

    Compare Source

    Enhancements

    • When poetry virtualenv creation is disabled via an environment variable and no poetry virtualenv exists then don't try to execute tasks with poetry run #​65

    Fixes

    • Fixed issue when running poe from inside a poetry env with the --root global option targeting another project, the target project env was not always used.

    Full Changelog: https://github.com/nat-n/poethepoet/compare/v0.16.0...v0.16.1


    Configuration

    📅 Schedule: Branch creation - "before 3am on Monday" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, check this box

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
  • chore(deps): update snok/install-poetry action to v1.3.3

    chore(deps): update snok/install-poetry action to v1.3.3

    Mend Renovate

    This PR contains the following updates:

    | Package | Type | Update | Change | |---|---|---|---| | snok/install-poetry | action | patch | v1.3.2 -> v1.3.3 |


    Release Notes

    snok/install-poetry

    v1.3.3

    Compare Source

    What's Changed

    Version v1.3.2 broke installations on Windows for Python version 3.7 and 3.8, because of an upstream issue in the official Poetry installer. This version reverts to using an older install script on Windows runners, until the issue is resolved.

    Full Changelog: https://github.com/snok/install-poetry/compare/v1...v1.3.3


    Configuration

    📅 Schedule: Branch creation - "before 3am on Monday" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, click this checkbox.

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
  • chore(deps): update snok/install-poetry action to v1.3.2

    chore(deps): update snok/install-poetry action to v1.3.2

    Mend Renovate

    This PR contains the following updates:

    | Package | Type | Update | Change | |---|---|---|---| | snok/install-poetry | action | patch | v1.3.1 -> v1.3.2 |


    Release Notes

    snok/install-poetry

    v1.3.2

    Compare Source

    What's Changed

    There should be no changes to functionality in this release.

    New Contributors

    Full Changelog: https://github.com/snok/install-poetry/compare/v1...v1.3.2


    Configuration

    📅 Schedule: Branch creation - "before 3am on Monday" (UTC), Automerge - At any time (no schedule defined).

    🚦 Automerge: Enabled.

    Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

    🔕 Ignore: Close this PR and you won't be reminded about this update again.


    • [ ] If you want to rebase/retry this PR, click this checkbox.

    This PR has been generated by Mend Renovate. View repository job log here.

    opened by renovate[bot] 0
  • Dependency Dashboard

    Dependency Dashboard

    This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

    This repository currently has no open or pending branches.

    Detected dependencies

    github-actions
    .github/workflows/auto-update.yml
    • actions/checkout v3
    • oleksiyrudenko/gha-git-credentials v2-latest
    • actions/setup-python v4
    • snok/install-poetry v1.3.3
    • actions/cache v3
    .github/workflows/ci.yml
    • actions/checkout v3
    • actions/setup-python v4
    • snok/install-poetry v1.3.3
    • actions/cache v3
    poetry
    pyproject.toml
    • reportlab ^3.6.3
    • Pillow ^9.2.0
    • svglib ^1.1.0
    • semantic-version ^2.8.5
    • requests ^2.26.0
    • GitPython ^3.1.24
    • pytest ^7.0.0
    • poethepoet ^0.17.0
    • pre-commit ^2.15.0
    • Pillow ^9.2.0
    • svglib ^1.1.0
    • reportlab ^3.5.68

    • [ ] Check this box to trigger a request for Renovate to run again on this repository
    opened by renovate[bot] 0
Releases(7.21.0)
Owner
Sachin Raja
React, TypeScript enjoyer. Interested in speed ⚡
Sachin Raja
An ongoing curated list of OS X best applications, libraries, frameworks and tools to help developers set up their macOS Laptop.

macOS Development Setup Welcome to MacOS Local Development & Setup. An ongoing curated list of OS X best applications, libraries, frameworks and tools

Paul Veillard 3 Apr 03, 2022
Python solutions to solve practical business problems.

Python Business Analytics Also instead of "watching" you can join the link-letter, it's already being sent out to about 90 people and you are free to

Derek Snow 357 Dec 26, 2022
This is a repository for "100 days of code challenge" projects. You can reach all projects from beginner to professional which are written in Python.

100 Days of Code It's a challenge that aims to gain code practice and enhance programming knowledge. Day #1 Create a Band Name Generator It's actually

SelenNB 2 May 12, 2022
Read write method - Read files in various types of formats

一个关于所有格式文件读取的方法 1。 问题描述: 各种各样的文件格式,读写操作非常的麻烦,能够有一种方法,可以整合所有格式的文件,方便用户进行读取和写入。 2

2 Jan 26, 2022
SCTYMN is a GitHub repository that includes some simple scripts(currently only python scripts) that can be useful.

Simple Codes That You Might Need SCTYMN is a GitHub repository that includes some simple scripts(currently only python scripts) that can be useful. In

CodeWriter21 2 Jan 21, 2022
Material for the ros2 crash course

Material for the ros2 crash course

Emmanuel Dean 1 Jan 22, 2022
This is a small project written to help build documentation for projects in less time.

Documentation-Builder This is a small project written to help build documentation for projects in less time. About This project builds documentation f

Tom Jebbo 2 Jan 17, 2022
SamrSearch - SamrSearch can get user info and group info with MS-SAMR

SamrSearch SamrSearch can get user info and group info with MS-SAMR.like net use

knight 10 Oct 06, 2022
My Sublime Text theme

rsms sublime text theme Install: cd path/to/your/sublime/packages git clone https://github.com/rsms/sublime-theme.git rsms-theme You'll also need the

Rasmus 166 Jan 04, 2023
Demonstration that AWS IAM policy evaluation docs are incorrect

The flowchart from the AWS IAM policy evaluation documentation page, as of 2021-09-12, and dating back to at least 2018-12-27, is the following: The f

Ben Kehoe 15 Oct 21, 2022
AiiDA plugin for the HyperQueue metascheduler.

aiida-hyperqueue WARNING: This plugin is still in heavy development. Expect bugs to pop up and the API to change. AiiDA plugin for the HyperQueue meta

AiiDA team 3 Jun 19, 2022
A Python validator for SHACL

pySHACL A Python validator for SHACL. This is a pure Python module which allows for the validation of RDF graphs against Shapes Constraint Language (S

RDFLib 187 Dec 29, 2022
Que es S4K Builder?, Fácil un constructor de tokens grabbers con muchas opciones, como BTC Miner, Clipper, shutdown PC, Y más! Disfrute el proyecto. <3

S4K Builder Este script Python 3 de código abierto es un constructor del muy popular registrador de tokens que está en [mi GitHub] (https://github.com

SadicX 1 Oct 22, 2021
k3heap is a binary min heap implemented with reference

k3heap k3heap is a binary min heap implemented with reference k3heap is a component of pykit3 project: a python3 toolkit set. In this module RefHeap i

pykit3 1 Nov 13, 2021
Jupyter Notebooks as Markdown Documents, Julia, Python or R scripts

Have you always wished Jupyter notebooks were plain text documents? Wished you could edit them in your favorite IDE? And get clear and meaningful diff

Marc Wouts 5.7k Jan 04, 2023
The tutorial is a collection of many other resources and my own notes

Why we need CTC? --- looking back on history 1.1. About CRNN 1.2. from Cross Entropy Loss to CTC Loss Details about CTC 2.1. intuition: forward algor

手写AI 7 Sep 19, 2022
Generate modern Python clients from OpenAPI

openapi-python-client Generate modern Python clients from OpenAPI 3.x documents. This generator does not support OpenAPI 2.x FKA Swagger. If you need

555 Jan 02, 2023
Your Project with Great Documentation.

Read Latest Documentation - Browse GitHub Code Repository The only thing worse than documentation never written, is documentation written but never di

Timothy Edmund Crosley 809 Dec 28, 2022
Build documentation in multiple repos into one site.

mkdocs-multirepo-plugin Build documentation in multiple repos into one site. Setup Install plugin using pip: pip install git+https://github.com/jdoiro

Joseph Doiron 47 Dec 28, 2022
Quilt is a self-organizing data hub for S3

Quilt is a self-organizing data hub Python Quick start, tutorials If you have Python and an S3 bucket, you're ready to create versioned datasets with

Quilt Data 1.2k Dec 30, 2022