1

Этап 1

Поиск хостинга проекта

08 ноября—08 ноября

2

Этап 2

Подготовка сервера, настройка.

08 ноября—08 ноября

3

Этап 3

Подготовка среды разработки на двух ОС

08 ноября—08 ноября

4

Этап 4

Категории

08 ноября—08 ноября

5

Этап 5

Состояния публикации

08 ноября—08 ноября

6

Этап 6

Теги

08 ноября—08 ноября

7

Этап 7

Посты

08 ноября—08 ноября

8

Этап 8

Настройка автоматического развертывания

08 ноября—08 ноября

9

Этап 9

Комментарии

08 ноября—08 ноября

10

Этап 10

Аутентификация, авторизация

08 ноября—08 ноября

11

Этап 11

Проработка дизайна

08 ноября—08 ноября

12

Этап 12

Разметка постов в Markdown

13

Этап 13

Подписка на новые посты

1

Этап 1

Поиск хостинга проекта

08 ноября—08 ноября

2

Этап 2

Подготовка сервера, настройка.

08 ноября—08 ноября

3

Этап 3

Подготовка среды разработки на двух ОС

08 ноября—08 ноября

4

Этап 4

Категории

08 ноября—08 ноября

5

Этап 5

Состояния публикации

08 ноября—08 ноября

6

Этап 6

Теги

08 ноября—08 ноября

7

Этап 7

Посты

08 ноября—08 ноября

8

Этап 8

Настройка автоматического развертывания

08 ноября—08 ноября

9

Этап 9

Комментарии

08 ноября—08 ноября

10

Этап 10

Аутентификация, авторизация

08 ноября—08 ноября

11

Этап 11

Проработка дизайна

08 ноября—08 ноября

12

Этап 12

Разметка постов в Markdown

13

Этап 13

Подписка на новые посты

08 ноября 2014 24 марта 2015
Цель просрочена на 3535 дней

Цель заброшена

Автор не отписывался в цели 9 лет 8 месяцев 2 дня

Автор цели

Техника и Технологии

Свой блог на Ruby on Rails через BDD

За последнее время изучил большое количество материала по разработке на RoR, пришло время применять свои знания на практике.

В качестве первого приложения выступит простой технический блог. Разработку буду вести через поведение (BDD):

  1. Написание сценария - сценарий красный;
  2. Написание тестов - тесты красные;
  3. Написание кода - тесты зеленые;
  4. Возврат на п.2, пока сценарий не станет зеленым;
  5. Рефакторинг кода, тестов, сценариев;
  6. Возвращение на п.1, пока приложение не будет готово)

Итак, требования (список будет пополняться/изменяться):

  1. Один пользователь-администратор, OAuth для комментаторов;
  2. Посты в формате markdown;
  3. Создание постов в админ-панели;
  4. Загрузка готовых постов по FTP;
  5. Загрузка готовых постов через e-mail;
  6. Выделение кода в постах;
  7. Возможность вставки изображений;
  8. Категории постов;
  9. Теги;
  10. Комментарии;
  11. Состояния публикации постов;
  12. Полнотекстовый поиск;
  13. ?

Инструментарий:

ОС:

  • Windows 7
  • Ubuntu 14.10

Редактор:

Фреймворк:

Аутентификация, авторизация:

Тестирование:

  • Cucumber - тестирование через поведение
  • RSpec - тестирование
  • FactoryGirl - фабрики
  • Capybara - тестирование интерфейса
  • SimpleCov - покрытие кода тестами
  • Guard - непрерывное тестирование
  • Spork - предзагрузка на Windows
  • Spring- предзагрузка на Linux

Чистота кода:

Развертывание:

Другое:

  • Markup - формирование постов из Markdown
  • Semantic UI - frontend-фреймворк

 Критерий завершения

Блог развернут и функционирует

  1. Поиск хостинга проекта

    Нужен бесплатный хостинг под Ruby on Rails с возможностью обращения к файловой системе по FTP.

    Платный VPS от Time-Host. Планирую позже переехать на heroku + amazon s3.

    Стоимость этапа — 400 ₽

  2. Подготовка сервера, настройка.

    Nginx+Passenger, Nodejs, Git, RVM, Ruby. БД - SQLite.

  3. Подготовка среды разработки на двух ОС

    Необходимо развернуть среду разработки, настроить все инструменты, создать репозиторий. За одно хочу попробовать разработку на Linux и Windows, оценив совместимость проекта на этих ОС.

    Репозиторий: GitHub

  4. Категории

    Категории статей - классический CRUD ресурс.

  5. Состояния публикации

    Состояния - также классический CRUD ресурс, ничего необычного.

  6. Теги

    Теги - классический CRUD ресурс, все по аналогии.

  7. Посты

    Посты должны иметь:

    • Заголовок;
    • Содержание:
      • Текст;
      • Изображения;
      • Код;
    • Дату публикации;
    • Категорию (1);
    • Теги (0+);
    • Состояние (1);
  8. Настройка автоматического развертывания

    Настроить SSH-ключи, Capistrano.

  9. Комментарии

  10. Аутентификация, авторизация

  11. Проработка дизайна

    Этот этап должен выполняться на протяжении всего проекта

  12. Разметка постов в Markdown

    Любой должен иметь возможность получать новые посты по email.

  13. Подписка на новые посты

  • 3721
  • 08 ноября 2014, 13:39
Регистрация

Регистрация

Уже зарегистрированы?
Быстрая регистрация через соцсети
Вход на сайт

Входите.
Открыто.

Еще не зарегистрированы?
 
Войти через соцсети
Забыли пароль?