fOSlink - farmOS mobile app

Inspired by a project of @Farmer-Ed I started to craft a mobile app to help adding data to farmOS.

It is made with help of Claud CODE and is built with Svelte.
For now it’s running on my server, but I intend to release it as a plain mobile app on FDroid.org.
If all goes well, it should work on all instances of farmOS via the API.

Not too fancy and flexible, but workable for basic logging. I made it for my own use, but it may be useful for others as well.

Feel free to try. I will translate it to English, and update here on bigger changes.
Edit: I should add that it’s only tested on farmOS v 3.x

Supports activity, observation, maintenance logs with assets and image upload.
I also tried to mimic the planting quickform.

2 Likes

Cool! Looks great @pat!

The only major change you might need to be aware of in v4 is that assets no longer have a status field. They have a boolean archived field only. So if you are using status then you might want to plan ahead for that.

2 Likes

So… long dream come true. I got myself an android app.

It’s kind of like the FieldKit app, but propably not as flexible.
It works fine for me to add different logs in an easy way.

It’s released in F-Droid. To try it you would need to add the repo in F-Droid since I have not made it to the official repo yet. Instructions in url below:

Updated the app-info with screenshots and more info, but it seems to take some time to sync.

Currently the app connects to a specific consumer (See the repo for info : BitfieldFarm/foslink-app - Codeberg.org ) This lets the user add the farmOS url, and the user is taken to the farmOS login page to autorize the app.

@mstenta I think my own "farm” consumer is tweaked a bit from the standard.
One of my goals was to have this app work on plain Farmier instances as well.
Any advise on that matter?

2 Likes

Todo:

The todo-view hides overdue tasks by default. Just tap overdue to show them.

Today, This week and This month buttons have two functions.
A second tap changes to next period.

Today - Tomorrow

This week - Next week

This Month - Next Month

1 Like

The “proper” way to do this would be for there to be a consumer in farmOS that is specifically for your app. This could be packaged into a super simple companion module, which only creates the consumer (and deletes it if the module is uninstalled).

Here are two examples, from the Field Kit module and the SurveyStack module:

Those are just the *.install files of the module… and you can see they have a *_install() function and a *_uninstall() function, which creates/deletes the consumer, respectively.

The only other file you need is a *.info.yml file to declare the module’s info. That’s it.

Regarding Farmier - if you want to create a module like that, I can make it available to Farmier users.

1 Like

That makes sense. It’s how I did it for me in the first place.
I should try to make that module then. :thinking:

2 Likes