# MediaGoblin

GNU MediaGoblin (also shortened to MediaGoblin or GMG) is a free, decentralized Web platform (server software) for hosting and sharing many forms of digital media. It strives to provide an extensible, federated, and freedom-respectful software alternative to major media publishing services such as Flickr, DeviantArt, and YouTube.

## History

The origins of GNU MediaGoblin date back to 2008, when a gathering was held at the Free Software Foundation in order to discuss the path that Internet communities should take. The answer was that restrictive and centralized structures were both technically and ethically doubtful, and may harm the typical fairness and availability of the Internet. Several projects have since appeared to prevent this, including Identi.ca, Libre.fm, Diaspora, among others.
The MediaGoblin project remains in active development.
MediaGoblin development history :
| Release Version | Date | Notable features or events |
| 0.12.1 | 2023-04-11 | Python dependency fixes |
| 0.12.0 | 2021-09-18 | Bugfix in media processing |
| 0.11.0 | 2021-03-10 | Transition to Python 3 |
| 0.10.0 | 2020-05-01 | New plugin for displaying video subtitles and support for transcoding and displaying video in multiple resolutions |
| 0.9.0 | 2016-03-26 | Python 3 support (now supports Python 2.7, Python 3.4 or later) OAuth security improvements Internal improvements for federation (improved database layout and particularly in permitting generic relations, comments, etc.) Improved collection handling Bugfixes |
| 0.8.0 | 2015-06-04 | Improved client to server API |
| 0.7.0 | 2014-08-26 | Implemented base Pump.io API Incorporated skeleton for a more responsive layout Sandy Seventies Speedboat theme Command-line batch uploading Experimental 'blog' media type and a metadata plugin |
| 0.6.0 | 2013-12-03 | Web-based administration for user permissions Media complaint handling Non-interactive uploads LDAP authentication User-specific Disk quota |
| 0.5.0 | 2013-09-05 | Pluggable authentication system (including OpenID and Mozilla Persona) Pluggable media handling Comment notifications |
| 0.4.0 | 2013-06-17 | New plugin system Support for PDF and ODF through PDF.js and LibreOffice, respectively Experimental implementation of the Piwigo API |
| 0.3.3 | 2013-03-12 | Interface and API enhancements; avoiding unneeded processing of some videos |
| 0.3.2 | 2012-12-20 | Support for 3D models, collections, and API |
| | 2012-10 to 2012-11-09 | A crowdfunding campaign was launched via the Free Software Foundation |
| 0.3.1 | 2012-08-24 | Theming support |
| | 2011–03 | Software development begins |

## Design and features

MediaGoblin is part of GNU, and its code is released under the terms of the GNU Affero General Public License; meaning that it adheres to the principles of free and open-source software. The licensing of other elements (e.g. design, logo) is under the public domain. Christine Lemmer-Webber, the core developer, came up with the name "MediaGoblin" which also makes a pun with the pronunciation of "gobbling".
The main page displays an upper banner with MediaGoblin's typeface and an authentication section for users. The remaining space is left to show thumbnails of the latest posted works. Each user owns a personal profile comprised by two vertical sections – one for uploads arranged as a gallery and another with a customizable text box. For displaying media, the platform focuses on the work itself rather than overstocking with options and buttons; nonetheless, comments can be added under the artwork description. Some other features like tags, metadata, theming, Creative Commons licensing and GPS support can be enabled as separate plug-ins to enrich the usage of GNU MediaGoblin.
The platform successfully hosts and displays many sorts of media:
* As of version 0.3.1 it includes support for plain text (ASCII art), images (PNG and JPEG).
* HTML5 capabilities are widely used to play video and/or audio contained in WebM format; while FLAC, WAV and MP3 uploads are automatically transcoded to Vorbis audio and then encapsulated into WebM.
* 3D models support (preview and renderization) was added on 22 October 2012 and is achieved by means of HTML5 Canvas, Thingiview, WebGL and Blender.

## Mascot

The project mascot is a purple goblin called Gavroche wearing clothing that resembles a stereotypical artist costume.