#+OPTIONS: toc:2 author:nil creator:nil
#+STARTUP: align
#+TITLE: KrISS feed
#+AUTHOR: Tontof
#+LANGUAGE: en
#+STYLE:
#+LINK_UP: ..
#+LINK_HOME: ..
#+EXPORT_EXCLUDE_TAGS: noexport
#+STYLE:
KrISS feed is a simple and smart (or stupid) feed reader.
To see an online example: http://tontof.net/feed
Feel free to contribute: https://github.com/tontof/kriss_feed
* Features
:PROPERTIES:
:CUSTOM_ID: features
:END:
- [[#kiss][KISS]] philosophy (Keep It Simple and Smart)
- Fast (the fastest RSS reader ?)
- Easy to [[#installation][install]] (if you find an easier solution, I'm all ears)
- Easy to personnalize (default style is ugly ? Just go and see [[#style][Style]])
- Easy to share with [[http://sebsauvage.net/wiki/doku.php?id=php:shaarli][Shaarli]] but also others sharing tools using GET parameters of URL
- Mobile support using responsive web design
- Customize everything such as menu, paging to keep only what you need
- Auto mark as read when going to next item
- Add favicon to feeds
- Public/protected/private visibility
- Update manually/using javascript/using cron
- Keep items as starred
- List or expanded view
- Order by newer or older items
- Show unread or all items
- [[http://tontof.net/feed/?help][Keyboard shorcuts]]
- OPML import/export
* Requirements
:PROPERTIES:
:CUSTOM_ID: requirements
:END:
- php 5.2
- your server should be able to download external content
- DOMDocument + libxml2 (install php-xml)
- mbstring (install php-mbstring)
- recommanded: curl (install php5-curl)
* Installation
:PROPERTIES:
:CUSTOM_ID: installation
:END:
- Download index.php file:
- Stable version: [[https://raw.github.com/tontof/kriss_feed/master/index.php][index.php]]
- Development version: [[https://raw.github.com/tontof/kriss_feed/master/src/index.php][index.php]]
- Copy the index.php file on your web server
- Access this file in your browser
- Choose a login and a password and that's it !
- Now you can sign in, import your opml file and enjoy.
* Style
:PROPERTIES:
:CUSTOM_ID: style
:END:
** How to customize KrISS feed
:PROPERTIES:
:CUSTOM_ID: css-user
:END:
That's easy you just have to create a =user.css= file into =inc= directory:
- =index.php=
- =inc=
- =user.css=
That's it !
** How to colorize odd and even feeds/items
:PROPERTIES:
:CUSTOM_ID: css-odd-even-feeds-items
:END:
Inspired from [[https://github.com/tontof/kriss_feed/blob/master/style/xinfe/user.css][Xinfe style]]
*** For feeds
:PROPERTIES:
:CUSTOM_ID: css-odd-even-feeds
:END:
#+begin_src css
li.feed:nth-child(odd){
background: rgba(0, 255, 0, 0.06);
}
li.feed:nth-child(even){
background: rgba(0, 0, 255, 0.06);
}
#+end_src
*** For items
:PROPERTIES:
:CUSTOM_ID: css-odd-even-items
:END:
#+begin_src css
li.item-list:nth-child(odd){
background: rgba(0, 255, 0, 0.06);
}
li.item-list:nth-child(even){
background: rgba(0, 0, 255, 0.06);
}
#+end_src
** Screenshots
:PROPERTIES:
:CUSTOM_ID: screenshots
:END:
To install a style, just download the corresponding css file and place
into =inc= directory (rename into =user.css= if necessary).
Some styles need other files as font.
| author | screenshots | files |
|----------------+-----------------------------------------+-------------------|
| ali0une | [[file:img/style/ali0une_white.jpg][file:img/style/ali0une_white_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/ali0une/white.css][css]] ([[https://github.com/tontof/kriss_feed/tree/master/style/ali0une][other files]]) |
| | [[file:img/style/ali0une_black.jpg][file:img/style/ali0une_black_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/ali0une/black.css][css]] ([[https://github.com/tontof/kriss_feed/tree/master/style/ali0une][other files]]) |
|----------------+-----------------------------------------+-------------------|
| bootstrap | [[file:img/style/bootstrap.png][file:img/style/bootstrap_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/bootstrap/bootstrap.css][css]] |
|----------------+-----------------------------------------+-------------------|
| geocities | [[file:img/style/geocities.png][file:img/style/geocities_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/geocities/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| greader | [[file:img/style/greader.png][file:img/style/greader_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/greader/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| grey | [[file:img/style/grey.jpg][file:img/style/grey_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/grey/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| orangina-rouge | [[file:img/style/orangina-rouge.png][file:img/style/orangina-rouge_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/orangina-rouge/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| p3ter | [[file:img/style/p3ter.png][file:img/style/p3ter_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/p3ter/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| pierre | [[file:img/style/pierre.png][file:img/style/pierre_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/pierre/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| sebsauvage | [[file:img/style/sebsauvage.png][file:img/style/sebsauvage_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/sebsauvage/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| tvelter | [[file:img/style/tvelter.png][file:img/style/tvelter_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/tvelter/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| vinc3r | [[file:img/style/vinc3r.jpg][file:img/style/vinc3r_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/vinc3r/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| xinfe | [[file:img/style/xinfe.png][file:img/style/xinfe_thumb.jpg]] | [[https://raw.github.com/tontof/kriss_feed/master/style/xinfe/user.css][css]] |
|----------------+-----------------------------------------+-------------------|
| | | |
* TODOs
:PROPERTIES:
:CUSTOM_ID: todo
:END:
- fix css/html/js/php validation
- css : http://jigsaw.w3.org/css-validator/
- html : http://validator.w3.org/
- js : http://www.jshint.com/
- php : https://github.com/opensky/Symfony2-coding-standard
- opml : http://validator.opml.org (OK)
- https://github.com/tontof/kriss_feed/issues/97
* FAQ (Frequently Ask Question)
:PROPERTIES:
:CUSTOM_ID: faq
:END:
** Why did I create KrISS feed ?
:PROPERTIES:
:CUSTOM_ID: why
:END:
I was using Google Reader and when Google decided to [[http://googlereader.blogspot.fr/2011/10/upcoming-changes-to-reader-new-look-new.html][integrate
Google+]] it was for me the end (before the [[http://googlereader.blogspot.fr/2013/03/powering-down-google-reader.html][official one]] on July 1,
2013): "As a result of these changes, we also think it's important
to clean things up a bit. Many of Reader's social features will
soon be available via Google+, so in a week's time we'll be
retiring things like friending, following and shared link blogs
inside of Reader."
I have looked at existing solutions (rssLounge, tiny tiny RSS, ...)
but I was not happy so I've coded mine (as we say: "if you want
something done right, do it yourself").
** What is KISS philosophy ?
:PROPERTIES:
:CUSTOM_ID: kiss
:END:
The [[https://en.wikipedia.org/wiki/KISS_principle][KISS]] principle has many definitions and everyone lets define
KISS as he wants. For me, KrISS feed should be as accessible as
possible for everyone. That's why, there is for example, no SQL
database to configure and a single file to copy for end users. But
it should also be smart and that's why source code is easy to
understand and well structured.
I'm not satisfied yet because there still a lot of work to do, but
hey, there are just 24 hours per day :-)
** Why I can not add or update my feeds properly ?
:PROPERTIES:
:CUSTOM_ID: feed-validation
:END:
First of all check your feed validity:
http://validator.w3.org/feed/
KrISS feed uses libxml2 and if the feed is not well formated, it
will fail. Contact the feed owner to tell him to correct his feed.
** Does it work on free.fr ?
:PROPERTIES:
:CUSTOM_ID: free-dot-fr
:END:
No, external accesses are disabled since December 1, 2008.
** How to reset KrISS feed password ?
:PROPERTIES:
:CUSTOM_ID: reset-password
:END:
You can not reset KrISS feed password, if you forgot your password
simply delete the data/config.php file and display the page again. You
will be asked for a new login/password.
** How to stay signed in ?
:PROPERTIES:
:CUSTOM_ID: stay-signed-in
:END:
For KrISS feed version 8. If it does not exist, create =plugins= and
=sessions= directories. Create a file =session.php= inside =plugins=
directory and add these lines :
#+begin_src php