This article is a stub. You can help the IndieWebCamp wiki by expanding it.
Writing a note (mini UI)
Writing a note (full UI)
Writing an article
While the core of p3k is not open source, many components are. Below is a list of the components used in p3k.
I am working to pull out more parts of p3k into libraries and will keep this list up to date as I progress.
Publishing Other Content
I've had the best luck with the Jawbone UP for tracking my sleep. I have logs now since November 2011 of how much I've slept every night.
The Jawbone app has an interface for adding a note to a sleep record. Here is a screenshot showing an example of adding a note to a sleep record.
I use the Withings scale to track my weight. Through a series of convoluted steps, the data eventually ends up on p3k and is published here.
Currently every time there is a new measurement it results in a post on my site. I may change this to post once a week showing a small graph instead.
I wrote a simple simple pushup-tracking app which makes POST requests directly to my server, creating these posts.
Notes vs Articles
The things I am currently implementing in p3k:
These are a collection of annoyances that have respective features / improvements. As their annoyance level bubbles to the top, they're likely to become concrete "Working On" tasks.
Currently my internal classes for post types only specify a view template for when the post is on its own page. (e.g. http://aaronparecki.com/notes/2013/12/06/1/indieweb-icon) When viewed in a list (e.g. http://aaronparecki.com/tag/indieweb) the HTML is handled by an entirely different part of the code.
Refactor so the Page classes have all the knowledge they need to render items in both views. This will help with maintaining views for different post types.
Need Further Thought
Photos and Checkins
While I would ideally POSSE photos as checkins to Instagram and four square, at the moment both apps provide enough benefits that I think it makes sense to start with a PESOS implementation.
For these reasons, I think it makes sense to start by pesosing my content from these silos, and work on a posse implementation when the time is better.
I've also been thinking about taking a more SOA approach with p3k, so that other people can re-use more components. While this topic deserves an entire blog post, the short version is that if like to set up an indieweb-friendly checkin system which handles all the generic stuff like venue searching, endpoints for a mobile app, generating maps, etc, and provide this via a read/write API so that I can use it to create checkin posts on my site, and if others wanted to use it all they would have to do is handle post requests from this service to their server to create new posts. (See micropub for some thoughts on that architecture)
I've been analyzing the way I create and post photos online. I put these into two categories:
Based on these two use cases, this is how I will be handling photos on my site:
Really getting annoyed that when Foursquare venues are renamed, merged or deleted, my own history is changed.
Since I carry an active GPS tracker at all times, I collect a large amount of location data. It is not automatically organized into "trips" or anything, it's just a raw stream. I've been considering various ways of publishing this for some time.
Currently I publish my current city as well as time zone of wherever I am on my home page. I do not yet have a feed available.
I'm considering publishing a new "location" post any time I change cities (or possibly also large neighborhood). Here is an example of publishing my city automatically to Facebook: http://www.flickr.com/photos/aaronpk/6962452588/
There are other non-venue locations I may want to publish, such as when I get into a neighborhood I haven't been to in a while. Ideally my phone would detect automatically when I've entered a new area or an area I haven't been to in a while. Probably I would want it to prompt me before publishing anything publicly. I could receive a push notification saying something like "It looks like you're in NW Portland for the first time since August! Publish this?"
I have been using Foursquare consistently for a number of years now, and it is the authoritative source of every venue I've been. I know that if I have never checked in somewhere before on Foursquare, I actually have never been there before.
While my Foursquare feed is currently public, I'm reconsidering whether I want my "IndieSquare" feed to be completely public. I may end up being more selective about the checkins I make public instead, and keep my full checkin history private.
Examples of public checkins often include a short note from me along with the venue for things like checking in to a venue for a public event, or checking in somewhere to say I'm going to be hacking there for a while inviting people to join me. When I check in to lunch two blocks away from my office, it's not that I don't want anyone to know I'm there, it's just that probably nobody cares and there usually isn't anything actionable that would come from them knowing anyway. Usually I'm getting something to go and don't have time to stay and talk anyway.
While the entire p3k stack is not open source, I have open-sourced many of the components. I've chosen to provide components of the stack rather than the whole thing because in reality nobody is going to want to use the exact same workflow I have built. Instead, components of my site can be re-used by others in their own way.
See #Source Code above.