TAM and OMN tools for potential Bonfire workflows
This article looks at Techno Anarchist and Open Media Network tools that would boost efficiency and productivity in Bonfire workflows. And I will be paraphrasing heavily.
As mentioned in a previous TPF post, I plan to experiment with Bonfire and have taken notes for a series of articles.
This is the second one. The first is here if you inexplicably missed it. 😉
I have even reserved the domain manade.org to possibly run subdomains off of for various communities I am part of once I retire in France this spring. For now building a test instance is a priority.
And I have also built a new website for that project on the subdomain, http://site.manade.org. In fact it is so new, the hosting company still hasn't sorted the SSL certificate out. Hence the http. Sorry. 🤦🏽♂️
Anyway, while I explore the Bonfire documentation, I have concurrently been exploring and thinking about potential tools to use in building Bonfire communities.
And of course being who we are, they should be open source. And preferably based in the last bastion of democracy, the European Union.
So, let’s start a fire. 🔥
General Tools
Framatoolbox
Framasoft is one of several open source online services hosted with a strong commitment to the goal of decentralization.
So, using Framatoolbox is a big step on the road to your digital autonomy.
Framatoolbox is also a political proposal. It's exploring an alternative to surveillance capitalism by experimenting with the contribution society.
By offering uses, feedback and contributions to OmniTools ⬇️, Framasoft participates in maintaining a common resource.
OmniTools
You can boost your productivity with OmniTools. It's also the toolbox that make's you more efficient. Access thousands of user-friendly utilities to edit images, text, lists and data. And do so in your browser.
- Image Tools
- PDF Tools
- Text Tools
- JSON Tools
- CSV Tools
- XML Tools?
Vert
- File Converter Tools
Vert's image, audio, and document processing is done on your device. Videos are converted on their servers. So, no file size limit, no ads, and completely open source.
Writing
Markdown
Markdown helps you write for your website content, programming documentation, wiki, and project management. You are probably familiar with it and it's becoming standard.
Joplin
Joplin is an open source markdown note-taking app. You can capture your idea and access them from any device. You can even extend it with plugins and integrations.
I wrote this article on a tablet and laptop with it.
Creative
GIMP
If your requirements can’t be handled by OmniTools, GIMP is an open source image editor comparable to Photoshop.
Programming
Docker Desktop?
You can install Bonfire via Docker. But, I am not sure you can use Docker Desktop. I hope so, because as a half-ass frontend developer it’s the only hope in hell I have for doing this myself. 😈
A quick aside, if I can't get it going on my own, it may be in the summer before the Bonfire test instance will be done.
As this is likely, I will be looking for help setting up the instance. Someone near Toulouse, France with Bonfire experience would be great. Or I guess I could hire the Bonfire team as a last resort. Provided they give large discounts to journalists promoting the platform. 🤨
In any event, Docker Desktop simplifies the process of building, sharing, and running applications in containers, ensuring consistency across different environments.
And obviously, you can use regular Docker.
Abra
You can also deploy Bonfire via the Co-op Cloud route via Abra.
Abra is the flagship client & command-line for Co-op Cloud. It has been developed specifically for the purpose of making the day-to-day operations of operators and maintainers pleasant & convenient. It is libre software, written in Go and maintained and extended by the community.
Thanks to @[email protected] of Tube Free and BTFree for this recommendation. And he has this video that I will be watching.
Mosaic
If you read our first article, you will be familiar with Mosaic. And it will be a major tool used to build Bonfire communities. It's Bonfire's tool after all.
It bridges to third-party tools that:
- import data from your existing tools
- transform that data into rich ActivityPub activities for federation
- enable meaningful, two-way interactions
- respect your privacy boundaries and governance needs
JSON
JSON is used in JSON Activity Streams with ActivityPub. The docs note:
"In the most basic sense, an "Activity" is a semantic description of an action. It is the goal of this specification to provide a JSON-based syntax that is sufficient to express metadata about activities in a rich, human-friendly but machine-processable and extensible manner."
ActivityPub
Social Docs
Social Docs is third-party documentation for ActivityPub, Mastodon, and the Fediverse.
ActivityPub Fuzzer?
Fuzzer is a small program to help build social media software on the Fediverse. It emulates known Fediverse software, helping solve the problem where developers have to manually test compatibility with dozens of other projects.
I am not sure if Bonfire is one of them, But, if it's not let's hope it will be soon.
Another quick aside peeps, get the fuck off GitHub.
ActivityPub Book
Written by Evan Prodromou, the coauthor of the ActivityPub protocol and the Activity Streams 2.0 data format, this is the ActivityPub handbook that every social software hacker needs.
I have it and am slowly reading it.
ActivityPub Rocks
ActivityPub Rocks is an informative site maintained by the current steward of the ActivityPub stack of standards.
Team Tools
Codeberg
Codeberg is a community-led effort that provides Git hosting for free/open source projects. It features: no tracking, no third-party cookies, and no profiteering. Everything runs on their servers in Europe. Your data is not for sale.
Forgejo
If you want to roll your own Git solution, Forgejo is the way to go. It's a self-hosted lightweight software forge. Being easy to install and low maintenance, it gets the job done.
OpenProject
OpenProject is open source project management software for open source developers. It gives you classic, agile, or hybrid project management in a secure environment.
For my test instance I will use something simpler. Probably NextCloud’s Deck tool.
XWiki
XWiki innovates with "Structured Wiki" and delivers high knowledge features.
Again for my test instance I will use something simpler. Maybe Zim.
Elixir
Backend
Bonfire is implemented with its own dialect of the Elixir language. Like me if you had not heard of it before, Elixir is similar to Ruby on Rails or Python.
It runs on the Erlang VM. And it's capable of web programming, embedding software, machine learning, data pipelines, and processing multimedia. So, it's mega flexible and functional.
I know nothing about it, but I researched tools and found these.
Elixir Tools Suite
elixir-tools is a suite of developer tooling and packages for Elixir developers. Their goal is to provide tooling good enough that you think they're part of the core language project.
Testing Tool
ExUnit
One of the testing frameworks for Elixir is ExUnit. It is built-into the Elixir language and is a simple and intuitive tool for writing tests.
ExUnit follows the xUnit style, which will be familiar to developers who have worked with other testing frameworks. It provides everything they need to write comprehensive tests for their Elixir applications.
Database Tool
Ecto
Ecto is a popular Elixir database library providing a high-level and composable query interface for interacting with databases. You can define schemas, perform complex queries, and manage database transactions. Ecto also offers built-in support for database migrations, making it easy to evolve your database schema over time.
Elixir School
The previous tools have lessons in Elixir School which appears to be an excellent resource.
Frontend
Phoenix
Phoenix let's you build web applications quickly, with less code and fewer moving parts. It also runs on the Erlang VM with the ability to handle millions of WebSocket connections alongside Elixir's tooling for building robust systems. You can also deploy it with Docker.
LiveView
LiveView's main contributor wanted to create dynamic server-rendered applications without writing JavaScript. He was tired of the inevitable ballooning complexity that it brings (amen). He built LiveView to fix it.
Surface UI
Surface UI is a server-side rendering component library for Phoenix. It let's you start building rich interactive user-interfaces while writing minimal custom Javascript.
That sound perfect to me.
Liveview Native
If you are building Native apps Liveview Native is a framework extends Phoenix LiveView to native platforms, enabling real-time, interactive native applications with a unified codebase.
Wrapping it up
And that is enough for now. As I am slowly learning about Bonfire, I think the tools above would fit well in Bonfire workflows.
In this article we explored:
- general productivity tools
- writing tools
- creative tools
- general programming tools
- ActivityPub tools
- Mosaic
- Elixir backend tools
- and Elixir frontend tools
Have I missed anything? As mentioned in my previous article, this is all new to me. And I've only gone through about 20 percent of the Bonfire documentation. So, let me know what to add, correct, update, etc. This request is especially sincere if you’re working on a Bonfire project now.
Together, let’s build something for our communities with Bonfire! 🔥