modules/README.md

113 lines
4.6 KiB
Markdown
Raw Permalink Normal View History

2024-12-16 23:37:49 -05:00
# modules
![Last Update](https://img.shields.io/badge/last_update-1_Mar_2024-blue)
2024-12-16 23:37:49 -05:00
[![License: Unlicense](https://img.shields.io/badge/license-Unlicense-blue.svg)](http://unlicense.org/)
[![Join Telegram Channel](https://img.shields.io/badge/join_channel-telegram-blue)](https://t.me/pontushub)
[![Build and Push Docker Image](https://github.com/ihatenodejs/modules/actions/workflows/docker.yml/badge.svg)](https://github.com/ihatenodejs/modules/actions/workflows/docker.yml)
[![Bump Dependencies](https://github.com/ihatenodejs/modules/actions/workflows/bump.yml/badge.svg)](https://github.com/ihatenodejs/modules/actions/workflows/bump.yml)
[![Codacy Security Scan](https://github.com/ihatenodejs/modules/actions/workflows/codacy.yml/badge.svg)](https://github.com/ihatenodejs/modules/actions/workflows/codacy.yml)
2024-12-16 23:37:49 -05:00
An open-source Magisk modules and root/FOSS app store
This is my first project which uses `bun`.
Modules does **NOT** host the modules themselves, and only provides downloads to third-party sources. Its database is open source, and is the `apps.json` and `modules.json` files.
2024-12-16 23:37:49 -05:00
Unless a module is labeled `SelfHost`, I am not hosting the file in question.
An Android version of Modules is in the works [here](https://git.pontusmail.org/aidan/modules-android)
## Contributing
2024-12-16 23:37:49 -05:00
If you would like to contribute, please know I appreciate it very much!
2025-03-01 17:17:58 -05:00
The backend works on Node.js with Express, EJS, and Tailwind CSS.
Each time the code is updated, make sure you run `bun run build:css` to build the latest CSS file for deployment.
2024-12-16 23:37:49 -05:00
You can either contribute code (start with `app.js`) or your time to the `apps.json` database and `modules.json`. JSON formatting is pretty easy to learn.
Please create pull requests and issues, and be generally respectful and patient.
## Setting up and self-hosting
2024-12-16 23:37:49 -05:00
1. First, clone the repository:
2024-12-16 23:37:49 -05:00
```bash
git clone https://github.com/ihatenodejs/modules.git
```
2024-12-16 23:37:49 -05:00
2. Next, let's install Bun (if you don't already have it). You can see more about Bun [here](https://bun.sh/).
2024-12-16 23:37:49 -05:00
**Windows (PowerShell)**
```powershell
2024-12-16 23:37:49 -05:00
powershell -c "irm bun.sh/install.ps1 | iex"
```
2024-12-16 23:37:49 -05:00
**Linux/macOS:**
2024-12-16 23:37:49 -05:00
```bash
curl -fsSL https://bun.sh/install | bash
```
2024-12-16 23:37:49 -05:00
3. Now, let's install everything with:
```bash
2024-12-16 23:37:49 -05:00
bun install
```
2024-12-16 23:37:49 -05:00
4. After that, we'll build the Tailwind CSS:
```bash
2024-12-16 23:37:49 -05:00
bun run build:css
```
2024-12-16 23:37:49 -05:00
5. Finally, we start the server on port `3000`:
```bash
2024-12-16 23:37:49 -05:00
bun app.js
```
2024-12-17 00:04:42 -05:00
Your server can now be accessed at http://localhost:3000, and can be used in conjunction with a reverse proxy to get a functional site up.
## Contributing/Tagging Guidelines
### Apps
2025-03-01 17:17:58 -05:00
- `SelfHost`: If you are hosting the file yourself (or it is on my server), please add the `SelfHost` tag to the module. This will allow users to know that the file is hosted apart from the original source location or one is not available and must be self-hosted. Always use a trusted source (e.g., GitHub) when possible.
- `Root`: If the module requires root access, please add the `Root` tag to the module.
- `FOSS`: If the module is open-source, please add the `FOSS` tag to the module.
### Modules
2025-03-01 17:17:58 -05:00
- `SelfHost`: If you are hosting the file yourself (or it is on my server), please add the `SelfHost` tag to the module. This will allow users to know that the file is hosted apart from the original source location or one is not available and must be self-hosted. Always use a trusted source (e.g., GitHub) when possible.
- `FOSS`: If the module is open-source, please add the `FOSS` tag to the module.
- `Zygisk`: If the module requires Zygisk, please add the `Zygisk` tag to the module.
- `LSPosed`: If the module requires/includes LSPosed (support), please add the `LSPosed` tag to the module.
- `Riru`: If the module requires/includes Riru (support), please add the `Riru` tag to the module.
### Guidelines
1. Always use a trusted source when possible.
2. All pull requests will be manually reviewed to ensure the quality/safety of the database.
3. Please be patient with the review process.
4. If you have any questions, please ask in the Telegram channel (see top of README).
## To-Do
- [ ] Add Docker documentation
- [ ] Add category support
- [ ] Support filtering by category
- [X] Add submissions (done via Telegram)
2025-02-07 06:55:05 +00:00
- [ ] Add button/prompting for submissions
- [ ] (Apps only) Add to Obtainium button
- [ ] Add search functionality
2025-01-21 14:58:44 +00:00
- [ ] Migrate frontend to Next
- [ ] Fix Issue #1 (See Issue <https://github.com/ihatenodejs/modules/issues/1>)
2025-03-01 17:17:58 -05:00
→ Add JingMatrix LSPosed Riru release once done (broken by issue)
2025-03-01 17:17:58 -05:00
→ Add ReVanced microG Huawei release once done (broken by issue)
2025-03-01 17:17:58 -05:00
→ Add Iconify multi-arch releases once done (broken by issue)