Known

Known is an open publishing / community platform project. It aims to be a simple, beautiful way to share your story using a variety of media from any device. It adheres to the IndieWeb technologies and principles.

Plugins & themes

Known has a full plugin architecture, making use of PHP lazy loading and the observer pattern. This makes it very easy to create new content types or behaviors.

Known is being developed with the rule that "indie" content - internal posts, likes, etc - are bundled as included plugins in the main source code repository. If you want to POSSE to external sites, you need to install those plugins separately (although they may also be included in a downloadable distribution of the content).

Hosts with one click installs

Upgrade

To upgrade, copy the new Known installation files over the existing installation. Known's core files can be safely overwritten. It's always a good idea to perform a backup, both of the files and of the database before upgrading.

Transition from WordPress

David Mead is in the process of transitioning his personal site from WordPress to Known.

As Known works only on a domain or sub-domain at the moment, I had to create blog.davidjohnmead.com and install it to there. I didn't want to blow away my current WP blog until the Known site was running, connected to the silos and able to import my WP content. I also have content on davidmead.withknown.com to pull in as that's where I'd been playing around with Known.

Needed db info. Went back in to MT and created new MySQL for Known to use

Entered info but something was wrong (fat fingers or Chrome auto-fill) Had error on page. Back buttoning didn’t take me back to the form. Had to delete the config.ini and start again. Some better handling of this error would be great.

Ended up editing the config.ini and FTP it up to the server. It works!

Filled in profile, setting and site configuration

Has nice step through on how & where to create the APIs to interact with the different social silos. A couple of the steps are a little out of synch, but I think that's more the silo's updating. Nothing you can't muddle through.

Go through social media and update the URL in my profiles with blog.davidjohnmead.com so IndieAuth and Brid.gy work.

Issues moving from WordPress

Encountered various errors on pages for plugin's, posting, and editing entries. Most have these have been fixed by Ben Werdmüller updating GitHub and myself FTPing the files/folders to my server.

Big issue around having curl errors after posting/editing certain content. See GitHub issue 629, issue 635, and issue 630. Looks like there may be progress but if you are on a shared server (like myself) editing the apache config to get around the basedir issue cannot be done.

Next steps to move from WordPress

Find a URL shortener for creating permalinks. Used the Hum plugin in WP.

Set up CRON to back up Known site to Dropbox etc.

Issues moving from hosted Known site

When Known was first released I started using it at [3], posting over 240 pieces there for about 2 months. The export hasn't worked in the settings, so Ben Werdmüller sent me the export. This is an entities.sql file and the folders associated with my posts.

I copied the folders containing my posts to the 'Uploads' folder on my server. I now have 2 sub-folders there: blog.davidjohnmead & davidmead.withknown.com

I can import the entities.sql file into my current hosted Known blog (after backing it all up) using phpMyAdmin. No problems there. All the old entries merged with the new, and I could see them in phpMyAdmin, but none of the entries display on blog.davidjohnmead.com.

Looking at the Issue 734 on the Known GitHub, it seems there are a lot more hoops to jump through including changing imported URL's etc. Not as easy as I first thought.

Import from Flickr

How to use Quill

To setup a Known instance so that you can use Quill to publish to it (this has not been extensively tested by the indieweb users as of now, and it seems that the /micropub endpoint is not fully working) :

How to use with Mobile

How to use the API

Idno/Pages/Admin/Users.php is the user administration endpoint, which translates to /admin/users as a URI endpoint.

Troubleshooting

Fix 404 Not Found on /begin

This usually means .htaccess is missing or more often, not allowed, based on the Apache configuration. If you manually visit /index.php/begin instead and see a landing page, it means that htaccess is not being allowed to rewrite URLs.

At least in recent versions of Ubuntu, Apache is configured by default with AllowOverride Off. To allow, create a new <Directory> configuration in /etc/apache2/apache2.conf for your Known install, with AllowOverride All, and restart Apache.

Itches

Notifications

New content types

IndieFriends

Known is designed to be a multi-user system (although Ben and Erin are currently using it as single-user sites). The intention, therefore, is to implement a traditional asymmetrical social networking friends / following model - with an IndieWeb spin.

Each user will have a following page, with h-cards marked up using XFN links to each followed user's profile.

When User A starts following User B, an appropriate link is made on the following page. A webmention is sent with the source set to User A's following page, and the target set to User B's profile page.

User B's system notifies User B, who can react accordingly.

Ideally, this is then attached to a reader component. See below ...

In a future embodiment, each step in the webmention process could be signed on a per-user basis (I'm interested in HTTP signatures, with keys exchanged / assigned at the point of mention. This would allow content to be made privately available to individual users. Other methods of retrieving private web content should also be considered.

Reader

Because it's not enough to publish: a way to _consume_ IndieWeb content from a Known user's followed sites and users.

Common Webmentions

Bridgy publish will POSSE your content if you include a webmention to a service-specific URL (e.g. `https://brid.gy/publish/facebook`). It would be great to turn these into simple check-box options when you're publishing via Known. (I'm curious what the interface looks like when you've plugged in their paid solution "Convoy")

Criticism

No HTTPS support

withknown.com doesn’t support https for browsing, during signup, or on anyone’s subdomain, meaning that authentication credentials and cookies can easily be intercepted on public wifi networks, as well as private content.

The domain supports https for *.withknown.com domains. The next release of EFF HTTPSEverywhere will automatically redirect.

The hosted service now supports HTTPS by default for all *.withknown.com domains. Custom domains are... complicated... but work is ongoing. Self hosted services are unaffected, and can be HTTPS or not at the owner's discretion.