Code Monkey home page Code Monkey logo

firefoxcss-store.github.io's Introduction

FirefoxCSS-Store


A collection site of Firefox userchrome themes, mostly from FirefoxCSS Reddit.
Preview here.


Generic Installation

  • Go to the wanted theme and click the download button.
  • You should now be on the Github page for that topic.
  • Below you should see a guide on how to install that particular theme and a few preview pictures. Anyway, here are some common steps for all themes.
  1. Download the theme with the big green button: "Code" >> Download.zip

  2. Open about:config page.

  3. A dialog will warn you, but ignore it, just do it press the I accept the risk! button.

  4. Search for these:

    • toolkit.legacyUserProfileCustomizations.stylesheets
    • layers.acceleration.force-enabled
    • gfx.webrender.all
    • gfx.webrender.enabled
    • layout.css.backdrop-filter.enabled
    • svg.context-properties.content.enabled

    Then make sure to enable them all!

  5. Go to your Firefox profile.

    • Linux - $HOME/.mozilla/firefox/XXXXXXX.default-XXXXXX/.
    • Windows - C:\Users\<USERNAME>\AppData\Roaming\Mozilla\Firefox\Profiles\XXXXXXX.default-XXXXXX.
    • macOS - Users/<USERNAME>/Library/Application Support/Firefox/Profiles/XXXXXXX.default-XXXXXXX.
  6. Create a folder and name it chrome, then assuming that you already have cloned this repo, just copy the theme to chrome folder.

  7. Restart Firefox.


