joebew42/daily-activity-log-to-rss

View on GitHub
README.md

Summary

Maintainability
Test Coverage
# Daily Activity Log to RSS

[![Build Status](https://travis-ci.org/joebew42/daily-activity-log-to-rss.svg)](https://travis-ci.org/joebew42/daily-activity-log-to-rss)
[![Coverage Status](https://coveralls.io/repos/joebew42/daily-activity-log-to-rss/badge.svg?branch=master&service=github)](https://coveralls.io/github/joebew42/daily-activity-log-to-rss?branch=master)
[![Code Climate](https://codeclimate.com/github/joebew42/daily-activity-log-to-rss/badges/gpa.svg)](https://codeclimate.com/github/joebew42/daily-activity-log-to-rss)
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/joebew42/daily-activity-log-to-rss?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

A web application that converts a [**Daily Activity Log**](https://github.com/joebew42/daily-activity-log)
into a **RSS feed**

Live app at: `https://daily2rss.herokuapp.com/rss/` ([example](https://daily2rss.herokuapp.com/rss/?url=http://joebew42.github.io/events))

## Usage

Visits `https://daily2rss.herokuapp.com/rss/?url=XXX`

Where `XXX` is an URL pointing to a Daily Activity Log.

# Getting started

To start the application

1. Install dependencies with `pip install -r requirements.txt`
2. Start the server with `./manage.py server`
3. Visit the service at `http://localhost:5000/rss/?url=XXX`

Where `XXX` is a valid [**Daily Activity Log**](https://github.com/joebew42/daily-activity-log) URL.

_Example:_

`http://localhost:5000/rss/?url=http://joebew42.github.io/events.xml`

To run all tests

1. Unit tests with `./manage.py test`
2. Integration tests with `./manage.py integration-test`

# Try it with Docker

## Run from the official Docker image

```
$ docker run -d -p 5000:80 joebew42/daily2rss:latest
```

Visits `http://localhost/rss/?url=http://joebew42.github.io/events`

## Build and run from scratch

```
$ docker build -t daily2rss:latest --rm=true .
$ docker run -d -p 5000:80 daily2rss:latest
```

Visits `http://localhost/rss/?url=http://joebew42.github.io/events`

# Contributing

## Submit issue

If you have any suggestions (ex. `bug`, `refactoring`, `feature`, or other), please report an
[issue](https://github.com/joebew42/daily-activity-log-to-rss/issues) and rememeber to use tags properly.

## Improve the code

1. Fork it ( https://github.com/joebew42/daily-activity-log-to-rss )
2. Create your feature branch (git checkout -b my-new-feature)
3. Write tests or integration tests for your feature, or regression tests highlighting a bug
4. Write the feature itself, or fix your bug
5. Commit your changes (`git commit -am 'Add some feature'`)
6. Push to the branch (`git push origin my-new-feature`)
7. Create a new Pull Request

_Remember to squash your commits and rebase off master._

## About the code

The code is developed following the `IDD` (Interaction Driven Design)
that was presented by [Sandro Mancuso](https://github.com/sandromancuso) in his various
talks ([Lean Agile Scotland](https://vimeo.com/107963074), [jax 2014 London](https://vimeo.com/128596005)).
I also wrote some [notes](http://joebew42.github.io/notes/20150712SandroMancuso_CraftedDesign.txt)
in which I tried to summarize the concepts behind `Clean Software Architecture`, `IDD` and the development workflow.