Техническое задание разработки Ядра

Версия 0.1 от 19.05.2016 (Alpha1)

Привет. Мы собираемся группой программистов и составляем совместный список работ, который необходимо сделать. Далее каждый сможет выбрать себе ту задачу которая ему нравится и реализовать. За это получить свою долю от генезиса (первоначальной эмиссии).

Техническое задание

(Alpha1)

1. Server: Linux OS;
2. DB: MongoDB;
3. Server side: Node.js/io.js;
4. Front-end: HTML5, CSS3, Sass OR LESS, JavaScript;
5. Data: JSON;
6. Frameworks: Meteor.js OR Angular.js/Ember.js AND Express.js+Sails.js;
7. Version Control: Git;
8. Proto: Nodebb, NXT, tradernet.

Система

Система созтоит из:
1. Ядро - API + сервер на io.js/node.js + простейший GUI: html, css, js.
2. Exchange - платёжная система, механизм ввода/вывода биткоинов, рублей, долларов и пр.
3. Люди (пользователи) - привлечение людей, написание документации, статей, видео, презентации, участие в конференциях и выставках, налаживание связей, реферальная система.

Приблизительная оценка трудозатрат:
1. Ядро - 20%
2. Exchange - 10%
3. Люди - 70%

1. Ядро

Ядро состоит из 1) модели, 2) базовой части и 3) модулей.

1.1. Модель

Основные сущности:
1. Аккаунт. Запись о существании аккаунта в blockchain + зашифрованные даннные о кошельках и активах.
2. Кошелёк. У аккаунта может быть один или несколько кошельков. Кошельки не ассоциированны с аккацнтами и по умолчанию анонимны.
3. Транзакция. Все действия записываются в blockchain в виде транзакций.
4. Блок. Транзакции группируются в блоки. Блок генерируется и подтвердается каждый определённый промежуток времени.
5. Контракт - это микропрограмма (скрипт) который выполняется при наступлении определённых в контракте событий. За выполнение контракта взимается плата, которая пропорциональна кол-ву произведённых операций.
6. Проекты - база данных проектов для краудфандинга/краудинвестинга.
7. Идеи - база данных идей для реализации проектов.
8. Ресурсы (активы). У аккаунта может быть множество активов.
8.1. Акции - активы фиксированного объёма.
8.2. Валюты локальных сообществ - активы с возможностью доп.эмисии по правалам сообществ зафиксированных в контракте.
8.3. Алиасы - подвид активов (имена, доменные имена). У аккаунта может быть множество алиасов.
9. Пиры - узлы сети. Каждый узел соединён с несколькими пирами и постоянно обменивается с ними данными для синхронизации.

Дополнительные сущности:
10. Группы (сообщества).
11. Голосование (создание голосования, учёт каждого голоса).
12. Токены (предоставление ограниченного доступа сайтам).
13. Магазин (товары, выставление товара на продажу).

Деньги. В системе функции денег разделены на две части:
1) средство обмена,
2) средство накопления (активы).

Мера. В системе принята единая мера денежных единиц - один час (h) труда не квалифицированного рабочего (сторож, дворник, грузчик). Один час (h) на данный момент (2015) соответсвует 100 руб или $2. Один час (h) состоит из 100 единиц (cento). 1 h = 100 единица cento = 100 рублей. То есть 1 единица cento на данный момент соответствует 1 руб. Для удобства ресскоязычных пользователей, во всех формах по умолчанию отображается значение меры в единицах (cento), а не в часах (h). Внутри json данных транзакций запись ведётся в единицах cento.

Деньги как средство обмена не предназначена для накопления, а используется только как средство ображения и для вложения в товары, акции и прочие активы. Для предотвращения накапливания валюты, производится ежедневный демередж отстатков в кошельке в размере 0.1% в день. Демередж производится один раз в сутки в 00:00:00 по UTC. Демередж "сжигает" единицы, что ведёт в уменьшению денежной массы. Это равносильно как если бы сгоревшие деньги распределялись равномерно всем держателям активов системы. Мемередж - это своеобразный штраф за не использование денег.

Деньги как средство накопления - это активы.

Локальные валюты сообществ - денежные единицы для локальных сообществ (кооперативов). Являются подвидом активов. Правила эмиссии, демережда, системы управления заложены в контракте при создании локальной валюты.

С каждой транзакции взимается плата в размере 1 единица cento. За исполнение контракта (скрипта) взимается плата пропорциональная выполненным операциям, но не менее 1 единицы cento.

1.2. Базовая часть

1. Сервер (server)
2. Связка с БД (db)
3. Библиотеки функций общего назначения + утилиты (util)
4. Библиотеки шифрования (crypto)

1.3. Модули

Каждый из модулей является имплементацией части API (RestFullApi).
1. Авторизация и регистрация. Проверка парольной фразы, генерация парольной фразы, активация аккаунта (регистрация в blockchain).
2. Аккаунт - получение данных о активых, алиасах, кошельках.
3. Деньги - перечисление денег из кошелька в кошелёк.
4. Активы (ресурсы). Просмотр, создание, покупка и продажа ресурсов.
5. Алиасы (имена, доменные имена). Просмотр, создание, покупка и продажа ресурсов.
6. Сообщения - передача зашифрованных сообщений.
7. Транзакции - просмотр, проверка/валидация транзакции.
8. Блоки - просмотр блоков.
9. Форджинг - генерация блоков.
10. Пиры - обеспечивает связь с другими узлами.

Дополнительные модули:
11. Биржа активов.
12. Биржа алиасов.
13. Магазин товаров.
14. Поиск активов и товаров по заданным параметрам, умный поиск активов и товаров.
15. Пул идей - база данных идей для реализации (продукты разума).
16. Пул проектов - бала данных воплощения идей (результат труда).
17. Модуль эмисии. Эмиссия денежных единиц для обмена производится за воплощение идей в проекты - путём краудфандинговой/краудинвестинговой оценки интереса людей к данному проекту и последующей оценкой результата голосованием. Эмиссия производится в кошелёк автора проекта в качестве "премии" за воплощение проекта. Для достоверного размера эмиссии оценка производится в несколько этапов несколькими группами пользователей (вкладчики, эксперты, сообщество).

2. Exchange

Платёжная система, механизм ввода/вывода биткоинов, рублей, долларов и пр...

3. Люди (пользователи)

Привлечение людей, написание документации, статей, видео, презентации, участие в конференциях и выставках, налаживание связей, реферальная система...

4. Первеочередное

1. Система регистрации/авторизации;
2. Создание страницы профайла и описания товаров/услуг;
3. Система личных сообщений;
4. Обработка платежей для проведения расчетов;
5. Отзывы/комменты;
6. Реферальная система;





Ядро системы полностью открыто и свободно, основано на технологии blockchain. Ядро включает в себя: 1) API (RestFullApi), 2) Протокол (json), 3) Программную реализацию.

Ядро - это внутренняя расчетная единица + децентрализованная база проектов + запись репутации пользователей. В blockchain хранятся краткие описания, ссылки на проекты и информация о вкладах и голосования. Остальные данные хранятся в децентрализованном интернет пространстве. Ядро Libre.Life создаётся на основе LibreMoney. Одна из целей: создать децентрализованную биржу проектов для краудинвестинга (аналог vcstart.com). При этом система единая, а сайтов (точек входа в систему) множество.

Ядро новой экономической системы на основе ресурсно-репутационной модели (Видео)
Техническое задание разработки Системы

План работ реализации Ядра Системы

Мера
Архитектура системы
API (RestAPI)
Внешний вид