Aijan

joined 2 years ago
MODERATOR OF
[–] Aijan@programming.dev 3 points 2 years ago (5 children)

Yes, that's correct. Here's how an entry in the join table looks like:

{
  "id": 6,
  "sourceComp": "user",
  "sourceId": 2,
  "targetComp": "post",
  "targetId": 3,
  "type": "author",
  "createdAt": "2024-03-28T13:28:59.175Z",
  "updatedAt": "2024-03-28T13:28:59.175Z"
}
[–] Aijan@programming.dev 3 points 2 years ago

AFAIK, no NoSQL database fully supports SQL, and only some offer support for transactions and joins. The idea here is to augment a relational database by adding capabilities for dynamic relationships.

15
Beyond Foreign Keys (lackofimagination.org)
submitted 2 years ago* (last edited 2 years ago) by Aijan@programming.dev to c/programming@programming.dev
 

In a relational database, foreign keys are normally used to associate records stored in different tables, but wouldn’t it be nice to define relationships dynamically without having to add extra columns or tables? And while we’re at it, how about having sparse relationships by associating a record directly with any other record like “post X was last edited by user #123” or “post X was flagged for review by user #456” (who happens to be a moderator)?

[–] Aijan@programming.dev 1 points 2 years ago

You're welcome.

[–] Aijan@programming.dev 1 points 2 years ago (2 children)

Agreed, this article is old, but I think it does a good job of showing how similar Alpine and Vue are.

[–] Aijan@programming.dev 1 points 2 years ago

That idea crossed my mind too. AFAIK, you can't really use SQL in graph databases, and that's a deal breaker for me.

 

Unlike most modern javascript frameworks, Alpine requires absolutely no build, you simply include the library and away you go, all features included. It’s also super lightweight. If you already know Vue, you basically know Alpine, making it perfect for Vue developers to turn to for projects where Vue is simply overkill and without the headache of learning something completely alien.

 

Tie-in is a relational data component library that lets you store and query records that can be related to any other record.

The relationships in a database are usually defined between columns across tables. In Tie-in, however, relationships can be defined between individual records. Relationships can also have types, so you can have multiple relationships between two records.

The ability to associate a record with any other record in any table opens up new possibilities that are hard to accomplish with conventional column-based relationships. In addition, since relationships are dynamic, no schema changes are necessary to define new relationships.

view more: ‹ prev next ›