public
Description: RSS/Atom feeds aggregator, powered by Ramaze. Using Sequel for ORM.
Homepage: http://planet.zhekov.net/
Clone URL: git://github.com/zh/tamanegi.git
Click here to lend your support to: tamanegi and make a donation at www.pledgie.com !
tamanegi / README
100644 70 lines (47 sloc) 1.898 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
Tamanegi -- RSS/Atom feeds aggregator powered by Ramaze
========================================================
 
The project previous name was RaPlanet. But there is another project with
the same name, so I changed the name to Tamanegi (onion in japanese).
Maybe somebody will remember the Matz' presentation on Rubykaigi 2006
"The state of the onion" :) Tamanegi also trying to observe the state of
the net and aggregate atom/rss feeds in one news stream.
 
Live demo of the application can be seen on URL: http://planet.zhekov.net/
 
 
Application details
--------------------
 
 * ORM (model): Sequel (_core and _model)
 * Controllers: Ramaze (hm, maybe plain Rack will be also enough?)
 * Views: Ezamar (TODO: switch to Tenjin)
 
 
Prerequirements (needed gems)
-----------------------------
 
 * sqlite3-ruby (database)
 * validatable (models validation checks)
 * sequel (models)
 * feed-normalizer (feeds parsing)
 * json (still not used)
 * ratom (feeds)
 * thin (optional, deployment, can be mongrel, webrick etc.)
 * SystemTimeout (feeds fetching giveup timeout)
 
 
Usage
------
 
[!] Change the settings in the config.rb file - base_url, items per page etc.
 
 * Command line usage
 
You can use Tamanegi just to fill your database with items and display them with
something else (Ruby on Rails etc.). So from irb or a script
 
 require 'tamanegi'
 Tamanegi::sync!(false,true)
 
 * "Development" mode
 
$ cd tamanegi
$ ./start.rb
 
This will create the needed tables in the DB (sqlite3: db/tamanegi.db)
"on the fly". By default the thin server is started, but you can change it
inside start.rb.
 
 * "Production" mode
 
On my site I have nginx talking to two thin instances via sockets:
 
$ cd tamanegi
$ mkdir -p log
$ thin start --servers 2 --socket /tmp/negi.sock -R ramaze.ru
 
And inside nginx.conf:
 
 upstream play {
      server unix:/tmp/negi.0.sock;
      server unix:/tmp/negi.1.sock;
 }