#webRunes WRIO Hub (coming soon)
##Official Hub webrunes.com
Powered by Open Copyright
WRIO App
Home Page: https://login.wrioos.com
License: Other
#webRunes WRIO Hub (coming soon)
##Official Hub webrunes.com
Powered by Open Copyright
Should we use sessionStorage
http://stackoverflow.com/questions/5523140/html5-local-storage-vs-session-storage
http://www.geekchamp.com/html5-tutorials/18-html5-session-storage
to avoid pinging server every time we load a page?
Please remove "Profile link", page must be opened after click on widget.
Move on mongo DB.
I really think they're a good in webdev and react is a good choice:
http://programmers.stackexchange.com/questions/225400/pros-and-cons-of-facebooks-react-vs-web-components-polymer/237762#237762
Two months after I posted this answers there was some news that is relevant here. As I have just written on Twitter, the lastest version of the Atom text editor written by GitHub in JavaScript uses Facebook's React to get better performance even though according to Wikipedia "Atom is based on Chromium and written in C++" so it has full control of the native C++ DOM implementation (see The Nucleus of Atom) and is guaranteed to have support for Web Components since it ships with its own web browser. It is just a very recent example of a real world project that could've used any other kind of optimization typically unavailable to Web applications and yet it has chosen to use React which is itself written in JavaScript, to achieve best performance, even though Atom was not built with React to begin with so doing it was not a trivial change.
Give the feedback about flux too #9
At this point Titter using inline webrunes credentials, but we have to set user's credentials
Add mocha/supertest tests according email.
Add FB and G+ login buttons.
After merge you will see updated version there http://wrio.s3-website-us-east-1.amazonaws.com/Login-WRIO-App/Widget/login.html
Config Travis, so every time we do a pull request, S3 refresh widget html https://github.com/webRunes/Login-WRIO-App/blob/master/Widget/template.html
deploy in
http://wrio.s3-website-us-east-1.amazonaws.com/Login-WRIO-App/Widget/template.html
Please do the same for
https://github.com/webRunes/Plus-WRIO-App/blob/master/Widget/template.html
deploy in
http://wrio.s3-website-us-east-1.amazonaws.com/Plus-WRIO-App/Widget/template.html
use AWS credentials for S3 from conf file.
After click on twitter login button in webrunes.com and credentials input, user get to
http://wrio.s3-website-us-east-1.amazonaws.com/Login-WRIO-App/widget/close.htm?oauth_token=...
but nothing happens. Please finish login process. We have to redirect back with logout button.
If user cancel login process system closes the tab, please fix it and redirect user back to the page he had comes from.
Поменять имя с profile-widget на login-widget
Please reset all tokens because of compromised config file.
All the same #1 but for Twitter
Check their module https://blockstack.org. Should we use it?
Currently switching twitter account is impossible, it automatically logs in with remembered credentials
Решить какой будет первоначальная версия защиты аккаунта:
Взять копию json-ld с
webrunes.com
и положить в Login/hub, чтобы страница открывалась по
login.wrioos.com
Страница авторизации пусть открывается по запросу
login.wrioos.com?auth
https://habrahabr.ru/search/?q=JSON+Web+Tokens#h довольно много информации есть на хабре.
Учитывая, что у нас логин идет через Passport.js, а он supported by auth0, то должно быть легко перейти на токены.
We have created login widget
http://wrio.s3-website-us-east-1.amazonaws.com/Login-WRIO-App/widget/login.htm
Please add it above article widget, like it done for prototype
https://github.com/webRunes/Default-WRIO-Theme/blob/prototype/blogs-post.htm
Сейчас в тикете отображается текст
Информация публичного профайла доступна любому, даже незарегистрированным пользователям. Если вы хотите оставаться анонимным, просто не заполняйте его.
Вместо него должна отображаться информация со страницы профайла из раздела description.
Сейчас там прописывается
No description.
Поменять на
Please provide some public info about yourself. But if you want to stay anonymous, simply don't fill it in.
Эта же информация должна быть на странице вместо текста, что сейчас:
Please provide some public info about yourself.
Пока убрать
Rating:
Followers:
Posts:
и добавить ссылку
Balance: [сумма] WRG
При нажатии открывать webgold.wrioos.com/?transactions. Бредкрамп должен быть активным на "Transactions" с возможностью перехода на "Read"
Убрать "WRIO" над именем профайла в бредкрампе тикета в "Logged in as ..."
MySQL DB name have to be "webRunes_Login" with columns:
userID (GUID)
profileURI (default: n/a. http uri, i'll give more info later)
signInDate (date/time)
lastVisitDate (date/time)
invitedBy (default: n/a)
FacebookID (id)
You need a separate table for Facebook, so create "webRunes_Login-Facebook", we will accept more providers soon.
You have to create empty html page with only "Login" Facebook button, use passportjs.org. After user is logged in, change button on "Logout"
Anonymous account:
Once user opens page we auto sign up his PC via cookies and write in it the first visit date for countdown: "Upgrade guest account for free 30 days left". Don't worry about nothing except Facebook button - once user clicks it please open auth popup. If user successfully logged, create a new record in "webRunes_Login-Facebook" with minimal info, just for next auth. Save data in "signInDate" from cookie after first auth login and show "Success! you've linked 'name here' Facebook account." And change "Logged as I'm Anonymous" to "Logged as User Name". Once user click "lock" icon sign out him.
If user do not link auth account within 30 days, we begin process again (reset and start next 30 days).
DO NOT use server credentials in the code and use https://github.com/flatiron/nconf to create conf files. This conf file will be uploaded in aws separately. You will get DB and Facebook credentials before start.
Help links:
Following https://github.com/felixge/node-style-guide is required
http://blog.risingstack.com/node-js-best-practices/ Node.js Best Practices
http://pavels.in.ua/javascript-debugging-console/ debugging (RU. use google translate)
https://github.com/sindresorhus/awesome-nodejs
Please setup Login widget. It's a react widget
http://wrio.s3-website-us-east-1.amazonaws.com/Login-WRIO-App/widget/login.htm
and added on http://webrunes.com/, but we see only
<login-widget></login-widget>
chrome only, use F12 to view markup.
Help links: https://github.com/webRunes/WRIO-InternetOS/wiki/Guideline#react-and-flux
The same #1, but for Google
Please make sure we got DB as described:
#1
Add GitHub login button via passport.js as before and logout button. Later we will hide logout and show only after login.
Enhancement: add to
wrio.s3-website-us-east-1.amazonaws.com/Login-WRIO-App/Widget/login.html
FB and G+ buttons.
Login process have to be in popup to stay on page.
Заменить тикет логина для guest аккаунта на тикет в прототипе
Default-WRIO-Theme/person.htm
для залогиненного пользователя использовать тикет с
Default-WRIO-Theme/blogs-post.htm
При нажатии "Upgrade guest account for free" переходить на логин через Твиттер. Процесс апдейта будет проработан детальнее позже.
При нажатии на ссылку "Already have an account?" переходить на lock up (см. прототип Default-WRIO-Theme/lock_up_add.htm) по ссылке:
login.wrioos.com?add
В случае нажатия на "Lock up or switch user" либо на значок замка над логотипом webRunes, открывать lock up страницу с активным табом пользователя с которого произошел lock up - см. Default-WRIO-Theme/lock_up.htm для примера. Табы пользователей слева должны открывать их хабы, т.е. ничем не отличаются от обычного браузинга. Разница лишь в том, что если есть запись в куки, что этот пользователь сохранен (логинился) на данном устройстве, то отображать его на lock up и в хабе будет кнопка для логина.
Default-WRIO-Theme/lock_up_animated.htm
для примера отображения пользовательского хаба и кнопок. Игнорировать пока анимационный кавер и кнопки Upgrade и Settings. При нажатии на кнопку delete, удалять аккаунт с куки, но не с сервера. У нас регистрация происходит через блокчеин, т.е. аккаунт не может быть удален, т.к. информация не хранится на нашем сервере. Guest аккаунт не может быть удален, он обнуляется автоматически раз в 30 дней.
welcome_back-cover.jpg положить в виджет Login. Удалить https://github.com/webRunes/Login-WRIO-App/tree/master/public
Please make sure
/srv/www/login/current/expire.sh
is working on daily basis.
При первом открытии любого сайта на базе WRIO, необходимо создавать временный анонимный аккаунт на сервере с привязкой к куки на стороне пользователя. Временный, потому как он будет работать лишь 30 дней, после чего куки должны быть обнулены (запись в БД удалять, как и s3 папку см. ниже) и пользователь снова получает новый анонимный аккаунт. Пример отображения анонимного аккаунта можно увидеть в прототипе:
Default-WRIO-Theme/blogs-post.htm
По ссылке
Upgrade guest account for free 30 days left
будет переход на временный пользовательский аккаунт, который станет постоянным в случае привязки какого-то из соц.аккаунтов. Пока отображать только кнопку Твиттера. После привязки отсчет дней прекращается и аккаунт становится постоянным. Для временных аккаунтов лучше создать отдельную таблицу в БД и прогонять раз в день проверку на очистку записей с >30 дней.
Помимо записи в БД необходимо создавать папку на s3 для данного пользователя. В ней мы будем хранить его посты (json-ld) и некоторые другие файлы. Папка должна иметь название на базе рандомного 12символьного ID (только цифры). В этой папке создавать index.htm на базе
https://github.com/webRunes/Login-WRIO-App/blob/master/default/index.htm
он будет в дальнейшем обновлен. В раздел
"@type": "Person",
...
"url": "http://domain.com"
добавлять URL на index.htm в s3. Аналогично менять url для
"url": "http://domain.com/cover.htm?cover"
Оставляя в конце
...cover.htm?cover
Этот раздел будет разработан отдельно, загружать вместе с index.htm, брать из
https://github.com/webRunes/Login-WRIO-App/blob/master/default/cover.htm
Ссылка при нажатии на login виджет http://wr.io/713372365175/ не работает. Надо чтобы был https
Set up a https://oauth.io/docs/api-reference/server/node instance by adding into project, you have to add in packaje.json dependency for it.
Convert
https://github.com/webRunes/Login-WRIO-App/blob/master/Widget/template.html
into webcomponent using react.js + flux
you will see this HTML here after auto-deploy:
http://webrunes.github.io/webRunes-WRIO-Hub/1WJyH1k7_en-US.html
Login ticket imported from
https://github.com/webRunes/Login-WRIO-App/blob/master/Widget/template.html
Help links
http://futurice.com/blog/combining-react-flux-and-web-components
Maybe smt. useful here
http://www.2ality.com/2013/05/web-components-angular-ember.html
http://pixelscommander.com/interactive-revolution/web-components-and-react-js-with-reactiveelements/
http://programmers.stackexchange.com/questions/225400/pros-and-cons-of-facebooks-react-vs-web-components-polymer/237762#237762
http://fluxxor.com/what-is-flux.html
http://www.sitepoint.com/component-based-web-apps-react/
http://addyosmani.com/blog/component-interop-with-react-and-custom-elements/
http://www.binpress.com/blog/2014/06/26/polymer-vs-angular/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.