Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update FAPI/QSL comparative table #379

Open
wants to merge 5 commits into
base: 1.21
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
163 changes: 90 additions & 73 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,15 +34,17 @@ Quick legend:
- ❌ = Not Included/Not Yet
- 🙅 = No plans
- 🚧 = Work In Progress
- ⏳ = Stalled

### Core Library

| Feature | QSL | Fabric API |
|:----------------------------------|:---:|:-------------:|
| Auto Test Server argument | ✔ | ❌ |
| Feature | QSL | Fabric API |
|:----------------------------------|:---:|:--------------:|
| Auto Test Server argument | ✔ | ❌ |
| Data callback API | ✔ | ✔ |
| Event API | ✔ | ✔ |
| Event API - Phases | ✔ | ✔ |
| Event API - Events as Entrypoints | ✔ | ❌ |
| Event API - Events as Entrypoints | ✔ | ❌ |
| Gametest API | ✔ | ✔ |
| Initializer Entrypoints | ✔ | ✔ (in loader) |
| Networking API | ✔ | ✔ |
Expand All @@ -51,8 +53,8 @@ Quick legend:

| Feature | QSL | Fabric API |
|:-------------------------------|:---:|:----------:|
| Crash report extra context | ✔ | ✔ |
| Crash report extra context API | ✔ | ❌ |
| Crash report extra context | ✔ | ✔ |
| Crash report extra context API | ✔ | ❌ |

### Core - Lifecycle Events

Expand All @@ -61,24 +63,31 @@ Quick legend:
| Client Lifecycle Events | ✔ | ✔ |
| Client Tick Events | ✔ | ✔ |
| Client World Tick Events | ✔ | ✔ |
| Client Block Entity Events | ❌ | ✔ |
| Client Chunk Events | ❌ | ✔ |
| Common Lifecycle Events | ❌ | ✔ |
| Client Block Entity Events | ❌ | ✔ |
| Client Chunk Events | ❌ | ✔ |
| Client Entity Events | ❌ | ✔ |
| Common Lifecycle Events | ❌ | ✔ |
| Server Lifecycle Events | ✔ | ✔ |
| Server Tick Events | ✔ | ✔ |
| Server World Load Events | ✔ | ✔ |
| Server World Tick Events | ✔ | ✔ |
| Server Block Entity Events | ❌ | ✔ |
| Server Chunk Events | ❌ | ✔ |
| Server Block Entity Events | ❌ | ✔ |
| Server Chunk Events | ❌ | ✔ |
| Server Entity Events | ❌ | ✔ |

### Core - Registry

| Feature | QSL | Fabric API |
|:--------------------------------------------|:---:|:----------:|
| Addition Events | ✔ | ✔ |
| Addition Events Helper | ✔ | ❌ |
| Registry Syncing | ✔ | ✔ |
| Registry Syncing - Exclude Specific Entries | ✔ | ❌ |
| Addition Events | ✔ | ✔ |
| Addition Events Helper | ✔ | ❌ |
| Dynamic Registry Setup Event | ✔ | ✔ |
| Dynamic Registry Loaded Event | ✔ | ❌ |
| Synced Dynamic Registry Registration | ✔ | ✔ |
| Unsynced Dynamic Registry Registration | ✔ | ✔ |
| Dynamic Registry Flags | ✔ | ❌ |
| Registry Syncing | ✔ | ✔ |
| Registry Syncing - Exclude Specific Entries | ✔ | ❌ |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there is a PR for this or something similar. I would double check the available API for registry stuff.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't find anything in Fabric's PRs neither about Flags nor Excluding Specific Entries


### Core - Resource Loader

Expand All @@ -98,78 +107,86 @@ Quick legend:

