Skip to content

RSS Reader - третий учебный проект в рамках профессии "Фронтенд-программист" на Хекслете.

Notifications You must be signed in to change notification settings

vetneka/frontend-project-lvl3

Repository files navigation

Actions Status Build Status Maintainability Test Coverage

RSS Reader

study project at hexlet.io

Overview

RSS Reader is a service for aggregating RSS feeds. It allows you to add an unlimited number of RSS feeds, updates them and adds new entries to the general stream.

Used technologies

JavaScript: yup, axios, onChange, i18next, promises (native)

CI/CD: vercel, codeclimate, github actions

Tests: jest, @testing-library

Bundler: webpack

Layout: bootstrap 5

Features

  • Form

    • used by yup to analyze and validate input value
    • unsupervised
  • UX

    • form blocked during submission
    • error handling (possible errors):
      • 'Поле не должно быть пустым'
      • 'Ссылка должна быть валидным URL'
      • 'RSS уже существует'
      • 'Ошибка сети'
      • 'Ресурс не содержит валидный RSS'
    • success handling (possible messages):
      • 'RSS успешно загружен'
  • Post preview

    • click on the "View" button opens a modal window with a description of the post
    • link of the post is marked as visited
    • used bootstrap modal component
  • Subscribing to news feed

    • AJAX (axios) is used to periodically (once every 5 seconds) poll the added feeds for new posts

Installation and Usage

Prerequisites:

node.js >= 14
npm >= 6
make >= 4

Online:

RSS Reader (demo)

RSS feed with interval updated:

http://lorem-rss.herokuapp.com/feed?unit=second&interval=5

Locally

$ git clone git@github.com:vetneka/frontend-project-lvl3.git
$ make install
$ make develop

Run tests

$ make test

$ make test-coverage

About

RSS Reader - третий учебный проект в рамках профессии "Фронтенд-программист" на Хекслете.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages