GithubHelp home page GithubHelp logo

doc22940 / themes-1 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hundredrabbits/themes

0.0 0.0 0.0 11.85 MB

Simple Theme Framework

Home Page: https://hundredrabbits.github.io/Themes

HTML 42.82% CSS 6.02% JavaScript 51.17%

themes-1's Introduction

Themes

This repository is for the application themes and tools used across the Hundred Rabbits Ecosystem.

Setup

Install Theme support by adding theme.js to your header.

<script type="text/javascript" src="scripts/lib/theme.js"></script>

Define Theme overrides in a dedicated theme.css by adding this line to your header.

<link rel="stylesheet" type="text/css" href="links/theme.css"/>

Initiate Theme support by adding these lines somewhere in your project. The .install(element) method takes an element to append the <style> tag to.

const theme = new Theme();
theme.install(document.body);
theme.start();

Trigger a function once a new theme has been loaded:

theme.onLoad = callback

The callback will fire when a new theme has loaded, perfect to connect a refresh method and update your application with the new colors.

Format Specs

The Theme format holds 9 different colors, including 4 foreground colors, 4 background colors, and a global background color. Each foreground color should be readable on every background color, with the exception of the inv types, which are designed to be used in warnings or modals and should only overlap each other.

A variable's contrast should be seen as an offset to the global background color, so instance, f_high represents a high contrast color against the global background, and so does b_high, representing a highly contrasted color against the global background.

You can test your themes online with the Theme Benchmark.

  • background, Application Background.
  • f_high, Foreground, high-contrast.
  • f_med, Foreground, medium-contrast.
  • f_low, Foreground, low-contrast.
  • f_inv, Foreground, for modals and overlays.
  • b_high, Background, high-contrast.
  • b_med, Background, medium-contrast.
  • b_low, Background, low-contrast.
  • b_inv, Background, for modals and overlays.

The Theme Format

The Theme file format is a simple SVG file. The theme.js loader will look for colors found in the element's id attributes. Save the image on your computer and drag it over the application window to install it.

Example

apollo

Content

<!-- Author: Unknown -->
<svg width="96px" height="64px" xmlns="http://www.w3.org/2000/svg" baseProfile="full" version="1.1">
  <rect width='96' height='64'  id='background' fill='#E0B1CB'></rect>
  <!-- Foreground -->
  <circle cx='24' cy='24' r='8' id='f_high' fill='#231942'></circle>
  <circle cx='40' cy='24' r='8' id='f_med' fill='#5E548E'></circle>
  <circle cx='56' cy='24' r='8' id='f_low' fill='#BE95C4'></circle>
  <circle cx='72' cy='24' r='8' id='f_inv' fill='#E0B1CB'></circle>
  <!-- Background -->
  <circle cx='24' cy='40' r='8' id='b_high' fill='#FFFFFF'></circle>
  <circle cx='40' cy='40' r='8' id='b_med' fill='#5E548E'></circle>
  <circle cx='56' cy='40' r='8' id='b_low' fill='#BE95C4'></circle>
  <circle cx='72' cy='40' r='8' id='b_inv' fill='#9F86C0'></circle>
</svg>

Installation

Simply download these SVG files, and drag and drop them onto the application window, to install them.

Dark

apollo orca battlestation soyuz lotus

Light

coal marble snow swiss tape

Color

mahou pico8 frameio berry roguelight

See the full collection here.

Generate themes with pywal

Themes can be generated from your wallpaper’s colors with pywal.

Add pywal.svg to ~/.config/wal/templates and run wal. The generated theme will be located in ~/.cache/wal/.

Supported Applications

This collection may also be used with:

Extras

You are welcome to submit your own themes to this collection.

themes-1's People

Contributors

abalone1969 avatar aeriform-io avatar dbateyko avatar deuveir avatar gamwe6 avatar jameschip avatar jda0 avatar kormyen avatar lcb931023 avatar maxdeviant avatar neauoire avatar paradoxrevolver avatar r4dian avatar rucochanman avatar smallg0at avatar sno avatar thecell avatar tong avatar vaporstack avatar wakest avatar xavoneir avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.