User:Triciaburmeister/Sandbox/Help:Toolforge
This draft is now published at Help:Toolforge. |
This is the landing page for Toolforge user documentation. It provides an overview of Toolforge features and capabilities, then directs you to where you can learn more or get started using the platform.
What is Toolforge?
Toolforge is a free cloud hosting platform for Wikimedia contributors. It provides web servers, data access, job management, and other features to help developers maintain tools and bots.
Toolforge is part of the Wikimedia Cloud Services (WMCS) suite of services. It is supported by Wikimedia Foundation staff and volunteers.
To learn more about how Toolforge works, see About Toolforge.
What are tools and bots?
Tools are software applications that help people working on Wikimedia projects. Bots are automated programs that help wiki projects by doing crucial but repetitive tasks. Tools and bots can do all kinds of tasks, like help editors discover content to improve, simplify edit-a-thon planning, visualize wiki content, help fight vandalism, and much more.
Many tools and bots use MediaWiki APIs to access wiki content, metadata, analytics data, and more. You can use these APIs to build apps that contribute content or new functionality to the Wikimedia ecosystem, then host your app on Toolforge.
See the Wikimedia Technical Ecosystem overview to learn more about how tools and bots help the Movement.
Main features of Toolforge
- Free, reliable, and scalable cloud hosting for:
- Web services using PHP, Python, Node.js, Java, and other languages or frameworks
- Continuous bots and scheduled tasks
- Kubernetes backend for orchestration
- Access to replicas of production wiki databases
- Access to shared storage, which includes public dumps of Wikimedia content and data
- Shared management of tool accounts (where tools and bots are stored)
- Support for mosh, SSH, SFTP
- Version control via Gerrit and Git
- Options for tools to send and receive email
- Support for Redis
- Support for Elasticsearch
Constraints of Toolforge
- All code run on Toolforge must benefit the Wikimedia movement.
- Use of Toolforge is subject to the general Cloud Services Terms of Use, and Toolforge-specific rules and policies.
- Because Toolforge is a managed service, you are limited to the packages provided by the Wikimedia Foundation on its servers. If your project requires that you administer your own virtual server, consider Help:Cloud VPS instead.
- Memory and storage quotas apply to containers and to your entire tool namespace, but you can request a quota increase, if necessary.
What tools are hosted on Toolforge?
Toolforge hosts various types of tools, including web services, continuous bots, and scheduled tasks.
To explore tools by type, visit Toolhub. To see all the tools currently hosted on Toolforge, use the Toolforge admin console ("toolsadmin").
Before you start
To use Toolforge, you need:
- Some programming knowledge
- An understanding of Unix command line
- An SSH client (like Putty or WinSCP or Linux command line)
- A Wikimedia developer account, and a Wikimedia account (used to log in to Wikipedia or other Wikimedia wikis)
Get started
Follow the Toolforge Quickstart guide to create your tool account and get started using Toolforge.
To get familiar with MediaWiki APIs, try a tutorial, or prototype your code in PAWS, a Jupyter notebook installation hosted by Wikimedia.
Communication and support
Support and administration of the WMCS resources is provided by the Wikimedia Foundation Cloud Services team and Wikimedia movement volunteers. Please reach out with questions and join the conversation:
- Chat in real time in the IRC channel #wikimedia-cloud connect or the bridged Telegram group
- Discuss via email after you have subscribed to the cloud@ mailing list
- Subscribe to the cloud-announce@ mailing list (all messages are also mirrored to the cloud@ list)
- Read the News wiki page
Use a subproject of the #Cloud-Services Phabricator project to track confirmed bug reports and feature requests about the Cloud Services infrastructure itself
Read the Cloud Services Blog (for the broader Wikimedia movement, see the Wikimedia Technical Blog)