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

Extract frontend components in a separate library #1256

Open
srosset81 opened this issue May 22, 2024 · 6 comments
Open

Extract frontend components in a separate library #1256

srosset81 opened this issue May 22, 2024 · 6 comments
Milestone

Comments

@srosset81
Copy link
Contributor

srosset81 commented May 22, 2024

Once the data provider and auth provider will support "regular" Solid servers, the frontend components will be usable by any Solid developers.

I think it's the good time to split the backend services and frontend components from SemApps, which cause confusion, since it make people believe that the two need to be used together.

So I propose to keep "SemApps" as the name for backend services, to find a new name for frontend components and to move the frontend documentation to a new Starlight-based website.

What name shall we use ?

Ideas:

  • Linked Data Framework (but already used here ... besides LDF is also the acronym for Linked Data Fragments)
  • FI-LD (Framework for the Integration of Linked Data)
  • ...

Ping @simonLouvet @fluidlog @VincentFarcy @GuillaumeAV (we are requesting funds from NLnet for this issue, amongst others)

Related issues

@srosset81
Copy link
Contributor Author

srosset81 commented May 22, 2024

Found out that the following domains are available for around 10€ a year:

  • ldframe.work
  • ldframework.org
  • ldframework.io
  • linkeddataframework.org (a bit long IMO)

ldf domain names are generally not available, or cost more than 150€ a year. The https://ldf.js.org domain is also taken by a project that is not updated since 2019.

@GuillaumeAV
Copy link
Contributor

GuillaumeAV commented May 22, 2024 via email

@srosset81
Copy link
Contributor Author

If you receive funds I want to be paid for my contribution on the brainstorming for the name !

Your contribution is priceless ! ;-)

SemApps could be used for the frontend component no?

I find the name SemApps to be confusing, as we don't know what "apps" we are talking about. Also "semantic" is less and less used, except in academic fields.

@simonLouvet
Copy link
Contributor

key words

  • Linked Data
  • React Admin
  • User Interface
  • Framwork
  • semantic

I try to put them together

  • LIDIF : LInked Data Interface Framework

@srosset81
Copy link
Contributor Author

srosset81 commented Nov 5, 2024

Following the discussion on the 22th of October with @nikoPLP and @Laurin-W, I came up with this idea:

The framework should be framework-agnostic, with several layers.

flowchart TD
    A(Core functions) --> B(React components and hooks)
    A --> C(VueJS components)
    A --> D(Svelte components)
    B --> E(React-Admin data provider)
    B --> F(Refine data provider)
Loading

The core functions would include basic data fetching stuff such as getOne, getList, etc. But also real-time subscriptions (via Solid notifications or NextGraph pub/sub) and containers detection (via VOID, TypeIndex or SAI)

The React layer could include components and hooks that can be used without React-Admin. This is where we would put the current ActivityPub hooks (useCollections, useInbox...).

The React-Admin layer would include a React-Admin-compatible data provider. If it is used, then we can use all the React-Admin hooks (such as useGetOne) as well as the large amount of components. But we will not be able to use live updates, since this is a paid feature of React-Admin.

A Refine data provider would probably not be a lot of work, and would open to another community of developers (there are as many stars on GitHub for Refine than for React-Admin). Plus Refine provide tools for live updates, without needing to pay more.

@nikoPLP
Copy link
Contributor

nikoPLP commented Nov 5, 2024

Sounds very good!

And in NextGraph implementation of those core functions (for those who want to use directly nextgraph APIs) will not be based on solid notifications but on nextgraph system of pub/sub.

We share work on those core functions definition together.

Also I am planning to add another "derivation" of those core functions into the react store system for nodeJS/Deno called Valtio, for developers who want to do some services based on our "unified framework"

@srosset81 srosset81 added this to the Version 2.0 milestone Nov 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants