Python wrapper for the Mastodon ( https://github.com/mastodon/mastodon/ ) API.
Go to file
halcy d2f76239e1 nit 2022-12-01 01:53:24 +02:00
.circleci Disable 3.6 test (missing crypto module) 2022-12-01 00:18:12 +02:00
docs Clean up some docs stuff 2022-12-01 01:51:49 +02:00
mastodon Finish moving code out into smaller files 2022-12-01 01:39:08 +02:00
tests More moving functions out 2022-12-01 00:11:17 +02:00
.gitignore Update .gitignore to ignore pytest cache 2019-10-11 22:08:52 +02:00
CHANGELOG.rst Finish moving code out into smaller files 2022-12-01 01:39:08 +02:00
DEVELOPMENT.md Add reactions to changelog 2020-02-29 18:52:20 +01:00
LICENSE Update LICENSE to reflect that this is not a single person project 2019-05-31 12:57:38 +02:00
MANIFEST.in Update MANIFEST.in 2018-05-06 01:46:42 +02:00
Pipfile Update Pipfile 2020-02-21 21:03:21 +01:00
README.rst nit 2022-12-01 01:53:24 +02:00
TODO.md Add v2 admin accounts API 2022-11-28 00:55:41 +02:00
setup.cfg add coverage reports to tests 2017-11-27 00:39:53 +01:00
setup.py Add pytz to test deps to allow tests to not fail on lower python versions 2022-12-01 00:14:57 +02:00
tox.ini Sunset 2.7 2019-07-23 12:16:57 +02:00

README.rst

Mastodon.py
===========
Python wrapper for the Mastodon ( https://github.com/mastodon/mastodon/ ) API.
Feature complete for public API as of Mastodon version 3.5.5 and easy to get started with:

.. code-block:: python

    from mastodon import Mastodon

    # Register your app! This only needs to be done once (per server, or when 
    # distributing rather than hosting an application, most likely per device and server). 
    # Uncomment the code and substitute in your information:
    '''
    Mastodon.create_app(
        'pytooterapp',
        api_base_url = 'https://mastodon.social',
        to_file = 'pytooter_clientcred.secret'
    )
    '''

    # Then, log in. This can be done every time your application starts (e.g. when writing a 
    # simple bot), or you can use the persisted information:
    mastodon = Mastodon(client_id = 'pytooter_clientcred.secret',)
    mastodon.log_in(
        'my_login_email@example.com', 
        'incrediblygoodpassword', 
        to_file = 'pytooter_usercred.secret'
    )

    # Note that this won't work when using 2FA - you'll have to use OAuth, in that case. 
    # To post, create an actual API instance:
    mastodon = Mastodon(access_token = 'pytooter_usercred.secret')
    mastodon.toot('Tooting from Python using #mastodonpy !')

You can install Mastodon.py via pypi:

.. code-block:: Bash

   # Python 3
   pip3 install Mastodon.py

We currently try to support Python 3.7 and above, and try to at least not break Python 3 versions
below that. Python 2 support is no longer a goal.

Full documentation and basic usage examples can be found
at https://mastodonpy.readthedocs.io/en/stable/

Acknowledgements
----------------
Mastodon.py contains work by a large amount of contributors, many of which have
put significant work into making it a better library. You can find some information
about who helped with which particular feature or fix in the changelog.

.. image:: https://circleci.com/gh/halcy/Mastodon.py.svg?style=svg
    :target: https://app.circleci.com/pipelines/github/halcy/Mastodon.py
.. image:: https://codecov.io/gh/halcy/Mastodon.py/branch/master/graph/badge.svg
    :target: https://codecov.io/gh/halcy/Mastodon.py