Through community CSS and JavaScript, administrators can affect the way all visitors – logged in or otherwise – experience Memory Alpha. All code that is part of Memory Alpha's site JavaScript or CSS must obey the customization policy. When possible, changes to Memory Alpha's appearance should be made through the Theme Designer tool instead of site JavaScript and CSS.
If you would like to propose a change to Memory Alpha's appearance or functionality, you may do so at Ten Forward - Layout.
CSS
Memory Alpha's CSS is governed by three pages: MediaWiki:Common.css for the FandomDesktop skin, MediaWiki:FandomMobile.css for the FandomMobile skin, and MediaWiki:Print.css for the print output.
JavaScript
As with CSS, site JavaScript on Memory Alpha affects the experience of everyone visiting the wiki, whether they're logged in or not. Site JavaScript on Memory Alpha comes primarily from MediaWiki:Common.js, which affects the FandomDesktop skin. For security reasons, edits to this file go through a review process before going live. This process can be bypassed by importing scripts from the Fandom Developers Wiki through MediaWiki:ImportJS.
JavaScript errors can break some of the basic functionality of Memory Alpha. Admins must diligently test JavaScript before adding it to avoid introducing errors. If you are an admin, do not include JavaScript that you do not understand or that comes from sources that you do not fully trust or that are not secure. Additionally, do not import JavaScript from personal JavaScript pages.
Technicalities
Changes made to site CSS or JavaScript are usually not immediately seen upon publication. This is because of a concept called "caching." If Memory Alpha's site CSS or JavaScript has recently been edited, you may have to bypass your cache to see the effect of the changes.
If you are an admin and a change you have made is not taking effect, it could be because it is overridden by a later-loading page. Fandom's core code is always loaded first, followed by Memory Alpha's site code. Next comes all personal code. Scrips specified in ImportJS are loaded last.