feedread

Version, currently master branch1 version
  • master branchlatestJan 21, 2023

github.com/kereal/feedread

RSS and atom feed reader made with crystal and vue.js

8 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  feedread:
    github: kereal/feedread
    branch: master

master is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
1.5.0
License
MIT
Author
kirill svetlov
Targets
  • web from src/web.cr
  • grab from src/grab.cr

Dependencies

Runtime Dependencies

  • kemal*github: kemalcr/kemal
  • granite*github: amberframework/granite
  • micrate*github: juanedi/micrate
  • sqlite3*github: crystal-lang/crystal-sqlite3
  • spec-kemal*github: kemalcr/spec-kemal, branch: master

README

Проект, который я сделал для прикола

Это читалка новостных лент (rss и atom). Я использую ее, чтобы узнать что нового запостили на Хабре, VC, rutracker, и т.д. Моей целью было создать простой интерфейс, который позволил бы быстро с клавиатуры просмотреть подписки, удалить прочитанное, а интересное отложить в избранное.

big-light

Навигация клавишами «↑» и «↓», удалить — «del», добавить в избранное — «f», забанить категорию — «b». Когда записи кончаются, загружаются следующие 10.

Серверная часть сделана на Crystal. Я выбрал этот язык, потому что хотелось использовать мой любимый Ruby-подобный синтаксис и не хотелось держать интерпретатор с окружением ради такой мелочи. В итоге получилась пара бинарников без внешних зависимостей.

Первый запускается по крону, скачивает ленты, парсит данные и складывает их в базу данных sqlite.

Второй реализует web-сервер, который отдает статику и данные через REST API.

Клиентская часть — это приложение на Vue.js всего с парой компонентов.

Как полагается, есть темная тема оформления.

dark-and-light

Все вместе собирается в образ Docker на основе Alpine Linux размером всего 19Мб. У меня он работает на локальной машине.

Установка и запуск

docker pull kereal/feedread
docker run -idt --name feedread -p 3008:80 kereal/feedread
open http://localhost:3008

Сборка из исходников

git clone https://github.com/kereal/feedread
cd feedread
make

Сборка образа Docker и запуск контейнера

git clone https://github.com/kereal/feedread
cd feedread
make docker

Я увлекаюсь программированием для web, люблю всякие Linux-серверы и открыт для общения и предложений в этой сфере. По всем вопросам пишите на kereal@gmail.com