Mr. Twinkly
Mr. Twinkly
Warning

This IP address is used for vandalism on Meta

Welcome to the Wikimedia Meta-Wiki!

Please keep test edits in the sandbox. Otherwise, this could be considered vandalism and may lead to you being blocked from editing.

Twinkle is a popular JavaScript Wikipedia gadget that allows autoconfirmed users to have many extra options to assist them in common Wikipedia maintenance tasks and to help them deal with acts of vandalism or unconstructive edits. It provides users with three types of rollback functions and includes a full library of speedy deletion functions, user warnings and welcomes, maintenance tags, semi-automatic reporting of vandals, and more. In addition, it gives administrators more tools to help them carry out their duties.

Twinkle
2019 Coolest Tool Award Winner
in the category
Eggbeater
A screenshot of Twinkle's request for page protection feature

Quick info

lemba
Getting started
To enable Twinkle on your account and receive any future updates automatically, you can simply enable the "Twinkle" gadget in the Gadgets section of your Preferences page. (Don't forget to click "Save" at the bottom of the list of gadgets!)
Customizing Twinkle
To modify many aspects of Twinkle's operation, you can visit the Twinkle preferences panel. Make your changes and click "Save changes" at the bottom of the page. If you are not seeing your intended changes, make sure to completely clear your browser cache so your changes take effect.
Getting help
There is comprehensive information about Twinkle at the documentation page. If that page does not answer your question, consider asking at the talk page. IRC users can connect to the #wikipedia-userscripts or #wikipedia-en IRC channels.
Reporting bugs or requesting features
You can report bugs or request features on the talk page, or directly at our GitHub. Software development is currently slow due to lack of developers and time. As of 2022, tickets take a couple months unless it is a big bug causing lots of disruption.
Contributing code
Twinkle is open source and we welcome code contributions. Twinkle is written in JavaScript, with a linter that enforces ES6 (an old version of JavaScript that we have to use because it is a MediaWiki gadget). If you would like to write code and submit patches to Twinkle, feel free to submit a pull request to our GitHub. Tools you should install on your local machine include Git and npm. You can see a list of easy patch requests here. You can get more details about how to compile and run Twinkle so you can test your changes here. You should test your patch before you open a pull request; we recommend test.wikipedia.org. As of 2023, SD0001 and Novem Linguae are the maintainers that approve pull requests, and MusikAnimal does deployments.
Notes
  • If your account is very new, you will not be able to use Twinkle. You need to be autoconfirmed (at least four days old and have ten edits) to enable the Twinkle gadget.
  • As with all JS functionality on the site, it is no longer possible to use Twinkle on Internet Explorer. If you are still using IE, try switching to another browser such as Mozilla Firefox or Google Chrome, as Twinkle is functional on most other modern browsers (including modern smartphone browsers).
  • Some browser add-ons may interfere with Twinkle. If Twinkle still does not load after following the instructions above, consider disabling one or more of your add-ons and then restarting your browser.
  • If you're using a touchscreen device, you may need to tap and hold the "TW" button in the Vector skin to show the Twinkle menu.

For a visual demonstration of many of the aforementioned items, it may be useful to view the "Twinkle" on WMF Labs.

Documentation and configuration

lemba

Before using Twinkle, you should read its documentation to familiarize yourself with its possibilities and functions. Experienced Twinkle users are welcome to expand or improve the documentation based on their use of the tool.

Abuse

lemba
Shortcuts:
WP:TWINKLEABUSE
WP:TWABUSE

Never forget that one takes full responsibility for any action performed using Twinkle. One must understand Wikipedia policies and use this tool within these policies or risk having one's account blocked. Anti-vandalism tools, such as Twinkle, Huggle, and rollback, should not be used to undo changes that are constructive and made in good faith.

If a change is merely "unsatisfactory" in some way, undoing/reverting should not be the first response. Editors should either make a reasonable attempt to improve the change, or should simply leave it in place for future editors to improve. Undo/revert is appropriate in cases where the contribution is arguably "wrong" (consider moving it to the Talk page), or is unreasonably difficult to fix (e.g. incomprehensible, and the author is unresponsive), or is actually harmful to the article (such as vandalism). A plain language edit summary (not merely tags) should be used when reverting changes that appear to have been made in good faith because many contributors will not recognize minimalistic tags and will not learn what the problem was and are likely to repeat it.

Is Twinkle loading unreliably?

lemba

In the past, you could install Twinkle by adding the text importScript('User:AzaToth/twinkle.js'); to your personal script page; however, this practice can make Twinkle load unreliably (Twinkle might not load on every page you visit, or it might show up but not work properly).

To fix this problem, you should remove the line importScript('User:AzaToth/twinkle.js'); from your personal script file, and then turn on the Twinkle gadget using the instructions above.

If you have any old configuration set up using TwinkleConfig or FriendlyConfig, it will still be effective. However, if you use the preferences panel to modify your configuration, you are advised to remove all old Twinkle/Friendly configuration variables from your skin JavaScript file.

History

lemba

Twinkle has its origins as a reversion script based on ideas found in Aaron Schulz's script collection. It was developed by AzaToth and released in 2007. It has grown into a tool with many more capabilities than its reversion roots. It is currently one of the most installed non-default gadgets on English Wikipedia, with around 47,000 users. The toolset has expanded over the years: the collection of tools formerly known as Friendly, developed by Ioeth, became part of Twinkle in 2011, and a new module to make user blocking a smoother process for administrators was developed in 2015. Other major contributors include Amalthea, Amorymeltzer, MusikAnimal, SD0001 and This, that and the other. The gadget continues to be updated and improved, in order to accommodate user requests and changes to Wikipedia processes.

Since 5 September 2020, edits and log actions done through Twinkle bear the "twinkle" tag.

Use on other wikis

lemba

A common request on the Twinkle talk page comes from those who wish to use Twinkle on other wikis. There are a couple options:

  • Install twinkle-starter on your wiki. Written in 2021 using a WMF grant, this was specifically designed to be easy to copy, localize, and customize on other projects, and it was designed to be easy to update the core files after installing. The README has the instructions on setting up. You can ask for help at WT:TW or on the Discord server Wikimedia Gadgets, or by contacting the maintainer SD0001 directly via email.
  • Have users add TwinkleGlobal to your common.js. It allows reverting edits, reporting IPs and accounts to SRG, and requesting speedy deletion of pages.
  • Copy and paste all the Twinkle files from English Wikipedia to your project using the procedure at Wikipedia:Twinkle/Localisation. This method is now discouraged (you should install twinkle-starter instead, see first bullet) as it results in Twinkle becoming outdated with no easy way of getting it up-to-date – eventually resulting in broken installations on many wikis. Syncing the updates from enwiki is usually non-trivial.

Use on mobile devices

lemba

Twinkle is not yet compatible with the mobile skin Minerva Neue. However, someone has written a third party patch that you can install. Please follow the directions at User:Plantaest/TwinkleMobile.

Userboxes

lemba

Twinkle users can add any of these userboxes to their user page.

Wikitext userbox where used
{{User Twinkle}}
 This user contributes with Twinkle.
linked pages
{{User:UBX/Twinkle}}
 This user is a recent changes patroller with Twinkle!
linked pages
{{User:UBX/Twinkle2}}
 This user reverts vandalism in the blink of an eye with Twinkle!
linked pages
{{User:UBX/Twinkle3}}
 This user reports vandalism in the blink of an eye with Twinkle!
linked pages
{{User:UBX/Twinkle4}}
 This user watches over Wikipedia with the help of Twinkle!
linked pages
{{User:UBX/Twinkleadmin}}
 This user performs administrator tasks in the blink of an eye with Twinkle!
linked pages
{{User:Xenon54/Userboxes/Twinkle}}
 

This user welcomes new users with Twinkle!

linked pages
{{User:Xenon54/Userboxes/Twinkle2}}
 This user welcomes new users with Twinkle!
linked pages
{{User:Xenon54/Userboxes/Twinkle3}}
{{tone}}

This user tags articles for maintenance with Twinkle!

linked pages
{{User:Arctic Fox/UBX/Twinkle}}
 

This user welcomes new users with Twinkle!

linked pages
{{User:Powergate92/Userboxes/Twinkle}}
 This user welcomes new users and tags articles using Twinkle.{{tag}}
linked pages
{{User:Skittleys/Userboxes/Twinkle}}
{{COI}}

This user tags articles with Twinkle!

linked pages
{{User:me and/Userboxen/Twinkle}}
 This user maintains Wikipedia with the help of Twinkle!
linked pages
{{User:Qwertyxp2000/Twinkle}}
 This user requests protection to articles with the help of Twinkle!
linked pages
{{User:CptViraj/UBX/WelcomeTwinkle}}
 

This user welcomes new users with Twinkle!

linked pages
{{User:CentralTime301/UBX:Twinkle and RC patrol}}
 This user is a recent changes patroller with Twinkle! 
linked pages
{{User:FlightTime/UBX/TwnkHugg}}
 This user fights vandalism with Twinkle and Huggle. Sometimes simultaneously... 
linked pages
{{User:UBX/RW and TW}}
 This user has both RedWarn and Twinkle, and may use them together!RW


linked pages
{{User:Ilovejames5/twinklevandal}}
 This person prevents vandalism with Twinkle.
linked pages

Also, there is the Twinkle topicon {{Twinkle topicon}}.