All Projects → GenbuProject → Mastodon-Material

GenbuProject / Mastodon-Material

Licence: AGPL-3.0 License
Material Design Native Theme for Mastodon

Programming Languages

SCSS
7915 projects

Projects that are alternatives of or similar to Mastodon-Material

reveal-jekyll
Online presentation for GitHub Pages and Jekyll in Markdown using reveal.js with a Solarized Color Theme
Stars: ✭ 67 (+294.12%)
Mutual labels:  light-theme, dark-theme
Bubble-Space-Theme
A theme for https://obsidian.md/ inspired by Bubbles for Light Mode and Outer Space for Dark Mode!
Stars: ✭ 86 (+405.88%)
Mutual labels:  light-theme, dark-theme
xcode-theme
Bring the color of the Xcode 'Default (Dark)', Xcode 'Classic (Dark)' and Xcode 'Classic (Light)' themes to Visual Studio Code.
Stars: ✭ 28 (+64.71%)
Mutual labels:  light-theme, dark-theme
paddy-color-theme
A very detailed VS Code color theme with earthy tones and many background options for all ye badass hackers. 🍁
Stars: ✭ 29 (+70.59%)
Mutual labels:  light-theme, dark-theme
Ultrachromic
The final form, the true evolution of the chromic theme saga!
Stars: ✭ 160 (+841.18%)
Mutual labels:  light-theme, dark-theme
fsc
A set of themeable WPF File System Controls similar to some parts of Windows (7-10) Explorer
Stars: ✭ 66 (+288.24%)
Mutual labels:  light-theme, dark-theme
Appearance-figma-plugin
Figma plugin. This plugin generates a dark/light theme from your selection.
Stars: ✭ 36 (+111.76%)
Mutual labels:  light-theme, dark-theme
vscode-theme-gruvbox-minor
Gruvbox theme for Visual Studio Code
Stars: ✭ 17 (+0%)
Mutual labels:  light-theme, dark-theme
Starlight
Automatic macOS Dark/Light shift based on surrounding ambient light.
Stars: ✭ 26 (+52.94%)
Mutual labels:  light-theme, dark-theme
Samurai-theme-vscode
Samurai Theme for VSCode
Stars: ✭ 15 (-11.76%)
Mutual labels:  light-theme, dark-theme
one-themes
One Dark and One Light Themes
Stars: ✭ 14 (-17.65%)
Mutual labels:  light-theme, dark-theme
repo-card
😎 showcase repositories on your website 🤘!
Stars: ✭ 141 (+729.41%)
Mutual labels:  light-theme, dark-theme
vuepress-theme-ououe
A blog theme for VuePress
Stars: ✭ 77 (+352.94%)
Mutual labels:  light-theme, dark-theme
hyperterm-gruvbox
Hyperterm theme based on gruvbox
Stars: ✭ 16 (-5.88%)
Mutual labels:  light-theme, dark-theme
vuepress-theme-default-prefers-color-scheme
add prefers-color-scheme for vuepress default theme
Stars: ✭ 51 (+200%)
Mutual labels:  light-theme, dark-theme
Light-Switch
Easily switch from light to dark theme, or the other way around, in Windows 10/11.
Stars: ✭ 25 (+47.06%)
Mutual labels:  light-theme, dark-theme
theme-collection
A collection of themes for Node-RED
Stars: ✭ 43 (+152.94%)
Mutual labels:  light-theme, dark-theme
ColorPickerLib
A WPF/MVVM implementation of a themeable color picker control.
Stars: ✭ 44 (+158.82%)
Mutual labels:  light-theme, dark-theme
firefox-edge
Firefox Edge is a theme for Mozilla Firefox that closely replicates the look of Microsoft Edge (dark theme) without losing any features of Firefox.
Stars: ✭ 65 (+282.35%)
Mutual labels:  light-theme, dark-theme
hexagonTab
Hexagon bookmarks accented with a chosen colour. Customise the layout, style, background and bookmarks with hexagonTab.
Stars: ✭ 65 (+282.35%)
Mutual labels:  light-theme, dark-theme

Mastodon Material

Mastodon Material

Language | 言語

日本語 (Japanese)

Overview

Mastodon Material is the native theme for Mastodon, which based on Material Design. Development policy is here (Japanese).

Screenshots

show/hide

v1-light + material-v1 v1-light

v1-dark + material-v1 v1-dark

black + material-v1 black

v2-light + material-v2 v2-light

v2-dark + material-v2 v2-dark

mastodon-light + material-v1 mastodon-light

mastodon-dark + material-v1 mastodon-dark

Requirement

