{"id":13892878,"url":"https://github.com/joker-x/anontwi","last_synced_at":"2025-07-17T06:31:30.189Z","repository":{"id":147143361,"uuid":"20267232","full_name":"joker-x/anontwi","owner":"joker-x","description":"Protects you on social networks.","archived":false,"fork":true,"pushed_at":"2014-05-28T14:50:32.000Z","size":429,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-24T20:39:05.100Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://anontwi.sf.net","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"epsylon/anontwi","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joker-x.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-05-28T18:03:09.000Z","updated_at":"2017-10-19T08:53:38.000Z","dependencies_parsed_at":"2023-03-25T09:10:28.594Z","dependency_job_id":null,"html_url":"https://github.com/joker-x/anontwi","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/joker-x/anontwi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joker-x%2Fanontwi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joker-x%2Fanontwi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joker-x%2Fanontwi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joker-x%2Fanontwi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joker-x","download_url":"https://codeload.github.com/joker-x/anontwi/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joker-x%2Fanontwi/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265573467,"owners_count":23790438,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-06T17:01:18.078Z","updated_at":"2025-07-17T06:31:29.850Z","avatar_url":"https://github.com/joker-x.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"=============================================\nIntroduction: AnonTwi (http://anontwi.sf.net)\n=============================================\n\nFIGHT CENSORSHIP!! being more safe on Twitter...\n\n                .   :   .            \n            '.   .  :  .   .'        \n         ._   '._.-'''-._.'   _.     \n           '-..'         '..-'       \n        --._ /.==.     .==.\\ _.--    \n            ;/_o__\\   /_o__\\;        \n       -----|`     ) (     `|-----   \n           _: \\_) (\\_/) (_/ ;_       \n        --'  \\  '._.=._.'  /  '--    \n          _.-''.  '._.'  .''-._      \n         '    .''-.(_).-''.    '     \n             '   '  :  '   '.        \n                '   :   '            \n                    '                \n\nAnonTwi gives you:\n\n      + AES + HMAC-SHA1 encryption on Tweets and Direct Messages \n      + Secure Sockets Layer (SSL) to interact with API\n      + Proxy Socks (for example, to connect to the TOR network)\n      + Random HTTP header values\n      + Send long messages splitted automatically\n      + Automatic decryption of tweet's urls or raw inputs\n      + Backup messages to your disk (max: 3200)\n      + Send fake geolocation places\n      + Remove data and close account (suicide)\n      + View global Trending Topics\n      + UTF-8 + Unicode support (chinese, arabic, symbols, etc)\n      + Multiplatform: GNU/Linux, MacOS, Win32\n      + Detailed colourful output results\n      + Generate tools and modules\n      + GTK + WebGUI interfaces\n      + An IRC bot slave\n\nAnd many other features than you can see detailed below:\n\n======\nINDEX:\n======\n\n 1) How-To Start\n 2) Examples\n 3) Contribute\n 3) Contact\n\n=============\nHow-To Start:\n=============\n\n--------\nInstall:\n--------\nCode runs on many platforms. It requires Python and the following libraries:\n\n      - python-crypto   - cryptographic algorithms and protocols for Python\n\n      - python-httplib2 - comprehensive HTTP client library written for Python\n\n      - python-pycurl   - python bindings to libcurl\n\nOn Debian-based systems (ex: Ubuntu), run:\n\n      - directly:\n\n              sudo apt-get install python-crypto python-httplib2 python-pycurl\n\n      - using setup-tools (http://pypi.python.org/pypi/setuptools):\n\n              easy_install \u003cpackages\u003e\n\nOn Windows systems, is working (tested!) with:\n\n      - python 2.7      - http://www.python.org/getit/\n      - httplib2 0.7.4  - http://httplib2.googlecode.com/files/httplib2-0.7.4.zip\n      - pycrypto 2.3    - http://www.voidspace.org.uk/downloads/pycrypto-2.3.win32-py2.7.zip\n\n      - using setup-tools (http://pypi.python.org/pypi/setuptools):\n\n              easy_install.exe \u003cpackages\u003e\n\n\n------------------------\nStep 1) \"Consumer\" keys:\n------------------------\n   + To use OAuth with Twitter, you need this tokens: 'consumer key' and 'consumer secret'.\n\n      - First, you need to create a third party APP in your developers twitter account. Login on: https://dev.twitter.com\n      - In your icon profile, go to: \"My applications\" and/or click on: \"Create new application\"\n      - Enter data to the form:\n\n              \"Name : Your application name (This will be visible when you post)\"\n              \"Description: Your description name (for example: AnonTwi\")\n              \"Website: Your application website (for example: http://anontwi.sf.net)\"\n\n              \"If you accept Twitter rules, click on: 'Yes, I agree'\"\n              \"Solve captcha\" ;-)\n              \"Click on: \"Create your Twitter application\"\n\n      - On \"My application\", click on your application\n      - Search for: 'OAuth Settings' and keep your:\n                 \n                 \"Consumer key: xxxxxxxxxxxxxxxxxxxx \t                     \n                  Consumer secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\t\n\n      - Open \"config.py\" file with a text editor, and enter that tokens. Save changes!.\n\n      - IMPORTANT: You must put access level for AnonTwi like: Read, write, and direct messages\n\n      - Now, you are ready to generate your: secret \"Token\" keys. Step 2.\n\n\n---------------------\nStep 2) \"Token\" keys:\n---------------------\n   + To use AnonTwi like API with Twitter, you need this tokens: 'token key' and 'token secret'.\n     \n      - Launch: ./anontwi --tokens\n      - Follow the link to read your \"PinCode\"\n      - Enter your PinCode\n      - After a few seconds, you will reviece a response like this:\n               \n                 \"Generating and signing request for an access token\n                  Your Twitter Access Token key: xxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n                  Access Token secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\n      \n   + With these tokens, you can start to launch -AnonTwi- commands like this:\n\n       ./anontwi [-m 'text' | -r 'ID' | -d @user | -f @nick | -u @nick] [OPTIONS] 'token key' 'token secret'\n\n   + Remember that you can EXPORT tokens like environment variables to your system, to don't use them every time\n     If you did it, you can start to launch -AnonTwi- commands like this:\n\n       ./anontwi [-m 'text' | -r 'ID' | -d @user | -f @nick | -u @nick] [OPTIONS]\n\n\n=========\nExamples:                                 \n=========\n\n   + To remember:\n\n         - Connections to API are using fake headers automatically\n         - To launch TOR, add this command: --proxy \"http://127.0.0.1:8118\"\n         - Check if you are doing geolocation in your messages (usually is 'off' by default)\n         - You can generate 'token key' and 'token secret' every time that you need\n         - View output results with colours using parameter: --rgb (better with obscure backgrounds)\n         - Use --gen to generate STRONG PIN/keys (ex: --pin '1Geh0RBm9Cfj82NNhuQyIFFHR8F7fI4q7+7d0a3FrAI=')\n         - Try to add encryption to your life :)\n\n-----------------------------------\nRetrieve you API tokens, using TOR:\n-----------------------------------\n\n        ./anontwi --tokens --proxy \"http://127.0.0.1:8118\"\n\n----------------------------------------------------\nGenerate PIN key for encrypting/decrypting messages:\n----------------------------------------------------\n\n        ./anontwi --gen\n\nPIN key: K7DccSf3QPVxvbux85Tx/VIMkkDkcK+tFzi45YZ5E+g= \n\nShare this key privately with the recipients of your encrypted messages.\nDon't send this key over insecure channels such as email, SMS, IM or Twitter.\nUse the sneakernet! ;)\n\n----------------------\nLaunch GTK+ Interface:\n----------------------\n\n        Enjoy visual mode experience ;)\n\n        ./anontwi --gtk\n\n------------------------\nLaunch an IRC bot slave:\n------------------------\n\n        Launch it and you will have a bot slave waiting your orders on IRC.\n\n        ./anontwi --irc='nickname@server:port#channel'\n\n        If you don't put a nickname or a channel, AnonTwi will generate randoms for you :)\n \n        ./anontwi --irc='irc.freenode.net:6667'\n\n------------------------\nShort an url, using TOR:\n------------------------\n\n        ./anontwi --short \"url\" --proxy \"http://127.0.0.1:8118\"\n\n-----------------------------------\nSend a plain-text tweet, using TOR:\n-----------------------------------\n\n        ./anontwi -m \"Hello World\" --proxy \"http://127.0.0.1:8118\" \n\n------------------------\nSend an encrypted tweet:\n------------------------\n\n        ./anontwi -m \"Hello World\" --enc --pin \"K7DccSf3QPVxvbux85Tx/VIMkkDkcK+tFzi45YZ5E+g=\"\n\n--------------\nRemove a tweet: \n---------------\n\n        You need the ID of the tweet that you want to remove.\n\n                 - launch \"--tu @your_nick 'num'\" to see tweets IDs of your timeline.\n\n        ./anontwi --rm-m \"ID\"\n\n------------------\nRetweet a message:\n------------------\n\n        You need the ID of the tweet that you want to RT. \n                \n                 - launch \"--tu @nick 'num'\" to see tweets IDs of a user.\n \n        ./anontwi -r \"ID\"\n\n-------------------------------------------------\nSend a plain-text DM (Direct Message), using TOR:\n-------------------------------------------------\n\n        ./anontwi -m \"See you later\" -d \"@nick\" --proxy \"http://127.0.0.1:8118\"\n\n---------------------\nSend an encrypted DM:\n---------------------\n\n        ./anontwi -m \"See you later\" -d \"@nick\" --enc --pin \"K7DccSf3QPVxvbux85Tx/VIMkkDkcK+tFzi45YZ5E+g=\"\n\n---------------\nRemove a DM:\n---------------\n\n        You need the ID of the DM that you want to remove.\n\n                 - launch \"--td 'num'\" to see Direct Messages IDs of your account.\n\n        ./anontwi --rm-d \"ID\"\n\n--------------------------------------\nSend a media message, using TOR:\n--------------------------------------\n\n        Twitter will show your media links. For example, if you put a link to an image\n\n        ./anontwi -m \"https://host/path/file.jpg\" --proxy \"http://127.0.0.1:8118\"\n\n----------------------------------------\nSend reply in a conversation, using TOR:\n----------------------------------------\n\n        You need the ID of the message of the conversation.\n\n                 - launch \"--tu @nick 'num'\" to see tweets IDs of a user timeline.\n                 - launch \"--tf 'num'\" to see tweets IDs of your 'home'.\n\n        Add names of users that participates on conversation at start of your message.\n\n        ./anontwi -m \"@user1 @user2 text\" --reply \"ID\" --proxy \"http://127.0.0.1:8118\"\n\n---------------------------------\nSend a friend request, using TOR:\n---------------------------------\n\n        ./anontwi -f \"@nick\" --proxy \"http://127.0.0.1:8118\"\n\n----------------------------------\nStop to follow a user, using TOR:\n----------------------------------\n\n        ./anontwi -u \"@nick\" --proxy \"http://127.0.0.1:8118\"\n\n----------------------------------\nCreate a favorite, using TOR:\n----------------------------------\n\n        ./anontwi --fav \"ID\" --proxy \"http://127.0.0.1:8118\"\n\n----------------------------------\nDestroy favorite, using TOR:\n----------------------------------\n\n        ./anontwi --unfav \"ID\" --proxy \"http://127.0.0.1:8118\"\n\n------------------------\nBlock a user, using TOR:\n------------------------\n\n        ./anontwi --block \"@nick\" --proxy \"http://127.0.0.1:8118\"\n\n--------------------------\nUnblock a user, using TOR:\n--------------------------\n\n        ./anontwi --unblock \"@nick\" --proxy \"http://127.0.0.1:8118\"\n\n-----------------------------------------\nShow a number of recent tweets of a user:\n-----------------------------------------\n\n        You can control number of tweets to be reported. For example, 10 most recent tweets is like this:\n\n        ./anontwi --tu \"@nick 10\"\n\n-------------------------------------------------------\nShow a number of recent tweets of your 'home' timeline:\n-------------------------------------------------------\n\n        You can control number of tweets to be reported. For example, 10 most recent tweets is like this:\n\n        ./anontwi --tf \"10\"\n\n-------------------------------------------------------\nShow a number of recent favorites\n-------------------------------------------------------\n\n        You can control number of tweets to be reported. For example, 10 most recent tweets is like this:\n\n        ./anontwi --tfav \"@nick 10\"\n\n----------------------------------\nSplit a long message into \"waves\":\n----------------------------------\n\n        Very usefull if you want to send long messages. \n        It uses Twitter restrictions as much efficient as possible. \n        Encryption is allowed :)\n       \n        ./anontwi -m \"this is a very long message with more than 140 characters...\" --waves\n\n----------------------------------\nSend fake geolocation coordenates:\n----------------------------------\n\n        If you dont put any (--gps), coordenates will be random :)\n        \n        ./anontwi -m \"text\" --gps \"(-43.5209),146.6015\"\n\n-------------------------------------------------\nShow a number of Direct Messages of your account:\n-------------------------------------------------\n\n        You can control number of DMs to be reported. For example, 5 most recent DMs is like this:\n\n        ./anontwi --td \"5\"\n\n-------------------------------------------\nReturns global Trending Topics, using TOR:\n-------------------------------------------\n\n        ./anontwi --tt --proxy \"http://127.0.0.1:8118\"\n\n-------------------------------------------\nReturns last mentions about you, using TOR:\n-------------------------------------------\n\n\tYou can control number of tweets to be reported. For example last recent tweet:\n\n        ./anontwi --me \"1\" --proxy \"http://127.0.0.1:8118\"\n\n---------------------------------------------\nDecrypt a tweet directly from URL, using TOR:\n---------------------------------------------\n        \n        Remeber, to decrypt, you need the PIN/Key that another user has used to encrypt the message (symmetric keys)\n        To decrypt you don't need 'token key' and 'token secret' :)\n\n        ./anontwi --dec \"http://twitter.com/encrypted_message_path\" --pin \"K7DccSf3QPVxvbux85Tx/VIMkkDkcK+tFzi45YZ5E+g=\" --proxy \"http://127.0.0.1:8118\" \n\n----------------------------------------\nDecrypt a tweet directly from raw input:\n----------------------------------------\n\n        Remeber, to decrypt, you need the PIN/Key that another user has used to encrypt the message (symmetric keys)\n        To decrypt you don't need 'token key' and 'token secret' :)\n \n        ./anontwi --dec \"7asNGpFFDKQl7ku9om9CQfEKDq1ablUW+srgaFiEMa+YK0no8pXsx8pR\" --pin \"K7DccSf3QPVxvbux85Tx/VIMkkDkcK+tFzi45YZ5E+g=\"\n\n----------------------------------------------------------\nSave tweets starting from the last (max: 3200), using Tor:\n----------------------------------------------------------\n\n\tYou can control number of tweets to be reported. For example last 1000 tweets:\n\n\t./anontwi --save \"1000\" --proxy \"http://127.0.0.1:8118\"\n\n-------------------------------------------------\nSave favorites starting from the last, using Tor:\n-------------------------------------------------\n\n\tYou can control number of tweets to be reported. For example last 100 tweets:\n\n\t./anontwi --sfav \"@nick 100\" --proxy \"http://127.0.0.1:8118\"\n\n-------------------\nSuicide, using TOR:\n-------------------\n\n        This will try to delete your tweets, your DMs and if is possible, your account.\n\n        ./anontwi --suicide --proxy \"http://127.0.0.1:8118\"\n\n===========\nContribute:\n===========\n\n\tSend bitcoins to this hash: 1Q56VRyageaaC6Rs7cT9t6eC7xTrKMp94a\n\n========\nContact:\n========\n\n\tTo report bugs, questions and help, for suggestions or new development tasking forces, you welcome on: \n    \n      - irc.freenode.net (channel: #AnonTwi)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoker-x%2Fanontwi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoker-x%2Fanontwi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoker-x%2Fanontwi/lists"}