Generate a static HTML website from your twitter time line
What is it?
It’ a tool that makes sure your TL won’t be gone for ever if for some reason twitter decides to no longer play nice.
In a way, it also makes it possible to:
- edit your tweets
- have them longer than 140 characters
Here’s an example of static_tl in action:
How to use it ?
Install Python3 and then install static_tl with pip
Create an app on http://apps.twitter.com
Edit ~/.config/static_tl.toml to have something like:
[auth] api_key = "<Consumer Key>" api_secret = "<Consumer Secret>" token = "<Acces Token>" token_secret = "<Acess Token Secret>" [[users]] [users.user_one] with_replies = false [users.user_two] with_replies = true
This will generate some files with your recent tweets in a json folder.
For instance, if your run it on 2016 October 10, you’ll get two files:
json/<user>/2016-09.json (all the tweets from September)
json/<user>/2016-10.json (all the tweets from October so far)
Next time you’ll run static-tl get, we will look at the most recent status ID in the most recent .json file and only fetch new tweets. This means you can edit or even delete the tweets that are older than that :)
Then, when you are ready you can generate a completely static copy of your TL with:
(By static, we mean that it’s possible to upload those html files wherever you want so it’s extremely easy to publish your new TL on the web)
Tweaking the output
Customization can be done by simply editing the Jinja templates in static_tl/templates.
From the template you have access to all the fields returned by the official twitter API.
Also, any file not ending with .html in the templates folder will be copied directly to the html folder: useful for images, css files and the like.
Perform backup only
If you do not want to generate HTML files for a given user, use:
[[users]] [users.<name>] publish = false
Since version 0.4, static_tl gen also generates a tweets.sqlite file containing one table per user.
We use the FTS4 extension.
A search application is available in the sources : static_tl/search.py, using the flask framework.
This will only work if site_url is set, and if the flask server can be reached at <site_url>/search
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size static_tl-0.5.3-py3-none-any.whl (19.4 kB)||File type Wheel||Python version py3||Upload date||Hashes View|
|Filename, size static_tl-0.5.3.tar.gz (11.1 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for static_tl-0.5.3-py3-none-any.whl