#vuejs

Socialhome version 0.5.0 released

Approximately one month since the previous release, #Socialhome 0.5.0 is out with 102 changed files, 2870 insertions and 999 deletions by 2 contributors.

For users there are only a few features added in this release, most of the work being internal refactoring and work in preparation for future features.

Please see the full changelog here.

New features

A few notes on feature highlights.

Shares in streams

Shares are now pulled up to the "Followed" stream. What this basically means is that when a person you follow shares something authored by a person you don't follow, the post will be pulled up in your stream by the share action.

Generally, you should only see a single post once. If you follow the author whose content was shared, that content has already been in your stream, and thus a share will not repeat it. Note however that since stream pre-calculation is a new thing, it is possible that content seen in the stream before this feature was added will pop up in a new share once more.

There are still some things to do for shares, these are being tracked in this issue.

Stream precaching

Related to "shares in streams", there was a lot of refactoring work to create the new base for how all streams function. This includes unifying lots of code and rewriting it so that in addition to pulling content out of the database, we can "precalculate" streams. This is done to ensure streams load super fast even if the calculations on what content the stream has are heavy.

The only stream that is currently precached is the "Followed" stream. Precaching means it will load as fast as the public stream even though we now include shares by non-followed users and include them only once - which would be a heavy calculation to do without precaching. The real benefit will come when custom user defined streams are available.

How would you like to configure the content in your stream?

GIF uploads

Yes, we love GIF's <3

Links in content

All links in content (whether textual, markdown or HTML) are now treated equally. They will all be used as candidates for OEmbed/OpenGraph fetches and all will be processed to add a target="_blank" to the link, forcing it to open in another tab/window.

Stream URL changes

All stream urls now live under /streams/, so for example followed stream is /streams/followed/. The old url's should still work until they are needed for something else.

Features coming up

Vue.js streams

Christophe Henry has been hard at work rewriting the current Django template + #jQuery based streams in #VueJS. The status of that work can be tracked here. We're hoping to replace the current stream frontend with the Vue streams within the coming months. This will drop a lot of legacy code and speed up development of new features, and will also mean our #API is fully complete for the stream features.

ActivityPub protocol support

This is still something we want to do as soon as some of the basic features are first implemented. Currently it looks like having it before the end of the year is slightly optimistic, but federating with for example #Mastodon using #ActivityPub will be a strong priority to get early next year.

Docker images

There has been some work on #Docker images to run a Socialhome instance. Will post more info as they are ready.

What is Socialhome?

Socialhome is best described as a #federated personal profile with social networking functionality. Users can create rich content using Markdown. All content can be pinned to the user profile and all content will federate to contacts in the federated social web. Currently #federation happens using the #Diaspora protocol. Federating using existing protocols means Socialhome users can interact with tens of thousands of other users.

Please check the official site for more information about features. Naturally, the official site is a Socialhome profile itself.

Official site: https://socialhome.network.

Contribute

Want to work on a #Django and Vue.js powered social network server? Join in the fun! We have easy to follow development environment setup documentation and a friendly chat room for questions.

#changelog #news #socialnetwork #thefederation #selfhosting

jaywink/socialhome
socialhome - A federated social home.

Socialhome HQ

Code Day

http://deadblackclover.github.io/CodeDay

#css #image #js #vuejs #nuxtjs

LIL JAVASCRIPT

#Socialhome v0.4.0 released

The focus of work lately has been implementing missing features for proper daily usage. One of these is allowing users to share content created by other people. This is now partially possible. Remote shares are now processed and users are able to create shares, but shares are not yet themselves taken into account when creating a stream. Will write another post related to the status with shares and how they will function.

Check out the release here: https://github.com/jaywink/socialhome/releases/tag/v0.4.0

Try it!

Registrations are open at https://socialhome.network . Please be aware some features are still missing, but otherwise the software is very stable. Let us know what you think if you decide to try it!

Participate

Are you a #Django, #Python or #VueJS coder? Want to build a social network? Check out the contribution guide and get in touch!

Changelog

Update notes

This release contains long running migrations. Please allow up to 10 minutes for the migrations to run, depending on your database size.

