This project is a Flask-based web application that allows users to post statuses (toots) to Mastodon. It supports both immediate posting and scheduling posts for future times. It also includes image upload functionality.
curl https://raw.githubusercontent.com/scidsg/mastodon-scheduler/main/install.sh | bash
Waveshare's 2.13" e-paper display is supported!
curl https://raw.githubusercontent.com/scidsg/mastodon-scheduler/main/setup_display.sh | bash
Before you begin the installation of Mastodon Scheduler, ensure you have:
read:accounts
read:statuses
write:media
write:statuses
crypto
To install the Mastodon App, follow these steps:
Run the easy installer command:
curl https://raw.githubusercontent.com/scidsg/mastodon-scheduler/main/install.sh | bash
or
Clone the repository:
git clone https://github.com/scidsg/mastodon-scheduler.git
Navigate to the project directory:
cd mastodon-scheduler
Make the installer executable:
chmod +x install.sh
./install.sh
This script will set up a Python virtual environment, install necessary dependencies, create a Flask app, and set up a systemd service for the app.
After installation, the Mastodon App will run as a service on your machine. You can access the web interface by navigating to https://mastodon-scheduler.local:5000
in your web browser.
To post a status or schedule a post, fill in the form on the main page and submit.
Contributions to this project are welcome. To contribute, please follow these steps:
git checkout -b <branch_name>
.git commit -m '<commit_message>'
.git push origin <project_name>/<location>
.Alternatively, see the GitHub documentation on creating a pull request.
If you have any questions or feedback, please get in touch with me at mastodon@scidsg.org.