Coder Social home page Coder Social logo

fincontrol's People

Contributors

fo0lman avatar gitter-badger avatar tryfonkov avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

gitter-badger

fincontrol's Issues

Create HomePage maket

  1. Create HomePage maket;
  2. Upload to /dev/makets (development branch)
  3. Commit with Issues number

База данных

  • Создать базу данных
  • Подготовить тестовые данные в формате JSON
  • Настроить права доступа

Создать страницы модуля и их представления.

Создать страницы модуля и их представления

Список страниц:

  • homePage
  • registration
  • forgotPasswordPage
  • dashboardPage
  • notFoundPage

Все страницы должны создаваться, через конструктор, в котором должен быть заложен функционал:

  • изменение title
  • содержимое страницы и его render
  • удаление страницы

Файлы страниц должны содержаться в каталоге /dist/js/pages
Представления страниц должны содержаться в каталоге /dist/js/views/pages

Router.js

Подредактировать Router.js для правильного создания страниц приложения(содержится в
каталоге /dist/js/routers)

Templates

На основе созданной верстки создать файлы шаблонов *.hbs. Расположение шаблонов должно быть в каталоге /dist/js/templates.

Gruntfile.js

Создать задачу для компилирования шаблонов Handlebars https://github.com/gruntjs/grunt-contrib-handlebars. Расположение компилированных должно быть в каталоге /dist/js/templates.

Общие шаги:

  1. Выполнить js коддинг;
  2. Выгрузить в development branch
  3. Коммитить с номером ишеза

Проверка js кода и review - Сергей.

Время на разработку 3 час. Deadline 09/08/2015 10:00.

Создание страницы "Dashboard" 2h

Подключение всех компонентов вместе

Компоненты

  • Balance
  • Buttons
  • Table

При удалении страницы, страница удаляет компоненты
При создании страницы создает.

Этот основной функционал должен быть заложен глобально в абстрактном классе

Create makets

  1. Create MainPage and StaticticPage makets;
  2. Upload to /dev/makets (development branch)
  3. Commit with Issues number

Создать модель Balance

  • Создать файл модели в каталоге проекта - js/models
  • Модель должна содержать следующие свойства:
    • sum

Создать логику авторизации(main)

Создать логику авторизации

События

  • создать события в представлениях
  • подключить public API с модуля авторизации
    • регистрация
    • авторизация по email
    • авторизация по кнопкам соц сетей
    • восстановление пароля

Если пользователь не авторизован

  • может видеть все страницы кроме Dashboard
  • в случае авторизации делать редирект на dashboardPage

Если пользователь авторизован

  • может видеть только страницу Dashboard. (на данном этапе разработки)
  • в случае не авторизации делать редирект на homePage
  • показать top-main-menu
  • видоизменить top-login-menu на 2 иконки (шестеренка и аватар)

будет плюсом добавить имя пользователя возле аватара, вывести полную информацию о пользователе на странице Dashboard(можно без верстки). информацию можно получить из модуля авторизации по АПИ getUserData()

  • на иконке аватара пользователя сделать выпадающее меню с пунктом выход, при клике на который сделать выход из акаунта.

Общие шаги:

  1. Выполнить js коддинг;
  2. Строго придерживаться стиля программирования и имен файлов
  3. Выгрузить в development branch
  4. Коммитить с номером ишеза

Проверка js кода и review - Сергей.

Время на разработку 3 часа. Deadline 10/08/2015

Создание компонента "Buttons" 3h

Компонент отвечает за быстрое добавление расхода/прихода в таблицу.

Состоит из

  • model
  • collection
  • view
  • верстки

Model/Collection (1h 30m)
Пока находится на стороне клиента, и там захардкожены значения этих кнопок.
То есть данные операций и текст.

View (1h)
Должен иметь метод render после которого рендерятся кнопки в this.el

После нажатия на определенную кнопку должен посылать ивент (либо напрямую) добавлять элемент в таблицу. (сделать на глаз, после того как будет сделана таблица, зафиксить) (30m)

Верстка вроде уже есть

Верстка popup - добавление транзакции

Popup

Сверстать popup-окно создания транзакции

