====== PuffBlob ====== PuffBlob is only a **concept** at the moment. Nothing is fixed. Some concepts may be abandonned or modified. No implementation is planned at this time (I lack time). ===== What if PuffBlob ? ===== The cloud is all the rage. With the cloud, your data is stored somewhere on the internet (but you do not know where), on big server (owned by others), mixed with the data of plenty of other users. PuffBlob is not a big cloud, it's only a **puff**. But it's **//your//** puff. Not only it's yours, but you know where it is, and you control it. It's not a big cloud you can't reach. But PuffBlob is also a **blob**: It absorbs plenty of different things: Links, images, web pages, texts, music, videos, program snippets, articles, files... And that's a good thing because you have plenty of interesting thing you want to keep. Just throw them at your PuffBlob: It will absorb and keep them preciously. And it can grown large, as large as you want. The good thing with a blob is that it can take **different shapes**. It can shape itself into a **blog**, displaying selected items stored in your blob. It can shape itself into a **gallery**, showing nice picture you have taken. It can shape itself into **public bookmarks**, showing interesting links you have found on the net. It can shape itself into a **video gallery**, showing the videos you have taken or found. It can shape itself in a **MP3 player** so that you can listen to your music. You can create as many shapes as you want, each shape picking selectively different items from your blob and showing them in different manners. {{ :php:puffblob.png?nolink& |}} ===== Goals ===== * **Keep** : Store everything you are interested in. * **Organize** what you have stored. * **Retrieve** what you have stored. * **Share** selectively what you have stored with others. ===== Concepts ===== ==== Key concepts ==== * **Storage**: Absorbs anything you throw at it: texts, links, images, music, videos... * **Classification**: Optionnally classify the things it contains (tags, folder, topics ?). It will try to classify as intelligently as possible (Use Bayesian networks on meta information and content ?) * **Shapes**: you can shape it in different manners, so that it can show different part of its content in different manners: blog (with navigation by date/tags), gallery (with navigation by folders), music (with navigation by artist/album/genre), links (with navigation by page/date/tags)... ==== Additionnal concepts ==== * **Inputs** can be manual (add a link or text entered in a form, uploaded file, link or file drag'n dropped in PuffBlob window...) or automated (read an external RSS/ATOM feed, etc.) * **Output** can be shapes (blog,gallery,twitt,feed... displayed in a web page) or actions (send a file through FTP, send an email, send HTTP request, save to file...) * **Visibility**: Some shapes are public (everyone can see them), some are private (some shapes will be visible only to people you select (login/password or not)), some will be secret (only //you// can see them). * **Caching**: Some things are linked, some others are stored or cached locally. Example: Articles you write are stored. Links to images will cache the images locally. Links to web pages will not cache them (except if you want it to cache the page locally, to keep a copy). * **Meta-information**: type (mime?), title, tags, folder (eg. for galleries), author, licence... ? (and probably plenty of other things.). Meta information fields should not be fixed nor mandatory. Should it be scriptable ? (I would vote for "no"). ===== Partial example ===== Say you collect links about programming and music. You also write articles about these subjects. You take videos of concerts. You write programs and snippets. You can create a blog about music simply by creating a shape which will automatically pick content from your blob about music (articles you have written and/or links and/or videos of concerts and/or mp3 files...). You can create another blog about programming in the same manner, simply by creating a shape that will display items you have collected about programming in your blob (articles, snippets, files...). You can create a public music listening playlist by creating a shape which will pickup all music (mp3 or videos) automatically from your blob. ===== Credits ===== If you re-use the concepts expressed in this page, I would be glad if you could mention my website (sebsauvage.net). Thanks, I know you're a good person. ~~DISCUSSION:closed~~