Hi everyone,

I’d like to share a project I’ve been working on recently, Plemmy! Plemmy allows you to interact with any Lemmy instance using Python and the LemmyHttp API.

Currently all LemmyHttp functions (POST, PUT, GET) have been implemented.

Feel free to provide feedback or contribute in any way!

  • clawlor@programming.dev
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    create_form(locals()) is so elegant! Each API endpoint is almost entirely described by the method signature alone, about as DRY as can be. Very clever (the good kind!)

    • travis@lemmy.blueOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I like the idea of a Reddit-Lemmy cross-poster! It should make transitioning to Lemmy a bit easier for those used to seeing more Reddit-like content.

  • bugsmith@programming.dev
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    Just checked it out. Big fan of the simplicity you’ve kept with this. Do you think it would be worth adding in some kind of rate limiting functionality?

    • travis@lemmy.blueOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 year ago

      I believe rate limits (messages, images, sign-ups etc.) can be defined for a site 1.) on creation using the create_site function and 2.) editing a site using the edit_site function.

      • bugsmith@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I think that is if you are setting the rate limit for a new instance (which I suppose could only be useful when automating instance setup? Otherwise, I don’t see a purpose for those endpoints).

        What I meant was rate limiting functionality client side. So you can respect the rate limit of whatever instance you are interacting with. Either some kind of token bucket or exponential backoff.