Skip to content

GeekGene/mewsfeed

Repository files navigation

MewsFeed – for the calm cats

MewsFeed is a micro-blogging platform built with Holochain.

Visit mewsfeed.social to be notified of our release!

Collaborate on GitHub, join our Discord, and donate on OpenCollective!

How to use MewsFeed

MewsFeed is built with the distributed app development framework Holochain. Practically, this means that users either host themselves on their own devices or access a web version through the Holo hosting infrastructure.

Here is how to decide which version to use:

1. You are a Tinkerer πŸ› οΈ

You like to experiment with the tools you use and enjoy having access to the data you use.

πŸ’» Install MewsFeed locally, either as a Desktop App with Kangaroo or in the Holochain Launcher.

This way you can analyze your data, connect it to other tools, and tinker around.

2. You are a Creator πŸ§‘β€πŸ’»

You like to publish good posts and interact with your audience wherever you are.

πŸ“² Sign up for an account on app.mewsfeed.social.

This way you can use it from any device through the browser. Alternatively, install MewsFeed locally and you'll be able to create content even when you're offline.

3. You are an Anon πŸ‘€

You want to stay anonymous, shitpost, and interact with interesting accounts.

πŸ’» Install MewsFeed locally, either as a Desktop App with Kangaroo or in the Holochain Launcher.

This way you have access to your posts even when you don't have internet.

4. You are a Lurker πŸ‘€

You mostly just want to follow others for their content and stay informed of what's happening.

πŸ“² Sign up for an account on app.mewsfeed.social and use it from any device through the browser.

Alternatively, if you only browse content from your laptop or desktop, install it locally.

Either way, you'll be able to follow people and read their stuff.

5. You are a casual User 😎

You like following cool accounts, interacting with your friends, and having interesting conversations.

πŸ’» Install MewsFeed locally, either as a Desktop App with Kangaroo or in the Holochain Launcher.

This way you can access your favorite content and send replies to your friends even when you're offline. Alternatively, sign up on app.mewsfeed.social and use it from any device through the browser.

Install as Desktop App

Download the latest release of the Desktop App here: MewsFeed Kangaroo.

Once installed, you'll be greeted by the Explore page.

You have the ability to navigate around immediately (e.g. your feed).

When you try to post your first Mew (i.e. Post), you'll be prompted with the profile setup modal.

Set up your profile and start using the app!

Install as hApp in the Holochain Launcher

Download the latest release of Holochain Launcher here: Holochain Launcher.

Install the Launcher, run it, and create a password (save it somewhere safe!). Then navigate to the hApp Store.

Install MewsFeed by clicking on it and hitting install.

If no peers are online to download it from, head to the GitHub Releases page and download the latest .webhapp file

Then click "Select from filesystem" in the Launcher and select the file from your Downloads folder.

Leave the network seed blank if you want to join the regular MewsFeed network.

(Sidenote: if you want to set up a private version of MewsFeed for your community, just add a network seed and instruct your community members to also put that same seed into the box at install time to join your network)

You'll have to go through the same profile setup steps as described in the section on installing as desktop app.

Use the Holo-hosted Web Version

This one is the easiest option. Just head on over to app.mewsfeed.social, sign up for an account, fill out your profile, and start using the platform!

Chat With Us

Come join us on mewsfeed. We're talking at the hashtags #mewsfeed and #holochain. Share your feedback by tagging #mewsfeedback!

Follow Us

You can follow the team on mewsfeed at:

@artbrock @bierlingm @mattyg @jost

Environment Setup

  1. Install the holochain dev environment (only nix-shell is required): https://developer.holochain.org/docs/install/
  2. Enable Holochain cachix with:
nix-env -iA cachix -f https://cachix.org/api/v1/install
cachix use holochain-ci
  1. Clone this repo and cd inside of it.
  2. Enter the nix shell by running this in the root folder of the repository:
nix develop
npm install

This will install all the needed dependencies in your local environment, including holochain, hc and npm.


## Building the DNA

- Build the DNA (assumes you are still in the nix shell for correct rust/cargo versions from step above):

```bash
npm run build:happ

Running the DNA tests

npm run test

UI

To test out the UI:

npm start

To run another agent, open another terminal, and execute again:

npm start

Each new agent that you create this way will get assigned its own port and get connected to the other agents.

Holo Hosting

  1. Get a copy of the Holo envoy server directly from a Holo team member, copy it to the root of the directory as holo-dev-server

To test out a holo hosted agent:

npm start:agent:holo

Package

To package the web happ:

npm run package

You'll have the mewsfeed.webhapp in workdir. This is what you should distribute so that the Holochain Launcher can install it.

You will also have its subcomponent mewsfeed.happ in the same folder`.

Documentation

We are using this tooling: