A PHP web application can read multiple rss feeds and store them to database. Moreover, it allows user manipulate both feeds and their items. The project include two type of communication, console and web application.
Sample feeds http://www.feedforall.com/sample-feeds.htm.
Some technicals applied to this project:
- CSRF Token
- Validation
- Pagination
- HTML encode and purifier.
- PJAX
- WYSIWYG
- Bootstrap
- Date picker
- Select2
- Packages management
- Automation build
- Code standard PSR1, PSR2
- Apache 2.2 or later
- PHP 5.4.0 or later
- MySQL 5.5 or later
- Composer 1.1.2 or later
Modify file build-default.properties
with your environment data.
app.env=prod
app.db.driver=mysql
app.db.host=localhost
app.db.user=root
app.db.password=root
app.db.name=feeds_reader
app.log.path=${project.basedir}/runtime/logs/console.log
-
You only need to run install file follow command in project root directory
$./install
-
The project is installed successful if you can see this message.
BUILD FINISHED
You can add multiple feeds by run the command in root directory of project.
$./yii feed/add "url_1, url_2"
You can monitor any console message response in log file. Ex.
${project.basedir}/runtime/logs/console.log
You can access website by route
http://localhost/feedreader/web/
In addtion, you also can:
- Subscribe multiple feeds
- Unsubscribe a feed
- View a list of feeds with 10 items per page.
- Mannually create a feed item
- Update a feed item
- Delete a feed item
- Filter feeds by category
The project is powered by Yii2 frameworks.
http://www.yiiframework.com/
In addition, it also used some packages from:
yii2-ajaxcrud: https://github.com/johnitvn/yii2-ajaxcrud
yii2-redactor: https://github.com/yiidoc/yii2-redactor
kartik-select2: https://github.com/kartik-v/yii2-widget-select2
kartik-datepicker: https://github.com/kartik-v/yii2-widget-datepicker
phing: https://github.com/phingofficial/phing
Tuan Vu tuancode@icloud.com