- cross-posted to:
- fediverse@lemmy.world
- cross-posted to:
- fediverse@lemmy.world
I’ve been working on Habitat for the past two years. It all stemmed from this idea that I posted in April 2024.
Habitat is a free open-source, self hosted social platform for local communities. It is aimed at fostering local community discussions and discovery of areas of interest. This is why it is built primarily around location. A Habitat instance centers on a specific area, and the local community can make generic posts about that area, or they can make posts about specific locations in that area. More about what I’ve been building and the future plans here.
Features
- Habitat specification of location and size - enabling posts related to the local area
- Home feed - Displays the most recent posts
- Nearby feed - Displays posts sorted by proximity to the user
- Create posts - Upload photos, set locations, comments
- Categories - Location rules
- Amazon S3 image storage option
- Personalisation - Overrides Habitat defaults per user: kms/miles, hidden categories
- Moderation tools - User, post, comment moderation, block email addresses
- Announcements - Scheduled announcements
- Public moderation log - Keep moderator actions visible for 30 days
If you’re interest in this at all, please give it a spin and let me know how you get on. I’ll keep an eye here on Lemmy, but you can also post to the Habitat discussion board on GitHub.
A local bulletin board basically would be nice if thats what this is, not using facebook
Edit: Idk how I wrote “board” as “born”
It could certainly be used like that. For me personally, I like the idea of discussing local areas of beauty, monuments, history of the area etc
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters More Letters AP WiFi Access Point DNS Domain Name Service/System XMPP Extensible Messaging and Presence Protocol (‘Jabber’) for open instant messaging
3 acronyms in this thread; the most compressed thread commented on today has 12 acronyms.
[Thread #129 for this comm, first seen 2nd Mar 2026, 17:10] [FAQ] [Full list] [Contact] [Source code]
good bot
Is this next-door for non boomers?
Sadly it will never take off but cool idea.
I would totally host that for my neighborhood, which as I understand is using Facebook a lot, which, of course, I am avoiding like the pest.
We have a very strong national use of Hoplr, so it’ll be really hard to get people over and I haven’t seen any malpractice by Hoplr yet.
Another idea you could potentially add down the line: what about functionality similar to Craigslist or Facebook Marketplace? Those tend to work by helping you focus on your local area as opposed to EBay.
Granted, Craigslist is largely fine imo, I’m just proposing a way to help you kill off Facebook
integrate it with #flohmarkt (and the fediverse in general) and you don’t need to reinvent the wheel :-)
Keep in mind that OP’s project is already based on a different protocol than the Fediverse for their own reasons. Trying to create and maintain a bridge between different protocols might be more work than to just make modifications to posts in the current system.
Other factors are end user experience and branding. Keep in mind that the average Facebook/NextDoor user isn’t tech-savvy, and could also be put off by the weird software names commonly found in the Fediverse
It’s likely worthwhile for OP to look into flohmarkt, but integration might not be the optimal method
What features are you thinking? To put a price on a post/mark as sold etc?
This is perfect for me since I was banned from the NextDoor app for letting my community know the creature was hunting. I can host this for myself and others, and the nonbelievers can walk amongst it.
:D This is great news for everyone except for the creature.
Forgive me if any of these questions have obvious answers:
Would Habitat be suitable for hosting community events, or communities in general?
if you ran a hobby group, would your local Habitat be the place to share things? How much control is in the hands of the users vs the administrator?
Could you help me understand what you mean by “hosting community events”? Your users can create posts about events, but it has no tools for video calls or anything like that. Users can create posts in the categories created by the administrator. They can leave comments on those posts. There are a bunch of moderation tools and ability for the administrator to have settings for posts based on the category they’re in.
I’m guessing they mean like facebook events? A distinct section of the platform that allows for some kind of invite system, a feed for just the event, and reminders.
Ah I see. No, no specialised type of post for events, date based information, invite systems, or anything like that. I can see why that would be good though so I’ll give it some thought.
Look at gamedate.org, or for immediate context search it on YouTube, you may be able to implement a copycat tool with more general lists of common events than the games list the site uses.
Any relation to Lucasfilm/Fujitsu Habitat/Habitat II? https://renoproject.org/
It was an early virtual world, running originally on Commodore 64s, later on PCs and (in Japan) Sega Saturn, with a look and style heavily inspired by SCUMM games.
Is this NextDoor but for communists?
People keep making the comparison. I don’t know, I’m not sure what features next door has, but I know it isn’t self hosted.
Hopefully not just communists
It’s open-source and self-hostable, so it’s for any group
Does it support Activity Pub?
Not activity pub specifically, but federation has always been in the plan.
How is it federation but not Activitypub specifically? I thought that was the only protocol that currently allows for federation. Are there others? Or other ways?
I thought that was the only protocol that currently allows for federation. Are there others? Or other ways?
The Matrix and XMPP protocols both support federation, though those are mainly for chat platforms
Activitypub is not the only one, no.
To be clear, there is no functionality that federates Habitat instances yet. This work is still to be done. ActivityPub is a protocol for decentralised networks. Though I will not be using ActivityPub, I will build functionality that will allow for a decentralised network of Habitat instances communicating data to each other. This will be federated by definition, but it will not communicate with Lemmy/Mastodon or anything else that uses ActivityPub.
Though I will not be using ActivityPub
If you don’t mind my asking, what drove the decision to not base it on ActivityPub? On the surface that seems to be an easier starting point that building evetything out from scratch
Activity Pub doesn’t take advantage of the unique solution we have by knowing the user’s location and the location of instances. In a way, it seems overkill for what we want. Additionally, I don’t necessarily want other software communicating with Habitat. You never know, I might change my mind as I delve into it. I changed my mind on a great number of things as I came to develop them for phase 1. I accept that there are things about existing protocols that I don’t fully understand.
Oh, I see. Why have you made that choice? I’d understand to keep the subjects towards more community oriented interests, but then, i’m not sure why federation of other community habitats would have any advantages over being separate.
For example, I imagine East Sussex and Alsace-Lorraine wouldn’t have a great degree of things to share between disparate instances like that.
Anyway, i’ve not had a chance to look at your instance yet, so maybe i’ll understand it better when I duck over there for a sticky beak. All sounds very exciting though! Well done!
Imagine this - you’re signed up to your local instance in – Perth is it? You go for a walk and find a beautiful old building, and want to know more about it. You open up your local Perth instance of Habitat, which you know about because you live in Perth and managed to find that instance, and click the Nearby feed, and the closest discussion to your location is about this very building. This functionality exists in Habitat right now.
Now imagine that you’re on holiday to Oxford in the UK – I can’t imagine why you’d choose our clouds over your sun, but it might be something to do with the old buildings here. You see an interesting old building, and want to know more about it, and open up your Perth Habitat instance, click the nearby feed. Your Perth instance will identify the closest Habitat instance to your location – it just so happens to have found one called Habitat:Oxford. Your Perth Habitat instance will show you results from the Oxford Habitat instance by proximity. This is why I want to federate instances, so that you don’t even have to worry about which instances have the posts relevant to your location, it’s all handled by the network.
Ah! Oh cool, but this would take geolocation. I predict that being a hard sell for lemmings.
But as I type that i realise/remember your post here is primarily an introduction for potential instance operators, not so much a user base. So the geolocation as an ‘issue’ is likely far less important (not forgetting a user can just turn it off anyway).
I predict that being a hard sell for lemmings.
Eh, if it’s an open-source application where you can review the code to confirm that the software isn’t tracking you, then it’s not an issue. Especially if you’re running Graphene OS, Rethink DNS, or Exodus to either sandbox or monitor your traffic
sounds like that’s planned but maybe not in yet
Is there a way community members can vote on things?
Next Lemmy update is going to have an option to block image posts (to remove low quality meme threads). People should stop turning text posts into image posts to avoid being blocked. I also find these hybrid posts quite annoying. You’re making your post look like something it’s not.
A post introducing a graphical web-based system would be remiss if an image of that graphical system was missing.
Of course you can block those posts (if that function is.enabled) , but you’d be missing out on many discussions.
This wasn’t my intention. What does it make my post look like?
I’m on Summit and it’s obvious from your post title and screenshot in my feed that this will be you presenting some kind of website or software. When clicked, the actual thread has your main post written out nicely.
I think if a filter like what’s described is on its way, it’s very poorly thought-out. Many interesting topics will include images; an album cover when discussing a band, your cat when asking for advice about said cat, etc. It’s also fairly normal on Lemmy to add alt-text of images as plain text in the main post, so a filter would either include such posts as not image-only or exclude posts like yours. Seems like a bad system. I should think it’s better for users to block meme comms.
It makes your post look like an image (low quality) instead of a link or discussion (possibly high quality).
Don’t listen to them. This post renders fine on both voyager and default Web mobile UI for world. You did nothing wrong.
So two mobile devices/UIs? Did you even understand the problem?
Yes. And it looks perfectly fine, like any other post, just with an image appearing as the thumb instead of the text-only icon.


Did you even understand the problem?
The answer is no, not yes.
Like crap. Next time, write an article on your website, add a featured image, and link to that
Preach!
Looks cool! I’d love to see local buynothing groups have a Fediverse alternative.
Out of curiosity, is there any standard or common format around location data for Fediverse platforms?
This seems like something that would really benefit from better language support. I saw the translations folder in the repo, but you should probably get it linked up to a Weblate instance or similar and have people start contribute different languages asap.
I’m glad you found the translations folder. Support for different languages was always in the plan, I just wanted to see if anyone actually plans on installing and using it before I keep going with that. You’ll see it’s in progress on the GitHub project board.










