Enabling third-party integrations in Bonfire is a breeze. ✨
Scientists can choose to enable @OpenAlex widgets in their Extensions settings to display relevant data about their work and research topics directly on their profiles.
We've prototyped an initial extension and are excited to explore more advanced use cases with our network, pushing the boundaries of integrating open and #FAIR data into the #fediverse.
Join us at the #Fediforum to discuss this and much more!
@open_science@a.gup.pe
Public Interest Social Networks
Bonfire is built by communities, for communities. Rooted in autonomy, mutual care, and collective power. Co-create your tools, reclaim your data, and resist manipulation by shaping your own federated digital spaces.
Previously at @bonfire@indieweb.social
@fresseng It would be interesting to explore how organizations could link their accounts to @ResearchOrgs, so that we can automatically retrieve scientific data about the org from their APIs and display it on their profile as a starting point. I’ve added it to next week’s agenda for a brainstorming session with the network. Thanks for the suggestion ✌️
@fediforum @open_science@a.gup.pe
@bencardoen @fediforum yeah we're working on it to prepare for the demo :)
@VincentTunru interesting! added it to the agenda for our next meeting :)
@julian thanks! Looking forward to exploring how we can effectively interoperate with them!
@crossref @opencitations
The "Professional Profile" feature is made possible thanks to our seamless ORCID single sign-on integration! 🔄
@ORCID_Org @open_science@a.gup.pe
Researchers can link their social profiles with their @ORCID_Org accounts, bringing their scientific contributions directly into the #fediverse 🌐 The "Professional Profile" feature displays key details such as topics, employment history, educational background, peer review counts, and the whole publications list...
💡 What other data sources do you think would be valuable to include?
🔥 We’re eager to explore this further and hear your ideas next week at @fediforum
@open_science@a.gup.pe
🔥 "Content Labeling" is a feature that allows moderators (or those w/ permissions) to add context to potentially misleading or unclear posts by attaching labels and linking reliable sources. It aims to reduce misinformation and promote informed discussions. Moderators can choose predefined labels (or create custom ones), add notes and reference links to guide readers. More about the work in progress here: https://bonfirenetworks.org/posts/content_labelling_in_bonfire/
#Fediforum @open_science@a.gup.pe
---
Read more: https://indieweb.social/@bonfire/113083741035108817
In upcoming posts, we’ll share features we'll be demoing next week to spark public discussion and foster coordination within the broader federated scholarly community.
2/2
@open_science@a.gup.pe
The Open Science Network demo at #Fediforum will focus on three key questions:
- What features are missing in federated spaces to effectively access scientific content and news as in the first wave of #ScienceTwitter?
- Which open data sources should be aggregated to merge a scientist's social and professional presence in a single meaningful profile?
- What are the missing features to enhance scientific discussion, collaboration and production in a federated environment?
@open_science@a.gup.pe
1/2
🔥 Next week we'll be presenting and discussing the Open Science Network initiative at #fediforum alongside a growing network of academics and open science activists 🧬
Together, we'll explore how we can build open and federated digital spaces that are co-designed and governed by scientific communities.
Join us to explore how we can create digital spaces that foster collaboration, ensure data ownership, and push the boundaries of open science practices in federated environments.
@open_science@a.gup.pe
@despens it's an interesting but very sensible and tricky aspect - as an instance is mostly made of data produced by users, which may not agree with admins to migrate or seeing their data exported on another platform without explicit consents. Maintaining the freedom to migrate only on the user level is one of the key to prevent platform #enshittification ... or you were thinking to some lighter / safer way to make it possible?
Needle also comes with two other homegrown libraries: needle_ulid which provides a ULID datatype for Ecto (using ex_ulid) and related helpers, and exto which enables extending Ecto schema definitions in config (especially useful for adding Mixin associations to different schemas)…
---
📣 🏴☠️ Camp! expedition: We have some open bounties to improve bonfire performance :
Read more: https://indieweb.social/@bonfire/112943944096656953
Repository: https://github.com/bonfire-networks/bounties
#ecto #myElixirStatus #elixir
6/6
Besides regular schemas with universal foreign keys (Pointable), Needle provides Virtual for schemas that don’t have any fields on their own, and Mixin for storing common fields that can be re-used by multiple Pointables or Virtuals (eg. if you have multiple types that all have a name/description/body, they can share those and optionally the associated changesets and other logic).
5/6
But what if you don’t just have posts that can be liked, but also videos, images, polls, etc, each with their own table, but probably do not want to have to add liked_video_id, liked_image_id, ad infinitum?
We needed the flexibility to have a foreign key that can reference any referenceable object. We call our system Needle.
A simple example would be a blogging app, which might have a post table with author field that references the user table.
A social network, by contrast, usually requires a graph of objects, meaning objects need to be able to refer to other objects by their ID without knowing their type.
A simple example would be likes, you might have a likes table with liked_post_id field that references the post table.
Needle is one of several libraries we're releasing. Beyond creating extensions for Bonfire (like misinformation labeling or metadata extraction for scientific publications), we often need to build foundational functionality. We package these into reusable libraries for the wider Elixir ecosystem.
When using a relational DB (such an Ecto schema with a Postgres table), usually a foreign key field has to be pre-defined with a reference pointing to a specific field in a specific table.
2/6
Needle is an #elixir library that we have developed to provide universal foreign keys, shared data fields, and virtual & configurable schemas for Ecto.
🔗 Read the docs: https://hexdocs.pm/needle/readme.html
💬 Join the discussion on Elixir Forum: https://elixirforum.com/t/needle-universal-foreign-keys-shared-data-fields-virtual-and-configurable-schemas-for-ecto/65644
@maikel maybe these tutorials can serve as a good intro before digging into the official docs? https://elixirschool.com/en/lessons/ecto/