Added

  • Allow user to change profile picture. (#151)

    Profile menu now has an extra option "Change picture". This allows uploading a new picture and optionally setting focus point for cropping a picture that is not square shape.

  • Federate local profiles to remote followers on save. (#168)

  • Process remote profiles entities on receive.

    Remote profiles were so far only created on first encounter. Now we also process incoming Profile entities from the federation layer.

  • When following a remote profile, federate profile to them at the same time.

  • It is now possible to expose statistics from a Socialhome node. This includes counts for users (total, 30 day, 6 month), local content and local replies. These will be exposed via the NodeInfo documents that for example the-federation.info node list consumes.

    By default statistics is off. Admins can switch the counts on by setting environment variable SOCIALHOME_STATISTICS=True and restarting Socialhome.

  • Add user API token view. Allows retrieving an API token for usage in clients and tools. Allows also regenerating the token if it has been lost or exposed.

  • Added bookmarklet to easily share external pages. The bookmarklet can be bookmarked from the 'Create' page. (#138)

    Sharing with the bookmarklet will copy the page url, title and optionally selected text into the create content text area. The bookmarklet is compatible with Diaspora, so for example the Firefox sharing service will work.

  • Support receiving 'Share' entities. Show amount of shares on content. (#206)

  • Show replies to shares on the original shared content. (#206)

  • Add share endpoint to Content API. This enables creating and removing shares via the API. (#206)

  • Allow sharing content. Clicking the share counter icon exposes a 'Share' button which when clicked will create a share. (#206)

  • Allow unsharing content. Clicking the share counter icon exposes an 'Unshare' button (assuming the user has shared the content) which when clicked will remove the share. (#206)

  • Federate local shares to remote nodes. (#206)

  • There is now a 'My content' stream link in the navbar 'Streams' dropdown. This goes to your own profile all content stream.

  • Add user preference for the new stream refactoring. If enabled, all streams that have a new version in progress will be rendered with the new frontend code based on Vue.js. (#202)

    Warning! The new frontent code doesn't have all the features of the current on yet.

  • Content API has three new read only fields available:

    • local, boolean whether the content is local or remote.
    • reply_count, count of replies (including replies on shares)
    • shares_count, count of shares
  • Make email notifications nicer by using HTML templates in addition to the plain text version. (#206)

    In addition to reply and follow notifications, send also when own content is shared.

Changed

  • Breaking change. Content API results now return visibility as a string ('public', 'limited', 'site' or 'self'), not an integer.

Fixed

  • There was no notification sent out when a local user followed a local user. This has now been fixed.

Removed

  • Breaking change. Removed Content, Profile and Users API LIST routes. For now these are seen as not required for building a client and allow unnecessarily easy data mining.

  • Removed content modal. Clicking timestamp in grid now directly loads the content detail view. (#162)

    Loading the content in a modal was an early experiment and didn't end out very usable.

  • Removed reply button from replies. Technically, threaded replies are possible but the UI implementation is not done. Replying to a reply will be back once UI and federation layer will handle threaded replies properly.

#thefederation #federation

jaywink/socialhome
socialhome - A federated social home.

Socialhome HQ

Also, implementing the same features in both the legacy (stable) #jQuery based stream and upcoming #VueJS stream really drives home how much better a framework like Vue is. Everything is just so much cleaner, efficient and generally easier to see from the code what is going on.

Thanks again @{Augier; augierle42e@diaspora-fr.org} for pushing the Vue frontend rewrite of #Socialhome 👌

#devdiary

Jason Robinson

First part of upcoming #VueJS rewrite of #Socialhome streams merged in. Thanks, christophehenry!

Down with #jQuery, bring up the modern JS stack!

Socialhome HQ

Setup d’un projet Webpack avec Babel pour ES2017, VueJS, Karma, Mocha, Chai et toute la clique – Blog-Libre

Parce que moi, j’aime bien me fouetter avec du Javascript tous les matins. Ça me donne une mine seraine et détendue. Javascript, votre partenaire bien-être toute l’année !

#javascript #mocha #chai #karma #nodejs #vuejs #webpack #douleur-anale #masochisme

Augier

Chat with us on #Matrix

We've now a #socialhome:matrix.org room on Matrix too, in addition to our IRC and Gitter rooms. All these rooms are bridged, so you only need to join one to talk to participants in all three.

#Django developer?

Want to help build a cool social network site that federates with #Diaspora, #Friendica, #Hubzilla, and in the future #Mastodon too? Come talk and join in, help is required!

Here are some buzzwords from our technical stack: #Django, #Channels, #Bootstrap 4, #jQuery, #Masonry, #RQ, #PostgreSQL, #uWSGI, #Circus, #Mocha, #federation, #Haystack, #Whoosh. And coming up, #VueJS.

#Socialhome

Socialhome HQ

Pythonic #JavaScript for Web Developers //

Colleague gave a talk at #EuroPython re #Python Web development and Javascript. He is the one who convinced me to have another look at #VueJS 👍

https://speakerdeck.com/uninen/pythonic-javascript-for-web-developers


Jason Robinson

Started a #Roadmap section in our documentation. Below the high level architecture of current and possibly future #Socialhome.

One of the central parts here is replacing the current streams with a #VueJS app, for performance and code architecture reasons.

This is a living draft that will be updated as time goes. Feedback welcome, especially from Vue hackers!

Thanks @{Augier; augierle42e@diaspora-fr.org} for the good discussion regarding this in our little #Helsinki #hackathon at the Anders office a few weeks back, and for kicking off this mammoth task 🍻

Socialhome HQ

Hey everyone, I’m #newhere. I’m interested in #elixir, #laravel, #phoenix, and #vuejs.

GAGANOVA

Всем привет, я #новичок. Мне интересны #html, #javascript, #music, #neurofunk, #samara и #vuejs.

Максим