| Feature | QSL | Fabric API |
|:--------------------------------------------------------|:---:|:----------:|
| Extended Block Settings | ✔ | ✔ |
| Extended Material Builder | ✔ | ✔ |
| Block Render Layers API | ✔ | ✔ |
| All Block Constructors Are Public | ✔ | ✔ |
| Block Entity Type registration helper | ✔ | ✔ |
| Block Entity Type post-creation supported block editing | ✔ | 🙅 |
| Block Entity Syncing Helper | ✔ | ❌ |
| Block Content Registry - Flammable | ✔ | ✔ |
| Block Content Registry - Flammable (data-driven) | ✔ | 🙅 |
| Block Content Registry - Flattenable | ✔ | ✔ |
| Block Content Registry - Flattenable (data-driven) | ✔ | 🙅 |
| Block Content Registry - Oxidation | ✔ | ✔ |
| Block Content Registry - Oxidation (data-driven) | ✔ | 🙅 |
| Block Content Registry - Sculk Frequency | ✔ | ✔ |
| Block Content Registry - Sculk Frequency (data-driven) | ✔ | 🙅 |
| Block Content Registry - Strippable | ✔ | ✔ |
| Block Content Registry - Strippable (data-driven) | ✔ | 🙅 |
| Block Content Registry - Tileable | ❌ | ✔ |
| Block Content Registry - Tileable (data-driven) | ❌ | 🙅 |
| Block Content Registry - Waxing | ✔ | ✔ |
| Block Content Registry - Waxing (data-driven) | ✔ | 🙅 |
| Extended Block Settings | ✔ | ✔ |
| Block Render Layers API | ✔ | ✔ |
| All Block Constructors Are Public | ✔ | ✔ |
| Block View API | ❌ | ✔ |
| Dynamic Block Appearance | ❌ | ✔ |
| Block Entity Type registration helper | ✔ | ✔ |
| Block Entity Type post-creation supported block editing | ✔ | ✔ |
| Block Entity Syncing Helper | ✔ | ❌ |
| Block Content Registry - Flammable | ✔ | ✔ |
| Block Content Registry - Flammable (data-driven) | ✔ | 🙅 |
| Block Content Registry - Flattenable | ✔ | ✔ |
| Block Content Registry - Flattenable (data-driven) | ✔ | 🙅 |
| Block Content Registry - Land Path Nodes | ❌ | ✔ |
| Block Content Registry - Land Path Nodes (data-driven) | ❌ | 🙅 |
| Block Content Registry - Oxidation | ✔ | ✔ |
| Block Content Registry - Oxidation (data-driven) | ✔ | 🙅 |
| Block Content Registry - Sculk Frequency | ✔ | ✔ |
| Block Content Registry - Sculk Frequency (data-driven) | ✔ | 🙅 |
| Block Content Registry - Strippable | ✔ | ✔ |
| Block Content Registry - Strippable (data-driven) | ✔ | 🙅 |
| Block Content Registry - Tileable | ❌ | ✔ |
| Block Content Registry - Tileable (data-driven) | ❌ | 🙅 |
| Block Content Registry - Waxing | ✔ | ✔ |
| Block Content Registry - Waxing (data-driven) | ✔ | 🙅 |

### Data Library

| Feature | QSL | Fabric API |
|:----------------------------------------------------------------------|:------------------------------------------------------------------------------:|:-----------------:|
| Advancement Criterion Registration Helper | ✔ | ✔ |
| Recipe API | ✔ | 🙅 |
| Registry Entry Attachments | ✔ | 🙅 |
| Client-fallback/Client-only tags | ✔ | ✔ (fallback only) |
| Client-fallback/Client-only tags - integration within Vanilla methods | ✔ | 🙅 |
| Convention Tags | ❌ | ✔ |
| Data Generation | :construction: | ✔ |
| Loot Table API | ❌ | ✔ |
| Resource Conditions | ❌ | ✔ |
| Component API (like CCA or Forge capabilities) | [:construction:](https://github.com/QuiltMC/quilt-standard-libraries/pull/146) | ❌ |
| Feature | QSL | Fabric API |
|:----------------------------------------------------------------------|:------------------------------------------------------------------------------:|:-----------------------------:|
| Advancement Criterion Registration Helper | ✔ | ✔ |
| Recipe API | ✔ | 🙅 |
| Registry Entry Attachments | ✔ | 🙅 |
| Registry Entry Attachments - Filters | [⏳](https://github.com/QuiltMC/quilt-standard-libraries/pull/159) | 🙅 |
| Client-fallback/Client-only tags | ✔ | ✔ (fallback only) |
| Client-fallback/Client-only tags - integration within Vanilla methods | ✔ | 🙅 |
| Convention Tags | ❌ | ✔ |
| Data Generation | ❌ | ✔ |
| Loot Table API | ❌ | ✔ |
| Resource Conditions | ❌ | ✔ |
| Component API (like CCA or Forge capabilities) | ❌ | ✔ (with Data Attachment API) |
| Static Resources API | [🚧](https://github.com/QuiltMC/quilt-standard-libraries/pull/321) | ❌ |

### Entity Library

| Feature | QSL | Fabric API |
|:--------------------------------|:---:|:----------:|
| EntityType registration helpers | ✔ | ✔ |
| Entity Events | ✔ | ✔ |
| Multipart Entity API | ✔ | ❌ |
| Point of interest helper | ✔ | ✔ |
| Status Effects API | ✔ | ❌ |
| Tracked Data Handler Registry | ✔ | |
| Trade offer API | ✔ | ✔ |
| EntityType registration helpers | ✔ | ✔ |
| Entity Events | ✔ | ✔ |
| Multipart Entity API | ✔ | ❌ |
| Point of interest helper | ✔ | ✔ |
| Status Effects API | ✔ | ❌ |
| Tracked Data Handler Registry | ✔ | 🚧 |
| Trade offer API | ✔ | ✔ |

### GUI Library

| Feature | QSL | Fabric API |
|:--------------------------|:--------------:|:----------:|
| Screen API | ✔ | ✔ |
| Item Tooltip Event | ✔ | ✔ |
| Tooltip Component - Event | ✔ | ✔ |
| Key Binds API | :construction: | ✔ |
| Screen Handler API | ❌ | ✔ |
| Feature | QSL | Fabric API |
|:--------------------------|:-----------------------------------------------------------------:|:----------:|
| Screen API | | ✔ |
| Item Tooltip Event | | ✔ |
| Tooltip Component - Event | | ✔ |
| Key Binds API | [⏳](https://github.com/QuiltMC/quilt-standard-libraries/pull/59) | ✔ |
| Screen Handler API | | ✔ |

### Item Library

| Feature | QSL | Fabric API |
|:------------------------------------------------|:---:|:----------:|
| Item Extension - Bow | ✔ | ❌ |
| Item Extension - Crossbow | ✔ | ❌ |
| Item Groups | ❌ | ✔ |
| Item Settings | ✔ | ✔ |
| Item Settings - Custom Item Setting | ✔ | ❌ |
| Item Content Registry - Composter | ✔ | ✔ |
| Item Content Registry - Composter (data-driven) | ✔ | 🙅 |
| Item Content Registry - Fuel | ✔ | ✔ |
| Item Content Registry - Fuel (data-driven) | ✔ | 🙅 |
| Feature | QSL | Fabric API |
|:------------------------------------------------------------|:-------------------------------------------------------------------:|:----------:|
| Item Extension - Bow | ✔ | ❌ |
| Item Extension - Crossbow | ✔ | ❌ |
| Item Extension - Trident | [⏳](https://github.com/QuiltMC/quilt-standard-libraries/pull/159) | ❌ |
| Item Groups | ❌ | ✔ |
| Item Settings | ✔ | ✔ |
| Item Settings - Custom Item Setting | ✔ | ❌ |
| Item Content Registry - Composter | ✔ | ✔ |
| Item Content Registry - Composter (data-driven) | ✔ | 🙅 |
| Item Content Registry - Fuel | ✔ | ✔ |
| Item Content Registry - Fuel (data-driven) | ✔ | 🙅 |
| Item Content Registry - Villager Interactions | ❌ | ✔ |
| Item Content Registry - Villager Interactions (data-driven) | ❌ | 🙅 |

### Management Library

Expand Down
Loading