{"id":28414550,"url":"https://github.com/hakanbaban53/firefox-theme-installer","last_synced_at":"2025-10-09T16:17:25.053Z","repository":{"id":244909138,"uuid":"786840838","full_name":"Hakanbaban53/Firefox-Theme-Installer","owner":"Hakanbaban53","description":"My RealFire theme installers written with python customtkinter and tkinter.","archived":false,"fork":false,"pushed_at":"2025-02-04T10:59:50.000Z","size":3682,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-14T06:30:22.426Z","etag":null,"topics":["customtkinter","firefox","firefox-theme","python","tkinter"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Hakanbaban53.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-04-15T12:06:23.000Z","updated_at":"2025-06-28T17:04:19.000Z","dependencies_parsed_at":"2024-07-16T13:07:59.529Z","dependency_job_id":"c119f402-c480-46f2-b2a8-1b49184575d0","html_url":"https://github.com/Hakanbaban53/Firefox-Theme-Installer","commit_stats":null,"previous_names":["hakanbaban53/realfire-installer","hakanbaban53/firefox-theme-installer"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/Hakanbaban53/Firefox-Theme-Installer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hakanbaban53%2FFirefox-Theme-Installer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hakanbaban53%2FFirefox-Theme-Installer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hakanbaban53%2FFirefox-Theme-Installer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hakanbaban53%2FFirefox-Theme-Installer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Hakanbaban53","download_url":"https://codeload.github.com/Hakanbaban53/Firefox-Theme-Installer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hakanbaban53%2FFirefox-Theme-Installer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001767,"owners_count":26083171,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["customtkinter","firefox","firefox-theme","python","tkinter"],"created_at":"2025-06-03T08:15:52.871Z","updated_at":"2025-10-09T16:17:24.741Z","avatar_url":"https://github.com/Hakanbaban53.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\u003ch1 align=\"center\"\u003e\n  \u003cbr\u003e\n  \u003ca\u003e\u003cimg src=\"assets/pages/home.png\" alt=\"Firefox Theme Installer\" width=\"800\"\u003e\u003c/a\u003e\n  \u003cbr\u003e\n  Firefox Theme Installer\n  \u003cbr\u003e\n\u003c/h1\u003e\n\n\u003ch4 align=\"center\"\u003eA minimal Firefox theme installer written with \u003ca href=\"https://www.python.org\" target=\"_blank\"\u003ePython\u003c/a\u003e.\u003c/h4\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#-key-features\"\u003eKey Features\u003c/a\u003e •\n  \u003ca href=\"#-screenshots\"\u003eScreenshots\u003c/a\u003e •\n  \u003ca href=\"#%EF%B8%8F-build-for-testing\"\u003eBuild For Testing\u003c/a\u003e •\n  \u003ca href=\"#-download\"\u003eDownload\u003c/a\u003e •\n  \u003ca href=\"#-folder-structure\"\u003eFolder Structure\u003c/a\u003e •\n  \u003ca href=\"#-license\"\u003eLicense\u003c/a\u003e\n\u003c/p\u003e\n\n## 🏞 Screenshots\n\n\u003cdetails\u003e\u003csummary\u003ePages\u003c/summary\u003e\n\n\u003ch3 align=\"center\"\u003eInstall Page\u003c/h3\u003e\n\u003cp align=\"center\" style=\"max-heigh:250px\"\u003e\u003cimg src=\"assets/pages/install.png\"\u003e\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003eRemove Page\u003c/h3\u003e\n\u003cp align=\"center\" style=\"max-heigh:250px\"\u003e\u003cimg src=\"assets/pages/remove.png\"\u003e\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003eStatus Page\u003c/h3\u003e\n\u003cp align=\"center\" style=\"max-heigh:300px\"\u003e\u003cimg src=\"assets/pages/status.png\"\u003e\u003c/p\u003e\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\u003csummary\u003eModals\u003c/summary\u003e\n\n\u003ch3 align=\"center\"\u003eThemes Modal\u003c/h3\u003e\n\u003cp align=\"center\" style=\"max-heigh:150px\"\u003e\u003cimg src=\"assets/modals/themes.png\"\u003e\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003eTheme Detail\u003c/h3\u003e\n\u003cp align=\"center\" style=\"max-heigh:150px\"\u003e\u003cimg src=\"assets/modals/theme_details.png\"\u003e\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003eInfo Modals\u003c/h3\u003e\n\u003cp align=\"center\" style=\"max-heigh:150px\"\u003e\u003cimg src=\"assets/modals/attention.png\"\u003e\u003cimg src=\"assets/modals/exit.png\"\u003e\u003c/p\u003e\n\n\u003c/details\u003e\n\n## 🔐 Key Features\n\n* Cross platform\n* Custom theme support\n* Theme preview before installation\n* Custom script loader support\n\n## ⚡ Download\nYou can [download](https://github.com/Hakanbaban53/Firefox-Theme-Installer/releases) the latest installable version of Firefox Theme Installer for Windows and Linux (I add the MacOS path but I didn't test it because I don't have a MacOS device).\n\n## ❓ How Its Work \n\nWhen you install a Firefox theme, the app checks for the presence of `userChrome.css` or `userContent.css` files. If either of these files is found, the app will copy all associated files and directories from the location of the `userChrome.css` or `userContent.css` file. If neither file is found, the app will return an error message: `No theme data or userChrome.css found`.\n\nAll themes installing with the app are stored in the `themes` directory. This folder under the cache directory. If you want to remove a theme, you can do it from the app or manually delete the theme folder from the `themes` directory. Here is the [directory](src/data/static/os_properties.py) of the cache directory.\n\n## 🏗️ Test and Build\n\nTo test and build the app, check the [test](docs/test.md) guide.\n\n## 🚀 Issues\n\nIf you encounter any issues or have suggestions for improvements, please feel free to open an issue on our [GitHub Issues page](https://github.com/Hakanbaban53/Firefox-Theme-Installer/issues). We welcome contributions and feedback from the community to make this project better.\n\n### ❓ How to Report an Issue\n\n1. **Search Existing Issues**: Before opening a new issue, please check if the issue has already been reported.\n2. **Create a New Issue**: If your issue is not listed, create a new issue and provide detailed information.\n  - **Title**: A clear and descriptive title.\n  - **Description**: A detailed description of the issue, including steps to reproduce, expected behavior, and actual behavior.\n  - **Screenshots**: If applicable, include screenshots to help illustrate the issue.\n  - **Environment**: Specify the environment in which the issue occurs (e.g., OS, Python version, etc.).\n\n### 🌟 Feature Requests\n\nWe also welcome feature requests! If you have an idea for a new feature or an improvement, please open an issue and label it as a feature request. Provide as much detail as possible to help us understand your suggestion.\n\nThank you for helping us improve Firefox Theme Installer!\n\n## 🌟 Contributions\n\nWe welcome contributions from the community to help improve Firefox Theme Installer. If you would like to contribute, please follow these steps:\n\n1. **Fork the Repository**: Click the \"Fork\" button in the upper right corner of the repository.\n2. **Clone the Repository**: Clone the forked repository to your local machine.\n3. **Create a New Branch**: Create a new branch for your contribution.\n4. **Make Changes**: Make your changes to the codebase. If you are adding a new language check the [adding a new language](docs/language.md) guide.\n5. **Commit Changes**: Commit your changes with a descriptive commit message.\n6. **Push Changes**: Push your changes to your forked repository.\n7. **Create a Pull Request**: Create a pull request to the main repository with your changes.\n\n\n## 📂 Folder structure\n\n```css\n🗃\n├── 🗎 readme.md\n├── 🗎 LICENSE\n├── 🖿 assets\n│   └── 🖻 Preview images\n└── 🖿 src\n    ├── ⚙️ app.py\n    ├── 🖿 assets\n    │   ├── 🖻 block_spinner.gif\n    │   ├── 🖻 firefox.ico\n    │   └── 🖻 Other assets\n    ├── 🖿 core\n    │   ├── 🖿 component_tools\n    │   │   ├── 🗎 preview_theme.py\n    │   │   ├── 🗎 special_input_functions.py\n    │   │   └── 🗎 thread_manager.py\n    │   ├── 🖿 data_tools\n    │   │   ├── 🗎 get_folder_locations.py\n    │   │   ├── 🗎 get_os_properties.py\n    │   │   ├── 🗎 get_theme_data.py\n    │   │   ├── 🗎 image_loader.py\n    │   │   ├── 🗎 language_manager.py\n    │   │   └── 🗎 load_json_data.py\n    │   ├── 🖿 file_utils\n    │   │   ├── 🗎 detect_and_download_files.py\n    │   │   ├── 🗎 file_actions.py\n    │   │   └── 🗎 get_the_theme_files.py\n    │   └── 🖿 window_tools\n    │       └── 🗎 center_window.py\n    ├── 🖿 data\n    │   ├── 🖿 language\n    │   │   └── 🗎 Language Data Files (json)\n    │   ├── 🖿 online\n    │   │   └── 🗎 fx-autoconfig.json\n    │   └── 🖿 static\n    │       ├── 🖿 components\n    │       │   ├── 🖿 inputs_and_checkboxes\n    │       │   │   └── 🗎 data.py\n    │       │   └── 🖿 navigation_buttons\n    │       │       └── 🗎 data.py\n    │       ├── 🗎 global_data.py\n    │       └── 🗎 os_properties.py\n    └── 🖿 UI\n        ├── 🖿 components\n        │   ├── 🗎 create_detect_installed_theme.py\n        │   ├── 🗎 create_header.py\n        │   ├── 🗎 create_inputs_and_checkboxes.py\n        │   ├── 🗎 create_navigation_button.py\n        │   └── 🗎 set_window_icon.py\n        ├── 🖿 modals\n        │   ├── 🗎 info_modals.py\n        │   ├── 🗎 theme_detail_modal.py\n        │   └── 🗎 theme_modal.py\n        └── 🖿 pages\n            ├── 🗎 home_page.py\n            ├── 🗎 install_page.py\n            ├── 🗎 remove_page.py\n            └── 🗎 status_page.py\n```\n\n## 🔑 License\n\nFirefox Theme Installer is licensed under the [MIT License](LICENSE).\n\n---\n\n\u003ch1 align=\"center\"\u003e Hakan İSMAİL ❤️‍🔥 \u003c/h1\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhakanbaban53%2Ffirefox-theme-installer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhakanbaban53%2Ffirefox-theme-installer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhakanbaban53%2Ffirefox-theme-installer/lists"}