How to install

  1. Copy these files of this repository into app/javascript/styles of Mastodon source directory.

    • /src/mastodon-material/
    • /src/mastodon-material.scss
  2. Add the below code on config/themes.yml

    default: styles/application.scss
    contrast: styles/contrast.scss
    mastodon-light: styles/mastodon-light.scss
    
    # Added theme
    mastodon-material: styles/mastodon-material.scss # add this line
  3. If you want to change the display theme name in your language, add localization strings to config/locales/{lang}.yml like below (At least config/locales/en.yml is REQUIRED)

    themes:
     contrast: High contrast
     default: Mastodon
     mastodon-light: Mastodon (light)
    
     # Added theme
     mastodon-material: Mastodon Material # add this line
  4. If you configure to use the webfont on Google Fonts (default) or on GitHub, you need to add an exception to CSP (Content Security Policy). Make sure to change config/initializers/content_security_policy.rb :

    def host_to_url(str)
     "http#{Rails.configuration.x.use_https ? 's' : ''}://#{str}" unless str.blank?
    end
    base_host = Rails.configuration.x.web_domain
    assets_host = Rails.configuration.action_controller.asset_host
    assets_host ||= host_to_url(base_host)
    media_host = host_to_url(ENV['S3_ALIAS_HOST'])
    media_host ||= host_to_url(ENV['S3_CLOUDFRONT_HOST'])
    media_host ||= host_to_url(ENV['S3_HOSTNAME']) if ENV['S3_ENABLED'] == 'true'
    media_host ||= assets_host
    Rails.application.config.content_security_policy do |p|
     p.base_uri :none
     p.default_src :none
     p.frame_ancestors :none
     p.font_src :self, assets_host
     p.img_src :self, :https, :data, :blob, assets_host
     p.style_src :self, :unsafe_inline, assets_host
     p.media_src :self, :https, :data, assets_host
     p.frame_src :self, :https
     p.manifest_src :self, assets_host

    into

    def host_to_url(str)
     "http#{Rails.configuration.x.use_https ? 's' : ''}://#{str}" unless str.blank?
    end
    base_host = Rails.configuration.x.web_domain
    assets_host = Rails.configuration.action_controller.asset_host
    assets_host ||= host_to_url(base_host)
    media_host = host_to_url(ENV['S3_ALIAS_HOST'])
    media_host ||= host_to_url(ENV['S3_CLOUDFRONT_HOST'])
    media_host ||= host_to_url(ENV['S3_HOSTNAME']) if ENV['S3_ENABLED'] == 'true'
    media_host ||= assets_host
    
    # custom host
    github_host = "https://raw.githubusercontent.com" # GitHub
    google_fonts_host = "https://fonts.gstatic.com" # Google Fonts
    
    Rails.application.config.content_security_policy do |p|
     p.base_uri :none
     p.default_src :none
     p.frame_ancestors :none
     p.font_src :self, assets_host, github_host, google_fonts_host
     p.img_src :self, :https, :data, :blob, assets_host
     p.style_src :self, :unsafe_inline, assets_host
     p.media_src :self, :https, :data, assets_host
     p.frame_src :self, :https
     p.manifest_src :self, assets_host

    Diff

    def host_to_url(str)
     "http#{Rails.configuration.x.use_https ? 's' : ''}://#{str}" unless str.blank?
    end
    base_host = Rails.configuration.x.web_domain
    assets_host = Rails.configuration.action_controller.asset_host
    assets_host ||= host_to_url(base_host)
    media_host = host_to_url(ENV['S3_ALIAS_HOST'])
    media_host ||= host_to_url(ENV['S3_CLOUDFRONT_HOST'])
    media_host ||= host_to_url(ENV['S3_HOSTNAME']) if ENV['S3_ENABLED'] == 'true'
    media_host ||= assets_host
    
    + # custom host
    + github_host = "https://raw.githubusercontent.com" # GitHub
    + google_fonts_host = "https://fonts.gstatic.com" # Google Fonts
    
    Rails.application.config.content_security_policy do |p|
     p.base_uri :none
     p.default_src :none
     p.frame_ancestors :none
    - p.font_src :self, assets_host
    + p.font_src :self, assets_host, github_host, google_fonts_host
     p.img_src :self, :https, :data, :blob, assets_host
     p.style_src :self, :unsafe_inline, assets_host
     p.media_src :self, :https, :data, assets_host
     p.frame_src :self, :https
     p.manifest_src :self, assets_host

Customization

Customization Guide

Stylus/Stylish theme

You can use our theme on any server by the browser extension, Stylus or Stylish.

License

This theme and the Stylish/Stylus theme can be used under AGPL-3.0. Material Icons font is available under Apache license version 2.0. (This repository does not include Material Icons font.)

The header image was made by using Noto Sans and mastodon.privacyfilter.user.styl.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].