Skip to main content

Generate a static HTML website from your twitter time line

Project description

http://img.shields.io/pypi/v/static_tl.svg

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

Show me!

Here’s an example of static_tl in action:

http://dmerej.info/tweets

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
  • Then run:

    static-tl get

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:

    static-tl gen

(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

Searching

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

static_tl-0.5.1.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

static_tl-0.5.1-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file static_tl-0.5.1.tar.gz.

File metadata

  • Download URL: static_tl-0.5.1.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for static_tl-0.5.1.tar.gz
Algorithm Hash digest
SHA256 fa66b1ed71c0d9c422410406a704d8e850e5cd8ae0e84f074f8913a54413efb6
MD5 8939090aae39231782dfe967ea6a2ea8
BLAKE2b-256 3523694ceae058a26eb8b46e8497c6cdb0b6a389eb96263e6c73113238a79178

See more details on using hashes here.

File details

Details for the file static_tl-0.5.1-py3-none-any.whl.

File metadata

File hashes

Hashes for static_tl-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e31525c912e639e5c473a2aec431343dac6e48de5c980eccd2729bebde46be52
MD5 adff790a44c3ad01ab1c92014573b0f0
BLAKE2b-256 f82c2d4d236bf94da090e4a002f13c285b33da01dda53bb07538b258229fa5eb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page