Использовать Bootstrap CSS Framework http://getbootstrap.com
Можно использовать примеры из Docs Bootstrap ( http://getbootstrap.com/css/#forms ).

Окно должно содержать следующие элементы:
* date
* sum
* category
* source
* save (button)
* cancel (button)

Требования:

  • responsive
  • html5
  • validate ( https://validator.w3.org )
  • минимальное использование user css styles
  • user css styles пишутся на SASS, компилируются при помощи пакета grunt-sass.

Проверка верстки и review - Александра.

Общие шаги:

  1. Сверстать страницу;
  2. Выгрузить в development branch
  3. Коммитить с номером issue

Время на разработку 1 час. Deadline 13/08/2015.

Сверстать страницы регистрации и восстановления пароля проекта

Страница регистрации

Используя макет https://raw.githubusercontent.com/fo0lman/FinControl/development/dev/maket/registration_form.png и результаты предыдущей работы (Верстку домашней страницы) сверстать cтраницу регистрации.

Использовать Bootstrap CSS Framework http://getbootstrap.com
Можно использовать примеры из Docs Bootstrap ( http://getbootstrap.com/css/#forms ).

Страница должна содержать:

  • body > form
    • email
      • label
      • input
      • messagebox(hidden)
    • name
      • label
      • input
      • messagebox(hidden)
    • password
      • label
      • input
      • messagebox(hidden)
    • birthday
      • label
      • input
      • ico
      • messagebox(hidden)
    • state
      • checkbox + label (male)
      • checkbox + label (female)
    • SignUp(button)

Страница восстановления пароля

Используя результаты предыдущей работы (Верстку домашней страницы) сверстать cтраницу восстановления пароля.

Страница должна содержать:

  • body > form
    • email
      • label
      • input
      • messagebox(hidden)
      • Restore (button)

Требования:

  • responsive
  • html5
  • validate ( https://validator.w3.org )
  • минимальное использование user css styles
  • user css styles пишутся на SASS, компилируются при помощи пакета grunt-sass.

Проверка верстки и review - Александра.

Общие шаги:

  1. Сверстать страницу;
  2. Выгрузить в development branch
  3. Коммитить с номером ишеза

Время на разработку 1 час. Deadline 07/08/2015.

Создание компонента "Adding Popup" 2h 35m

Состоит из

View (2h)
Верстка (поправить) (20m)

Открывается после создания
Удаляется после закрытия
Есть кнопка добавления, которая собирает все данные с полей и посылает екшн или событие на добавление (Как компонент Buttons)

Вызывать будет компонент Buttons (подключить когда будет создан компонент) (15m)

Create SettingPage maket

  1. Create SettingPage maket;
  2. Upload to /dev/makets (development branch)
  3. Commit with Issues number

Создание компонента "Table" 3h

Нужна для отображения последних операций.

Состоит из
Model (будет в других местах тоже использоватся)
Collection (будет в других местах тоже использоватся)
View table (таблица)
View item (запись)
Верстка таблицы
Верстка записи

Model (1h)
Модель записи в таблице, будет использоваться в статистики.
Дефолтное значение даты записи - текущаяя.

Collection (30m)
Коллекция в которой есть сортировка по дате

View table (1h)
Вьюха всей таблицы без строк
Есть метод render который берет для каждой записи из модели создает вюху записи и добавляет в таблицу
Так же может удалить все записи при удалении самой вьюхи

View item (30m)
Вюха 1 записи. Может удалять запись

Создание компонента "Balance" 1h 30m

Состоит из

  • model
  • модель должна быть Singletone (30m)
  • view (1h)
  • верстки

Необходимо создать эти элементы.
На момент написания уже есть model и верстка.

Нужен view и синглтон обертка для модели

View должен иметь метод render

Верстка Dashboard страницы

Dashboard page

Сверстать Dashboard страницу в соответствии с прототипом https://raw.githubusercontent.com/fo0lman/FinControl/development/dev/maket/MainPage-login.png

Использовать Bootstrap CSS Framework http://getbootstrap.com
Можно использовать примеры из Docs Bootstrap ( http://getbootstrap.com/css/#forms ).

Верстка страницы должна содержать следующие элементы:

  • блок balance
    • label
    • input
  • блок actions
    • add (button)
    • блок favorite
      • label
      • button (3 элемента)
  • блок table
    • table
      • th
      • tr
      • td

Требования:

  • responsive
  • html5
  • validate ( https://validator.w3.org )
  • минимальное использование user css styles
  • user css styles пишутся на SASS, компилируются при помощи пакета grunt-sass.

Проверка верстки и review - Александра.

Общие шаги:

  1. Сверстать страницу;
  2. Выгрузить в development branch
  3. Коммитить с номером issue

Время на разработку 1 час. Deadline 13/08/2015.

Создать модуль авторизации

Создать модуль для авторизации через сервис firebase.com https://www.firebase.com/

Модуль должен иметь следующий функционал и входящие данные:

  • Регистрация пользователя через Email (registerUser),
    • email
    • password
  • Авторизация пользователя через Email (AuthenticateUserEmail),
    • email
    • password
  • Сброс пароля пользователя (resetUserPassword),
    • email
  • Изменение пароля пользователя (changeUserPassword),
    • email
    • oldpassword
    • newpassword
  • Авторизация пользователя через соц. сети (AuthenticateUserSocial),
    • social_provider
  • Получить статус авторизации пользователя (getUserAuthStatus),
  • Получить данные пользователя (getUserData),
  • Выход из учетной записи (logoutUser)

Модуль авторизации должен располагаться в каталоге /dist/js/modules/.
Модуль должен иметь публичные API для простого доступа к его функциям.

Модель Item

  • Создать файл модели в каталоге проекта - js/models
  • Модель должна содержать следующие свойства:
    • date
    • sum
    • category
    • source

Сверстать домашнюю страницу проекта

Используя макет https://raw.githubusercontent.com/fo0lman/FinControl/development/dev/maket/MainPage-logout.png, сверстать домашнюю страницу проекта.

Использовать Material Design Lite css framework http://www.getmdl.io
Можно использовать один из templates ( http://www.getmdl.io/templates/index.html ) предоставленными разработчиками mdl.

Страница должна содержать:

  • header
    • Logo
    • Menu Block - Link1, Link2, Link3... (Hidden)
    • Sign Up link
    • Login link
  • body
    • info block(3 columns)
  • footer
    • bottom menu (float left)
      • About link
      • Help link
      • GitHub link
    • Copyright (float right)
  • modal window (login-form)
    • user
      • label
      • input
      • messagebox(hidden)
    • password
      • label
      • input
      • messagebox(hidden)
    • remember Me (checkbox)
    • login button
    • forgot password link
    • register link
    • social icons block

Требования:

  • responsive
  • html5
  • validate ( https://validator.w3.org )
  • минимальное использование user css styles
  • user css styles пишутся на SASS, компилируются при помощи пакета grunt-sass.

Проверка верстки и review - Сергей.

Общие шаги:

  1. Сверстать страницу;
  2. Выгрузить в development branch
  3. Коммитить с номером ишеза

Время на разработку 2 часа. Deadline 06/08/2015.

Коллекция Items

  • Создать файл коллекции в каталоге проекта - js/collections
  • Коллекция должна:
    • содержать ссылку на модель
    • обеспечивать сортировку данных по дате

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.