Add your theme <3

  • If you have a Github account:

    1. Fork this repository
    2. Look for a file called themes.json, open and edit it
    3. Below the last } add , right after a copy the code below and paste it in the file
    4. Add the properties of your theme: title, link, description, image and tag (Cannot be left empty)
    5. Avoid the use of escaped characters, and the order matters
    6. Please, do not use a very big image, preferably (650x500)
    7. Image property:
    • You can put an image URL
    • Or an image file in /images/themes/ (The file extension doesn't matter). And then reference it in your code with the following assets/img/themes/YOUR_FILE_NAME_WITHOUT_EXTENSION.webp
    1. Then send it as a pull request to this repository.
  • Or create an Issue:

    1. When creating an issue, you will find a template for submitting a theme. Use that one. It's easy.
  • If you have a Twitter account:

    1. Send at least the following properties: tags, title, link, description, and picture to @Neikon66.
  {
    "title": "..........",
    "link": "..........",
    "description": "..........",
    "image": "..........",
    "tags": [ "your username/name", "theme type: dark", "theme type: light", "............." ]
  }

What do you think =?

Feel free to send me any feedback via issue or my twitter @Neikon66.

firefoxcss-store.github.io's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

firefoxcss-store.github.io's Issues

Add last updated date to themes

Is your feature request related to a problem? Please describe.

Not having this information readily available, and having to go to all theme's repository to know this.

Describe the solution you'd like

I think having a last updated date somewhere would be useful to let people know if they want to use it, because otherwise maybe the theme will be outdated or will not work properly.

Additionally, maybe having something like "Photon compatible", "Proton compatible, and so on, since there some forks of Firefox that are not up to date in comparison or use other themes may be compatible with older versions.

Describe alternatives you've considered

N/A

Additional context

N/A

[NEWTHEME] Dark Star

{
		"title": "Dark Star",
		"link": "https://gitlab.com/ivelieu/dark-star-firefox-skin",
		"description": "A color-customizable, zero navbar padding skin, modified from Starry Fox",
		"image": "https://gitlab.com/ivelieu/dark-star-firefox-skin/-/raw/main/showcase/darkstar_3.png"
                "tags": [ "Ivelieu", "dark", "minimal", "zeropadding", "customizable"]
}

Three Rows Simple Compact Clean CSS

{
		"title": "Three Rows Simple Compact Clean CSS",
		"link": "https://github.com/hornster02/Firefox-Three-Rows-Simple-Compact-Clean-CSS",
		"description": "..........",
		"image": ".........."
}

_firefox (230% DPI +14 tabs) - tweak

[NEWTHEME] MacOSVibrant

{
		"title": "MacOSVibrant",
		"link": "https://github.com/Tnings/MacosVibrant",
		"description": "A theme that uses MacOS Vibrancy and is styled after other Apple Apps",
		"image": "https://raw.githubusercontent.com/Tnings/MacosVibrant/main/Images/pic_smaller.png"
	}

images to webp

I find this https://github.com/1000ch/gulp-cwebp
It could be added to our workflow to automatically convert our images, with a 2º github action or in the one we already have

maybe we could make it run automatically when there are changes in the "theme.json" file.

the only inconvenient is that we must remember to include in the "theme.json" the url of the image already with the ".webp". if I am not mistaken.

[NEWTHEME] ViceFox

{
		"title": "ViceFox",
		"link": "https://vicefox.vercel.app",
		"description": "Don't ask why it's called "ViceFox"",
		"image": "https://github.com/jtlw99/vicefox/blob/main/images/preview.png?raw=true"
                "tags": [ "clean", "compact", "safari", "minimal", "macos"]
}

[NEWTHEME] ImpossibleFox

{
		"title": "ImpossibleFox",
		"link": "https://github.com/Naezr/ImpossibleFox",
		"description": "A simple and fast one-line theme for Firefox inspired by Safari's compact layout. ",
		"image"https://github.com/FirefoxCSS-Store/FirefoxCSS-Store.github.io/assets/95460152/86fe75ca-6b4d-4d48-8fd6-bcc593309237"
                "tags": [ "Naezr", "theme type: dark", "theme type: light", "oneline" ]
}

[NEWTHEME] Firefox-ONE

{
		"title": "Firefox-ONE",
		"link": "https://github.com/Godiesc/firefox-one",
		"description": "Dress Firefox with the Opera One skin",
		"image": "https://user-images.githubusercontent.com/22057609/260323306-453c2917-8cee-4424-b550-e4e38f492c84.png",
               "tags": ["Godiesc", "opera", "one", "opera-one", "firefox", "firefox-one", "theme", "adaptive", "tree", "tabs"]
}

Optimizations / Changes?

A few things I am thinking after looking at the code.

  1. I think it would be easier for developers and people who made themes to put them here with PUG to render the HTML5 code;
  2. And to help optimizing and creating a better code, it would definitely be easier if it was made with npm, hence making easier scripts and live preview feature.
  3. Animations, they are heavy and take some time to load, maybe removing them or changing their load times.

I'd be happy to help with everything, I am just going to include a Pull request with some grammar corrections along this post, too.

Make Themes easier to find / Search / Limited Display

With more and more themes being added to the list things get a little cluttered.

I've been thinking about maybe trying to implement a search system. Since the themes are stored in a json object it shouldn't be too hard to add a .filter function to limit the results. This would require to add a new field fo keywords, and some tagging of the already listed themes.
I do think that it's worth the effort tho because it makes it a easier for the user to find what they're looking for.

With this feature in place it could also be beneficial to limit the amount of results that are displayed upon the first page visit to the recently added X amount of themes instead of listing everything by default as this reducdes page loading time by a lot.

Edit: Instead of taking the latest themes to display on the front page we could also (finally) do a random sort as suggested in #30 .. :D

I'd be willing to tinker around with this and implement the features but that's something I can't just decide on my own. So feel free to tell me your thoughts and ideas. ^—^

[NEWTHEME] SimpleFox Feather

{
		"title": "SimpleFox Feather Edition",
		"link": "https://github.com/BlueFalconHD/SimpleFox-Feather/",
		"description": "A fork of SimpleFox that uses feather icons!",
		"image": "https://github.com/BlueFalconHD/SimpleFox-Feather/raw/master/assets/head.png"
}

[NEWTHEME] Essence

{
		"title": "Essence",
		"link": "https://github.com/JarnotMaciej/Essence",
		"description": "Compact, beautiful and minimalistic theme for the Firefox web browser.",
		"image": "https://github.com/JarnotMaciej/Essence/assets/92025751/de5ec935-e021-46b6-8e50-fee27d95e6dc"
                "tags": [ "compact", "minimal", "light", "modern", "oneline", "rounded", "clean" ]
}

FirefoxCSS Installer

Is your feature request related to a problem? Please describe.
The cumbersome installation steps are one of the reasons that prevent people from using userChrome.css.
It would be helpful to have an theme installer.

Describe the solution you'd like
I made a installer prototype, currently it only works on Linux, but it is easy to make it support other platforms.

If you are interested, I can move the repo to FirefoxCSS-Store and improve it together.

Describe alternatives you've considered
N/A

Additional context
N/A

[NEWTHEME] pro-fox

{
		"title": "pro-fox: enhanced firefox proton",
		"link": "https://github.com/xmansyx/Pro-Fox",
		"description": "a proton based theme to make it even better",
		"image": "https://raw.githubusercontent.com/xmansyx/Pro-Fox/main/previews/Screenshot%20from%202021-06-16%2018-57-31.png"
}

Use /docs folder for deployment

GitHub Pages offers to serve from the /docs folder instead of the root directory.
I'd suggest that we switch to that to declutter the repository a little bit.

What are your thoughts on this? c:

Make images expandable

Is your feature request related to a problem? Please describe.

Right now it is necessary to go to each theme's repository in order to preview them.

Describe the solution you'd like

If one could click the images to expand them and be able to appreciate how the theme looks without leaving the store, it would be a more comfortable experience in order to decide which one to choose.

Describe alternatives you've considered

N/A.

Additional context

The link to the repository could be contained within the theme's name, or in a GitHub, Gitlab, etc logo inside the drop down menu.

[NEWTHEME] Rounded-Fox

{
		"title": "rounded-fox",
		"link": "https://github.com/Etesam913/rounded-fox",
		"description"A minimalist theme that uses animation to hide visual clutter.",
		"image": "https://user-images.githubusercontent.com/55665282/221055856-8690c288-d236-4905-a58e-78e11b8238e3.gif",
                "tags": ["clean", "compact", "minimalist", "dark", "light", "animation"]
}

[NEWTHEME] Edge-FrFox

{
		"title": "Edge-FrFox",
		"link": "https://github.com/bmFtZQ/Edge-FrFox",
		"description": "A theme that replicates the look of Microsoft Edge",
		"image": "https://raw.githubusercontent.com/bmFtZQ/Edge-FrFox/main/screenshots/Edge-FrFox.png"
}

Site content as MD

I've created a feature branch for markdown in Pug support. This way site content (like the disclaimer) would also get displayed nicely when viewed on GitHub – well, and it's easier to write for people that aren't used to pug.

I really like the idea and it doesn't really add any extra bloat. This could come in quite handy when we decide that we maybe want to display more content on the site. Things that I have in mind would be the generic tutorial or the theme submission guideline. c:

What are your thoughts on this?

Add support for "theme_experiment" addons

Background
Firefox has a process known as "Experiments" that are used to create new webextention apis. Depending on the popularity and quality of these APIs, they get uplifted to stable Firefox. For example, the top-sites api started as an experiment and has been uplifted into Firefox.

Is your feature request related to a problem? Please describe.
Currently, installing userchrome customizations is a finicky process that involves messing around in the Firefox.

Describe the solution you'd like
Firefox has an experimental theming option available to webextentions called theme_experiment, which allows the loading of custom css files as part of a theme. It would be more convenient for users to install a theme than to place files in their file system.

Describe alternatives you've considered
#69 tries to solve the same issue, however, its solution would require the installation of third party software, increasing the barrier to entry.

Additional context
Browser support is a bit iffy for this type of addon. Waterfox works flawlessly, so long as you move out of their compact UI mode. Firefox developer edition (and, in theory, firefox nightly) work so long as you disable xpinstall.signatures.required and enable extensions.experiments.enabled. Firefox Beta and Stable do not work at all.

Currently, the only addon that supports this form of theme is my fork of cascade I used for testing this. If you want to test it out, use one of the browsers above and install the XPI from this release.

For more information about packaging themes, see cascadefox/cascade#23

[NEWTHEME] OnelineProton

{
		"title": "OnelineProton",
		"link": "https://github.com/lr-tech/OnelineProton",
		"description": "An oneline userChrome.css theme for Firefox, which aims to keep the Proton experience ",
		"image": "https://raw.githubusercontent.com/lr-tech/OnelineProton/master/screenshot.png
}

screenshot

Thunderbird section

Mozilla Thunderbird also supports customization through the userchrome.css file. It would be very useful if the store had a separate section for Thunderbird.

Security Risk – insertAdjacentHTML

While I really like the use of template literals, using insertAdjacentHTML in our main.js has one major flaw: We need to make sure that we sanatise the JSON data.

As long as we manually review and merge new themes this isn't a big deal. But if we decide to fully automate the process later on we have to keep that in mind to prevent unwanted JavaScript from getting invoked at runtime.

[NEWTHEME] Name of your theme

{
		"title": "Chameleons-Beauty to Firefox CSS",
		"link": "https://github.com/Godiesc/Chameleons-Beauty",
		"description": "Adaptive Theme to Firefox Themes",
		"image": "https://i.imgur.com/RLD0a40.jpeg"
}

[NEWTHEME] Firefox Safari 15 Theme

{
		"title": "Firefox 'Safari 15' Theme",
		"link": "https://github.com/denizjcan/Firefox-Safari-15-Theme",
		"description": "A Firefox theme that emulates the Safari 15 interface and new tab page",
		"image": "https://github.com/denizjcan/Firefox-Safari-15-Theme/blob/main/Resources/safari2.png?raw=true"
	}

[NEWTHEME] Firefox-Alpha 🗿

{
		"title": "Firefox-Alpha",
		"link": "https://github.com/Tagggar/Firefox-Alpha",
		"description": "Super clear desktop browser with zero buttons and gesture controls",
		"image": "https://raw.githubusercontent.com/Tagggar/Firefox-Alpha/main/assets/preview.gif"
}

Add FirefoxW10ContextMenus

I hesitated to submit this since it's not a complete theme, but I feel like it's worthy to display in a CSS Store.

https://github.com/M1ch431/FirefoxW10ContextMenus

{
		"title": "FirefoxW10ContextMenus",
		"link": "https://github.com/M1ch431/FirefoxW10ContextMenus",
		"description": "Emulates the Windows 10 context menus in Firefox.",
		"image": "https://raw.githubusercontent.com/M1ch431/FirefoxW10ContextMenus/master/Preview.png"
}

Re-sorting the latest don't show you any change if you don't refresh the website

Describe the bug
You need to refresh the website to see the changes after re-sorting it by the most recent topics.

To Reproduce
Steps to reproduce the behavior:

  1. Click the sort button to switch between sort types.
  2. When you switch to random, you instantly see the new sort, and the same with the oldest one.
  3. But when you click to switch back to the "latest" sort, you see no change if you do not refresh the website.

Expected behavior
When you come back to "latest" sort, you should see the changes like the others sorting modes

By the way, thank you very much for the new feature 😁

Page issue

Describe the bug
The style Monterrey Fox no page goes to a 404 error page

To Reproduce
Steps to reproduce the behavior:

  1. You just click on Monterrey Fox

Expected behavior
The page should load

Desktop (please complete the following information):

  • OS: [e.g. Linux distro: Garuda Linux (Arch_based)
  • Firefox, Firefox Nightly, Firefox-Developer-Editin, FireDragon (Firefox fork)
  • Version [e.g. 22] 90.0.2

Sort randomly

they could be sorted randomly on the user's device or every time we add a new theme.
Can we do that?

[NEWTHEME] silentfox

{
		"title": "silentfox",
		"link": "https://github.com/themoonmeetsthesun/silentfox",
		"description": "A silent theme which lets you focus on your work",
		"image": "https://github.com/themoonmeetsthesun/silentfox/blob/stable/images/lightmode.png?raw=true"
		"tags": [ "themoonmeetsthesun", "silent", "focused"]
}

Disclaimer Changes Proposal

The more I think about it, the more I want to change the company to something different. It just doesn't really sound all that fitting. Maybe something like the author would be better?

[NEWTHEME] Edgefox

EdgeFox

{
		"title": "EdgeFox",
		"link": "https://github.com/23Bluemaster23/EdgeFox",
		"description": "Is a userchrome that imitates (or attempts to imitate) the style of Microsoft's Edge Chromiun browser.",
		"image": "assets/img/themes/EdgeFox.webp"
}

Fixes that will bring the ability to support NixOS home-manager

Is your feature request related to a problem? Please describe.
I want to create a NixOS flake that will contain all the themes from themes.json. For that, I need a 100% stable way to get all the CSS that need to be imported and all the Firefox settings that should be changed in order to use the theme.

Describe the solution you'd like
Add those descriptors to the themes.json file so they can be easily parsed so then I can create a home-manager module and make a PR to home-manager repo and/or to this repository in form of flake.nix (many github repos already include a way to easily use them on NixOS, ex. Hyprland (Wayland window manager) - https://github.com/hyprwm/Hyprland/blob/main/flake.nix)

Additional context
We can already easily configure Firefox declaratively on NixOS.
image
So I can write a module that will provide NixOS users with something like:

programs.firefox.profiles.<name>.cssStoreTheming = {
  enable = true;
  theme = pkgs.firefoxCssStore.themes.essense;
}

Build via GitHub Actions

I thew together a really simple Actions workflow to build the project from source on demand. This means that for now this has to be triggered manually.

'Run workflow' button to build the project

Just hit the **Run Workflow** button and let it do the magic. It will automatically get the npm packages, run the `build` step and then commit everything back into the branch. c:

Opera-GX to Firefox CSS

{
		"title": "Opera-GX to Firefox CSS",
		"link": "https://github.com/Godiesc/opera-gx",
		"description": "Firefox Theme CSS to Opera-GX Lovers.",
		"image": "https://user-images.githubusercontent.com/22057609/146305253-e257fbc0-993b-4e79-a0b4-0c0e6c95228b.png"
		"tags": [ "Godiesc", "dark", "opera","gx","theme","adapted","fuchsia","blue" ]
}

[NEWTHEME] NicoFox

{
		"title": "NicoFox",
		"link": "https://github.com/SlowNicoFish/NicoFox",
		"description": "A simple rounded theme",
		"image": "![preview](https://user-images.githubusercontent.com/19305293/112138598-fe8cd400-8bd1-11eb-8eed-edcca2c689d8.png) "

}

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.