Wikipedia:Twinkle
This is an information page. It is not an encyclopedic article, nor one of Wikipedia's policies or guidelines; rather, its purpose is to explain certain aspects of Wikipedia's norms, customs, technicalities, or practices. It may reflect differing levels of consensus and vetting. |
Warning: You take full responsibility for any action you perform using Twinkle. You must read and understand Wikipedia policies and use this tool within these policies, or risk being blocked from editing. |
Description | Tag pages, start discussions, leave messages, and provide a richer user interface for admin actions such as block and protect |
---|---|
Author(s) | AzaToth |
Maintainer(s) | Novem Linguae |
Source |
|
GitHub repository | twinkle |
Twinkle is a popular Wikipedia gadget that uses JavaScript. It 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.
Quick info
- 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.
- Maintainers
- As of 2024, SD0001 and Novem Linguae approve pull requests, and Novem Linguae 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" video tutorial on WMF Labs.
Documentation and configuration
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
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. Please take particular care with the rollback links provided by Twinkle. Only obvious vandalism qualifies for rollback without an edit summary. If you believe an editor's contribution is done in good faith, you should include an edit summary.
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?
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
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
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.
- 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
Twinkle is not officially compatible with the default mobile skin, Minerva Neue. However, you can install a third-party patch. Please follow the directions at User:Plantaest/TwinkleMobile.
Userboxes
Twinkle users can add any of these userboxes to their user page.
Also, there is the Twinkle topicon {{Twinkle topicon}}.