Skip to content

Commit

Permalink
Massive Changes to the repository
Browse files Browse the repository at this point in the history
We have a CONTRIBUTING.md file!
Files will now be formatted by Prettier (needs npm) except index.html (by BeautifulSoup)
Docs was finally updated (will still need some updates because line numbers may be off)
  • Loading branch information
NSPC911 committed Jul 13, 2024
1 parent 2433c55 commit 63a516c
Show file tree
Hide file tree
Showing 267 changed files with 2,674 additions and 6,433 deletions.
14 changes: 3 additions & 11 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,14 +1,6 @@
# Ignore Python cache files as it forms merge conflicts
pys/__pycache__/
# Remove .fleet folder
.fleet
# Ignore my shortcuts because terminal doesnt recognise them
pys/python.lnk
webUI/node.lnk
webUI/npm.lnk
# https certificate and private key
certificate.crt
private.key
ca_bundle.crt
# node modules
webUI/node_modules
package.json
package-lock.json
node_modules
56 changes: 56 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Contributing Guidelines

Thank you for considering contributing to BEComTweaks! We appreciate your time and effort. Please take a moment to review the following guidelines before making any contributions.

## Getting Started

### Apps Needed

To get started with contributing, you will require these apps on desktop
- [Git](https://git-scm.com/)
- A suitable editor
- [Fleet](https://www.jetbrains.com/fleet/)
- [VSCode](https://code.visualstudio.com/)
- [NodeJS](https://nodejs.org/en/)
- [Python](https://www.python.org/) 3.10+

For the web, [GitHub Dev](https://github.dev) is enough

### Here are the general steps to contributing!

1. Fork the repository
2. Clone the forked repository to your local copy
3. Make your desired changes
4. Commit and Push your changes
5. Create a Pull Request

### Fork the repository

You can click [here](https://github.com/BEComTweaks/resource-packs/fork) to fork the repository

### Clone the forked repository to your local copy

Generally the forked repository would be under your account, so cloning it is as simple as

```bash
git clone https://github.com/<user>/resource-packs/
```

You can also use [GitHub CLI](https://cli.github.com) or [GitHub Desktop](https://github.com/apps/desktop) to clone your repository
- If you do clone with GitHub CLI, remember to set the proper default repository, else you won't be able to push!

If you are using GitHub Dev, the url to it would be https://github.dev/<user>/resource-packs

### Commit and Push your changes

Commits here have no general guidlines, but please keep it sensible!

Make sure to run [./pys/pre_commit.py](https://github.com/BEComTweaks/resource-packs/tree/main/pys/pre_commit.py) before commiting, for a proper formatting!

You can also view your changes to the web interface at [./webUI/index.html]

### Create a Pull Request

Pull Requests also have no general guidlines, but make sure to outline what you achieved through the Pull Request!

<sub>Thanks for coming here! It helps a lot of you star this repo!</sub>
20 changes: 7 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<div align="center">

# BedrockTweaks/resource-packs
# BEComTweaks/resource-packs

![Commit Activity](https://img.shields.io/github/commit-activity/w/BedrockTweaks/resource-packs?style=for-the-badge&label=Commits&color=purple)
![GitHub repo size](https://img.shields.io/github/repo-size/BedrockTweaks/resource-packs?style=for-the-badge&label=Size&color=pink)
![Commit Activity](https://img.shields.io/github/commit-activity/w/BEComTweaks/resource-packs?style=for-the-badge&label=Commits&color=purple)
![GitHub repo size](https://img.shields.io/github/repo-size/BEComTweaks/resource-packs?style=for-the-badge&label=Size&color=pink)
<br>
![Completed Packs](https://img.shields.io/badge/Packs-378%2F385-blue?style=for-the-badge&color=blue)
![Completed Compatibilities for Packs](https://img.shields.io/badge/Compatibilities-23%2F33-cyan?style=for-the-badge&color=cyan)
Expand All @@ -13,24 +13,18 @@

> [!IMPORTANT]
> As of 2/7/24, BedrockTweaks/Files will be more favoured compared to BEComTweaks.
>
>
> Contributions here will also be directed to BedrockTweaks/Files.
<div align="left">
A repo containing every single tweak **possible** ported from <a href="https://vanillatweaks.net/picker/resource-packs">Vanilla Tweaks' Resource Packs</a> with a Command Line and Web Interface.

Docs are available at [here](https://github.com/BedrockTweaks/resource-packs/blob/main/docs/docs.md), along with a [tutorial](https://github.com/BedrockTweaks/resource-packs/blob/main/docs/Tutorial.md) on the CLI
Docs are available at [here](https://github.com/BEComTweaks/resource-packs/blob/main/docs/docs.md)

How to clone:

```bash
git clone https://github.com/BedrockTweaks/resource-packs/
cd resource-packs/pys
echo 0 | python3 folder_creator.py
```
<sub>echo is to instantly start the script with no printing. For more information, refer to [Explanation of py files](https://github.com/NSPC911/resource-packs/blob/main/docs/Explanation%20of%20py%20files.md)</sub>
Refer to [CONTRIBUTING.md](https://github.com/BEComTweaks/resource-packs/blob/main/CONTRIBUTING.md) for how to contribute to this project

Pull Requests are greatly appreciated as I do not want this to be a single person project. I can get pretty drained out from projects.

</div>
<div align=center>

Expand Down
16 changes: 10 additions & 6 deletions credits.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,26 @@
## This would not have been possible if not for the following

### Websites<br>

<br>[Vanilla Tweaks](https://vanillatweaks.net)<br>

- Without them, Bedrock Tweaks would have not been this way
<br>[Bedrock Tweaks](https://bedrocktweaks.net)<br>
<br>[Bedrock Tweaks](https://bedrocktweaks.net)<br>
- Without DrAV, this would have taken a long time to complete

### Individuals<br>

[YzaBeast1](https://github.com/yzabeast1)<br>

- Pointed out issues with my code preventing Linux Distributions from running the scripts<br>
- Made the webUI and backend if we host it
<br>[JWForever5504](https://github.com/JWForever5504)<br>
<br>[JWForever5504](https://github.com/JWForever5504)<br>
- He made like 40 of the most of incomplete packs. Helped me focus on the python scripts
<br>[MPAD2277/putraanug](https://discord.com/users/765852622946435075)<br>
<br>[MPAD2277/putraanug](https://discord.com/users/765852622946435075)<br>
- Glass Door, Trapdoors and Circular Logs for 1.20, and most ore pack compatablities
<br>[lonelyang](https://github.com/lonelyang)<br>
<br>[lonelyang](https://github.com/lonelyang)<br>
- Note block pitch particles pack
<br>[NSPC911](https://github.com/NSPC911)<br>
<br>[NSPC911](https://github.com/NSPC911)<br>
- Yep, that's me, the one who started this all!

If you contributed directly or indirectly and want a place here, contact me on Discord at `@nspg911`
If you contributed directly or indirectly and want a place here, contact me on Discord at `@nspg911`
175 changes: 86 additions & 89 deletions docs/Explanation of json files.md
Original file line number Diff line number Diff line change
@@ -1,89 +1,86 @@
# Explanation of how .json files in the jsons/packs folder work

In each file, you may see something like shown below

```json
{
"topic": "Category",
"packs": [
{
"pack_id": "Pack3",
"pack_name": "Pack 3",
"pack_description": "Test Description",
"conflict": ["Pack4"],
"compatibility": ["Pack1"]
}
]
}
```

From the example above, there is a lot going on in the json file. Even though, the objects should be self-explanatory, I will still attempt to explain them.

![Alt text](json-1.png)

> Test Image of a GUI
From the image,

1. `Category` refers to `"topic"`
2. `Pack 3` refers to `"pack_name"`
3. `Test Description` refers to `"pack_description"`

However, other things that need mentioning

1. Pack ID and Pack Name are nearly the same

VT uses a different format for Pack IDs, which make them a bit small. I wanted to finish the JSON quick, so the Pack ID is basically Pack Name without any spaces.
2. Pack 3 and Pack 4 are green when selected.

As shown in `"conflict"`, Pack4 is there, so when both Pack 3 and Pack 4 are selected, they turn into other colors to indicate the conflict. They should prevent the download from occuring as they conflict, so unlike Vanilla Tweaks, which allows conflicting packs to be downloaded, it is best to prevent it from being downloaded.
3. Compatibility modes do not appear

I feel compatibility modes would not need marking, rather let it be automatic. If they do not conflict, then why the extra colors? It may be confusing after a while.

The folder structure looks like this

`/packs/{topic}/{pack_id}/{compatibility}`

- `{topic}`

Topic from the JSON

- `{pack_id}`

Pack ID from the JSON. `{pack_name}` won't be used because it has spaces in it

- `{compatibility}`

This is hard to explain.

Here is an example of the json of a pack

```json
{
"pack_id": "UpdatedObserverTexture",
"pack_name": "Updated Observer Texture",
"pack_description": "Changes the Observer's top texture to fit in-line with the 1.14 default textures, as it was left out in that update.",
"conflict": [],
"compatibility": ["DirectionalObservers"]
}
```

In this example, Updated Observer Texture has a compatibility mode with Directional Observers

This means that the folder structure would be like this

![structure](json-2.png)


That should be how the repository would be arranged.

~~I plan on making a [Text User Interface](https://en.wikipedia.org/wiki/Text-based_user_interface), rather than jumping straight to websites. I have barely any experience with ~~`HTML`~~ and `Javascript`, so I feel if I make a bare-bones version as a TUI with Python, it would be easier to build on top of it.~~

CLI/TUI is done, the web interface isn't.

# That's it!

<sub>This took along time to finish! I hope it helps!</sub>

[<- Back to docs.md](https://github.com/BedrockTweaks/Bedrock-Tweaks-Base/blob/main/docs/docs.md)
# Explanation of how .json files in the jsons/packs folder work

In each file, you may see something like shown below

```json
{
"topic": "Category",
"packs": [
{
"pack_id": "Pack3",
"pack_name": "Pack 3",
"pack_description": "Test Description",
"conflict": ["Pack4"],
"compatibility": ["Pack1"]
}
]
}
```

From the example above, there is a lot going on in the json file. Even though, the objects should be self-explanatory, I will still attempt to explain them.

![Alt text](json-1.png)

> Test Image of a GUI
From the image,

1. `Category` refers to `"topic"`
2. `Pack 3` refers to `"pack_name"`
3. `Test Description` refers to `"pack_description"`

However, other things that need mentioning

1. Pack ID and Pack Name are nearly the same

VT uses a different format for Pack IDs, which make them a bit small. I wanted to finish the JSON quick, so the Pack ID is basically Pack Name without any spaces.

2. Pack 3 and Pack 4 are green when selected.

As shown in `"conflict"`, Pack4 is there, so when both Pack 3 and Pack 4 are selected, they turn into other colors to indicate the conflict. They should prevent the download from occuring as they conflict, so unlike Vanilla Tweaks, which allows conflicting packs to be downloaded, it is best to prevent it from being downloaded.

3. Compatibility modes do not appear

I feel compatibility modes would not need marking, rather let it be automatic. If they do not conflict, then why the extra colors? It may be confusing after a while.

The folder structure looks like this

`/packs/{topic}/{pack_id}/{compatibility}`

- `{topic}`

Topic from the JSON

- `{pack_id}`

Pack ID from the JSON. `{pack_name}` won't be used because it has spaces in it

- `{compatibility}`

This is hard to explain.

Here is an example of the json of a pack

```json
{
"pack_id": "UpdatedObserverTexture",
"pack_name": "Updated Observer Texture",
"pack_description": "Changes the Observer's top texture to fit in-line with the 1.14 default textures, as it was left out in that update.",
"conflict": [],
"compatibility": ["DirectionalObservers"]
}
```

In this example, Updated Observer Texture has a compatibility mode with Directional Observers

This means that the folder structure would be like this

![structure](json-2.png)

That should be how the repository would be arranged.

# That's it!

<sub>This took along time to finish! I hope it helps!</sub>

[<- Back to docs.md](https://github.com/BedrockTweaks/Bedrock-Tweaks-Base/blob/main/docs/docs.md)
Loading

0 comments on commit 63a516c

Please sign in to comment.