RanchiMall cumulative information

This commit is contained in:
Yeshwanth Mootakoduru 2020-08-28 08:36:00 +05:30
commit c780777393
21 changed files with 1055 additions and 0 deletions

358
components.js Normal file
View File

@ -0,0 +1,358 @@
//Button
const smButton = document.createElement('template')
smButton.innerHTML = `
<style>
*{
padding: 0;
margin: 0;
box-sizing: border-box;
}
:host{
display: inline-flex;
}
:host([disabled]) .button{
cursor: default;
opacity: 1;
background: rgba(var(--text-color), 0.4) !important;
color: rgba(var(--foreground-color), 1);
}
:host([variant='primary']) .button{
background: hsl(var(--hue), var(--saturation), var(--lightness));
color: rgba(var(--foreground-color), 1);
}
:host([variant='outlined']) .button{
box-shadow: 0 0 0 1px rgba(var(--text-color), 0.2) inset;
background: rgba(var(--foreground-color), 1);
color: var(--accent-color);
}
:host([variant='no-outline']) .button{
background: rgba(var(--foreground-color), 1);
color: var(--accent-color);
}
.button {
display: flex;
width: 100%;
padding: 0.6rem 1rem;
cursor: pointer;
user-select: none;
border-radius: 0.3rem;
justify-content: center;
transition: box-shadow 0.3s;
text-transform: capitalize;
font-size: 0.9em;
font-weight: 500;
color: rgba(var(--text-color), 0.9);
font-family: var(--font-family);
background: rgba(var(--text-color), 0.1);
-webkit-tap-highlight-color: transparent;
outline: none;
}
:host(:not([disabled])) .button:focus{
box-shadow: 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1), 0 0.2rem 0.8rem rgba(0, 0, 0, 0.2);
}
:host([variant='outlined']) .button:focus{
box-shadow: 0 0 0 1px rgba(var(--text-color), 0.2) inset, 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1), 0 0.4rem 0.8rem rgba(0, 0, 0, 0.2);
}
@media (hover: hover){
:host(:not([disabled])) .button:active{
box-shadow: none !important;
}
:host([variant='outlined']) .button:active{
box-shadow: 0 0 0 1px rgba(var(--text-color), 0.2) inset !important;
}
:host(:not([disabled])) .button:hover{
box-shadow: 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1), 0 0.2rem 0.8rem rgba(0, 0, 0, 0.12);
}
:host([variant='outlined']) .button:hover{
box-shadow: 0 0 0 1px rgba(var(--text-color), 0.2) inset, 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1), 0 0.4rem 0.8rem rgba(0, 0, 0, 0.12);
}
:host([variant="primary"]:not([disabled])) .button:active{
background: hsl(var(--hue), var(--saturation), calc(var(--lightness) - 20%)) !important;
}
:host([variant="primary"]:not([disabled])) .button:hover{
background: hsl(var(--hue), var(--saturation), calc(var(--lightness) - 10%));
}
}
@media (hover: none){
:host(:not([disabled])) .button:active{
box-shadow: 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1), 0 0.2rem 0.8rem rgba(0, 0, 0, 0.2);
}
:host([variant='outlined']) .button:active{
box-shadow: 0 0 0 1px rgba(var(--text-color), 0.2) inset, 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1), 0 0.4rem 0.8rem rgba(0, 0, 0, 0.2);
}
}
</style>
<div part="button" class="button" tabindex="0" role="button">
<slot></slot>
</div>`;
customElements.define('sm-button',
class extends HTMLElement {
constructor() {
super()
this.attachShadow({ mode: 'open' }).append(smButton.content.cloneNode(true))
}
get disabled() {
return this.isDisabled
}
set disabled(value) {
if (value && !this.isDisabled) {
this.isDisabled = true
this.setAttribute('disabled', '')
this.button.removeAttribute('tabindex')
}
else if (this.isDisabled) {
this.isDisabled = false
this.removeAttribute('disabled')
}
}
dispatch() {
if (this.isDisabled) {
this.dispatchEvent(new CustomEvent('disabled', {
bubbles: true,
composed: true
}))
}
else {
this.dispatchEvent(new CustomEvent('clicked', {
bubbles: true,
composed: true
}))
}
}
connectedCallback() {
this.isDisabled = false
this.button = this.shadowRoot.querySelector('.button')
if (this.hasAttribute('disabled') && !this.isDisabled)
this.isDisabled = true
this.addEventListener('click', (e) => {
this.dispatch()
})
this.addEventListener('keyup', (e) => {
if (e.code === "Enter" || e.code === "Space")
this.dispatch()
})
}
})
//carousel
const smCarousel = document.createElement('template')
smCarousel.innerHTML = `
<style>
*{
padding: 0;
margin: 0;
box-sizing: border-box;
}
:host{
display: flex;
}
.icon {
position: absolute;
display: flex;
fill: none;
height: 2.6rem;
width: 2.6rem;
border-radius: 3rem;
padding: 0.9rem;
stroke: rgba(var(--foreground-color), 0.8);
stroke-width: 14;
overflow: visible;
stroke-linecap: round;
stroke-linejoin: round;
cursor: pointer;
min-width: 0;
background: rgba(var(--text-color), 1);
box-shadow: 0 0.2rem 0.2rem #00000020,
0 0.5rem 1rem #00000040;
-webkit-tap-highlight-color: transparent;
transform: scale(0)
}
.hide{
pointer-events: none;
opacity: 0;
}
.expand{
transform: scale(1)
}
.previous-item{
left: 1rem;
}
.next-item{
right: 1rem;
}
.left,.right{
position: absolute;
width: 2rem;
height: 100%;
transition: opacity 0.3s;
}
.left{
background: linear-gradient(to left, transparent, rgba(var(--foreground-color), 0.6))
}
.right{
right: 0;
background: linear-gradient(to right, transparent, rgba(var(--foreground-color), 0.6))
}
.carousel-container{
position: relative;
display: flex;
width: 100%;
align-items: center;
}
.carousel{
display: flex;
max-width: 100%;
overflow: auto hidden;
scroll-snap-type: x mandatory;
}
slot::slotted(*){
scroll-snap-align: center;
}
:host([align-items="start"]) slot::slotted(*){
scroll-snap-align: start;
}
:host([align-items="center"]) slot::slotted(*){
scroll-snap-align: center;
}
:host([align-items="end"]) slot::slotted(*){
scroll-snap-align: end;
}
@media (hover: hover){
.carousel{
overflow: hidden;
}
.left,.right{
display: none;
}
}
@media (hover: none){
::-webkit-scrollbar-track {
-webkit-box-shadow: none !important;
background-color: transparent !important;
}
::-webkit-scrollbar {
height: 0;
background-color: transparent;
}
.carousel{
overflow: auto none;
}
.icon{
display: none;
}
.left,.right{
display: block;
}
}
</style>
<div class="carousel-container">
<div class="left"></div>
<svg class="icon previous-item" viewBox="4 0 64 64">
<title>Previous</title>
<polyline points="48.01 0.35 16.35 32 48.01 63.65"/>
</svg>
<div part="carousel" class="carousel">
<slot></slot>
</div>
<svg class="icon next-item" viewBox="-6 0 64 64">
<title>Next</title>
<polyline points="15.99 0.35 47.65 32 15.99 63.65"/>
</svg>
<div class="right"></div>
</div>
`;
customElements.define('sm-carousel', class extends HTMLElement {
constructor() {
super()
this.attachShadow({ mode: 'open' }).append(smCarousel.content.cloneNode(true))
}
scrollLeft() {
this.carousel.scrollBy({
top: 0,
left: -this.scrollDistance,
behavior: 'smooth'
})
}
scrollRight() {
this.carousel.scrollBy({
top: 0,
left: this.scrollDistance,
behavior: 'smooth'
})
}
connectedCallback() {
this.carousel = this.shadowRoot.querySelector('.carousel')
this.carouselContainer = this.shadowRoot.querySelector('.carousel-container')
this.carouselSlot = this.shadowRoot.querySelector('slot')
this.nextArrow = this.shadowRoot.querySelector('.next-item')
this.previousArrow = this.shadowRoot.querySelector('.previous-item')
this.nextGradient = this.shadowRoot.querySelector('.right')
this.previousGradient = this.shadowRoot.querySelector('.left')
this.carouselItems
this.scrollDistance = this.carouselContainer.getBoundingClientRect().width / 3
const firstElementObserver = new IntersectionObserver(entries => {
if (entries[0].isIntersecting) {
this.previousArrow.classList.remove('expand')
this.previousGradient.classList.add('hide')
}
else {
this.previousArrow.classList.add('expand')
this.previousGradient.classList.remove('hide')
}
}, {
root: this.carouselContainer,
threshold: 0.9
})
const lastElementObserver = new IntersectionObserver(entries => {
if (entries[0].isIntersecting) {
this.nextArrow.classList.remove('expand')
this.nextGradient.classList.add('hide')
}
else {
this.nextArrow.classList.add('expand')
this.nextGradient.classList.remove('hide')
}
}, {
root: this.carouselContainer,
threshold: 0.9
})
const carouselObserver = new IntersectionObserver(entries => {
if (entries[0].isIntersecting) {
this.scrollDistance = this.carouselContainer.getBoundingClientRect().width / 3
}
})
carouselObserver.observe(this.carouselContainer)
this.carouselSlot.addEventListener('slotchange', e => {
this.carouselItems = this.carouselSlot.assignedElements()
firstElementObserver.observe(this.carouselItems[0])
lastElementObserver.observe(this.carouselItems[this.carouselItems.length - 1])
})
this.addEventListener('keyup', e => {
if (e.code === 'ArrowLeft')
this.scrollRight()
else
this.scrollRight()
})
this.nextArrow.addEventListener('click', this.scrollRight.bind(this))
this.previousArrow.addEventListener('click', this.scrollLeft.bind(this))
}
disconnectedCallback() {
this.nextArrow.removeEventListener('click', this.scrollRight.bind(this))
this.previousArrow.removeEventListener('click', this.scrollLeft.bind(this))
}
})

226
css/main.css Normal file
View File

@ -0,0 +1,226 @@
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&family=Poppins:wght@400;500;600;700;800;900&display=swap");
* {
margin: 0;
padding: 0;
-webkit-box-sizing: border-box;
box-sizing: border-box;
font-family: 'Open sans', sans-serif;
}
body {
font-size: 16px;
--accent-color: hsl(268,74,51);
--hue: 268;
--saturation: 74%;
--lightness: 51%;
--text-color: 17, 17, 17;
--foreground-color: 255, 255, 255;
scroll-behavior: smooth;
overflow: hidden;
display: -ms-grid;
display: grid;
-ms-grid-rows: auto 1fr;
grid-template-rows: auto 1fr;
}
main {
-ms-scroll-snap-type: y mandatory;
scroll-snap-type: y mandatory;
max-height: calc(100vh - 6rem);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
overflow-y: auto;
}
a:-webkit-any-link {
text-decoration: none;
color: inherit;
}
a:-moz-any-link {
text-decoration: none;
color: inherit;
}
a:any-link {
text-decoration: none;
color: inherit;
}
h1, h2, h3, h4, h5 {
font-family: 'Poppins', sans-serif;
font-weight: 600;
}
h1 {
font-size: 2rem;
line-height: 1;
margin-bottom: 1rem;
word-spacing: 0.12em;
max-width: 20ch;
}
h2 {
font-size: 2rem;
}
h3 {
font-size: 1.5rem;
}
h4 {
font-size: 1rem;
}
h5 {
font-size: 0.8rem;
}
p {
font-family: 'Open sans', sans-serif;
line-height: 1.6;
max-width: 70ch;
color: rgba(0, 0, 0, 0.9);
}
header {
z-index: 2;
position: -webkit-sticky;
position: sticky;
top: 0;
height: 6rem;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
width: 100%;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
padding: 1.5rem;
}
header .identity {
text-transform: uppercase;
margin-left: auto;
color: rgba(0, 0, 0, 0.6);
}
section {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-flex: 1;
-ms-flex: 1;
flex: 1;
padding: 1.5rem;
min-height: 100vh;
scroll-snap-align: start;
}
section h1 {
text-transform: uppercase;
font-weight: 800;
}
section sm-button {
display: -webkit-inline-box;
display: -ms-inline-flexbox;
display: inline-flex;
width: -webkit-max-content;
width: -moz-max-content;
width: max-content;
margin-top: 1.5rem;
font-family: 'Poppins', sans-serif;
}
.card {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
width: 18rem;
min-width: 18rem;
overflow: hidden;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
margin-right: 1.5rem;
border-radius: 0.2rem;
background: rgba(0, 0, 0, 0.06);
border: solid 1px rgba(0, 0, 0, 0.1);
}
.card img {
height: 100%;
width: 100%;
-o-object-fit: cover;
object-fit: cover;
}
.card p, .card h4 {
padding: 0 1rem;
}
.card h4 {
padding-top: 1rem;
}
.card p {
padding-bottom: 1rem;
}
.link img {
height: 6rem;
}
sm-carousel {
margin-top: 3rem;
margin-left: -1.5rem;
}
sm-carousel::part(carousel) {
padding: 1.5rem;
}
.main-logo {
width: 1.4rem;
height: 1.4rem;
margin-right: 0.4rem;
}
@media screen and (min-width: 640px) {
h1 {
font-size: 4rem;
}
section, header {
padding: 2rem 4rem;
}
}
@media screen and (min-width: 1280px) {
section, header {
padding: 2rem 6vw;
}
}
@media screen and (min-width: 1920px) {
body {
font-size: 18px;
}
section, header {
padding: 2rem 8vw;
}
}
/*# sourceMappingURL=main.css.map */

9
css/main.css.map Normal file
View File

@ -0,0 +1,9 @@
{
"version": 3,
"mappings": "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",
"sources": [
"main.scss"
],
"names": [],
"file": "main.css"
}

157
css/main.scss Normal file
View File

@ -0,0 +1,157 @@
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&family=Poppins:wght@400;500;600;700;800;900&display=swap');
*{
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Open sans', sans-serif;
}
body{
font-size: 16px;
--accent-color: hsl(268,74,51);
--hue: 268;
--saturation: 74%;
--lightness: 51%;
--text-color: 17, 17, 17;
--foreground-color: 255, 255, 255;
scroll-behavior: smooth;
overflow: hidden;
display: grid;
grid-template-rows: auto 1fr;
}
main{
scroll-snap-type: y mandatory;
max-height: calc(100vh - 6rem);
display: flex;
flex-direction: column;
overflow-y: auto;
}
a:any-link{
text-decoration: none;
color: inherit;
}
h1, h2, h3, h4, h5{
font-family: 'Poppins', sans-serif;
font-weight: 600;
}
h1{
font-size: 2rem;
line-height: 1;
margin-bottom: 1rem;
word-spacing: 0.12em;
max-width: 20ch;
}
h2{
font-size: 2rem;
}
h3{
font-size: 1.5rem;
}
h4{
font-size: 1rem;
}
h5{
font-size: 0.8rem;
}
p{
font-family: 'Open sans', sans-serif;
line-height: 1.6;
max-width: 70ch;
color: rgba($color: #000000, $alpha: 0.9);
}
header{
z-index: 2;
position: sticky;
top: 0;
height: 6rem;
display: flex;
width: 100%;
align-items: center;
padding: 1.5rem;
.identity{
text-transform: uppercase;
margin-left: auto;
color: rgba($color: #000000, $alpha: 0.6);
}
}
section{
display: flex;
flex-direction: column;
justify-content: center;
flex: 1;
padding: 1.5rem;
min-height: 100vh;
scroll-snap-align: start;
h1{
text-transform: uppercase;
font-weight: 800;
}
sm-button{
display: inline-flex;
width: max-content;
margin-top: 1.5rem;
font-family: 'Poppins', sans-serif;
}
}
.card{
display: flex;
width: 18rem;
min-width: 18rem;
overflow: hidden;
flex-direction: column;
margin-right: 1.5rem;
border-radius: 0.2rem;
background: rgba($color: #000000, $alpha: 0.06);
border: solid 1px rgba($color: #000000, $alpha: 0.1);
img{
height: 100%;
width: 100%;
object-fit: cover;
}
p, h4{
padding: 0 1rem;
}
h4{
padding-top: 1rem;
}
p{
padding-bottom: 1rem;
}
}
.link{
img{
height: 6rem;
}
}
sm-carousel{
margin-top: 3rem;
margin-left: -1.5rem;
}
sm-carousel::part(carousel){
padding: 1.5rem;
}
.main-logo{
width: 1.4rem;
height: 1.4rem;
margin-right: 0.4rem;
}
@media screen and (min-width: 640px){
h1{
font-size: 4rem;
}
section, header{
padding: 2rem 4rem;
}
}
@media screen and (min-width: 1280px){
section, header{
padding: 2rem 6vw;
}
}
@media screen and (min-width: 1920px){
body{
font-size: 18px;
}
section, header{
padding: 2rem 8vw;
}
}

305
index.html Normal file
View File

@ -0,0 +1,305 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>RanchiMall FLO Podcast</title>
<link rel="stylesheet" href="css/main.css">`
</head>
<body>
<header>
<svg class="main-logo" viewBox="0 0 27.25 32">
<title>RanchiMall</title>
<path
d="M27.14,30.86c-.74-2.48-3-4.36-8.25-6.94a20,20,0,0,1-4.2-2.49,6,6,0,0,1-1.25-1.67,4,4,0,0,1,0-2.26c.37-1.08.79-1.57,3.89-4.55a11.66,11.66,0,0,0,3.34-4.67,6.54,6.54,0,0,0,.05-2.82C20,3.6,18.58,2,16.16.49c-.89-.56-1.29-.64-1.3-.24a3,3,0,0,1-.3.72l-.3.55L13.42.94C13,.62,12.4.26,12.19.15c-.4-.2-.73-.18-.72.05a9.39,9.39,0,0,1-.61,1.33s-.14,0-.27-.13C8.76.09,8-.27,8,.23A11.73,11.73,0,0,1,6.76,2.6C4.81,5.87,2.83,7.49.77,7.49c-.89,0-.88,0-.61,1,.22.85.33.92,1.09.69A5.29,5.29,0,0,0,3,8.33c.23-.17.45-.29.49-.26a2,2,0,0,1,.22.63A1.31,1.31,0,0,0,4,9.34a5.62,5.62,0,0,0,2.27-.87L7,8l.13.55c.19.74.32.82,1,.65a7.06,7.06,0,0,0,3.46-2.47l.6-.71-.06.64c-.17,1.63-1.3,3.42-3.39,5.42L6.73,14c-3.21,3.06-3,5.59.6,8a46.77,46.77,0,0,0,4.6,2.41c.28.13,1,.52,1.59.87,3.31,2,4.95,3.92,4.95,5.93a2.49,2.49,0,0,0,.07.77h0c.09.09,0,.1.9-.14a2.61,2.61,0,0,0,.83-.32,3.69,3.69,0,0,0-.55-1.83A11.14,11.14,0,0,0,17,26.81a35.7,35.7,0,0,0-5.1-2.91C9.37,22.64,8.38,22,7.52,21.17a3.53,3.53,0,0,1-1.18-2.48c0-1.38.71-2.58,2.5-4.23,2.84-2.6,3.92-3.91,4.67-5.65a3.64,3.64,0,0,0,.42-2A3.37,3.37,0,0,0,13.61,5l-.32-.74.29-.48c.17-.27.37-.63.46-.8l.15-.3.44.64a5.92,5.92,0,0,1,1,2.81,5.86,5.86,0,0,1-.42,1.94c0,.12-.12.3-.15.4a9.49,9.49,0,0,1-.67,1.1,28,28,0,0,1-4,4.29C8.62,15.49,8.05,16.44,8,17.78a3.28,3.28,0,0,0,1.11,2.76c.95,1,2.07,1.74,5.25,3.32,3.64,1.82,5.22,2.9,6.41,4.38A4.78,4.78,0,0,1,21.94,31a3.21,3.21,0,0,0,.14.92,1.06,1.06,0,0,0,.43-.05l.83-.22.46-.12-.06-.46c-.21-1.53-1.62-3.25-3.94-4.8a37.57,37.57,0,0,0-5.22-2.82A13.36,13.36,0,0,1,11,21.19a3.36,3.36,0,0,1-.8-4.19c.41-.85.83-1.31,3.77-4.15,2.39-2.31,3.43-4.13,3.43-6a5.85,5.85,0,0,0-2.08-4.29c-.23-.21-.44-.43-.65-.65A2.5,2.5,0,0,1,15.27.69a10.6,10.6,0,0,1,2.91,2.78A4.16,4.16,0,0,1,19,6.16a4.91,4.91,0,0,1-.87,3c-.71,1.22-1.26,1.82-4.27,4.67a9.47,9.47,0,0,0-2.07,2.6,2.76,2.76,0,0,0-.33,1.54,2.76,2.76,0,0,0,.29,1.47c.57,1.21,2.23,2.55,4.65,3.73a32.41,32.41,0,0,1,5.82,3.24c2.16,1.6,3.2,3.16,3.2,4.8a1.94,1.94,0,0,0,.09.76,4.54,4.54,0,0,0,1.66-.4C27.29,31.42,27.29,31.37,27.14,30.86ZM6.1,7h0a3.77,3.77,0,0,1-1.46.45L4,7.51l.68-.83a25.09,25.09,0,0,0,3-4.82A12,12,0,0,1,8.28.76c.11-.12.77.32,1.53,1l.63.58-.57.84A10.34,10.34,0,0,1,6.1,7Zm5.71-1.78A9.77,9.77,0,0,1,9.24,7.18h0a5.25,5.25,0,0,1-1.17.28l-.58,0,.65-.78a21.29,21.29,0,0,0,2.1-3.12c.22-.41.42-.76.44-.79s.5.43.9,1.24L12,5ZM13.41,3a2.84,2.84,0,0,1-.45.64,11,11,0,0,1-.9-.91l-.84-.9.19-.45c.34-.79.39-.8,1-.31A9.4,9.4,0,0,1,13.8,2.33q-.18.34-.39.69Z" />
</svg>
<h4>RANCHIMALL</h4>
<h4 class="identity">Resources</h4>
</header>
<main>
<section>
<h1>Blockchain Incorporation</h1>
<p>RanchiMall as a company has been incorporated on the FLO Blockchain. The incorporation is done by writing
the rules of incorporation as flodata.</p>
<sm-carousel>
<a href="https://flosight.duckdns.org/tx/0c7f3e8b8b5924d8b348aba74a633a9fac3d99d6656d235e34ca00c57f993ba7"
target='_blank' class="card link">
<img src="resources/incorp_summary.png" alt="">
<h4>Incorporation message (Flosight)</h4>
<p></p>
</a>
<a href="https://ranchimall.github.io/floscout/#a74a03ec1e77fa50e0b586b1e9745225ad4f78ce96ca59d6ac025f8057dd095c"
target='_blank' class="card link">
<img src="resources/tokenincorp_floscout.png" alt="">
<h4>Incorporation flodata (Floscout)</h4>
<p></p>
</a>
<a href="https://flosight.duckdns.org/tx/a74a03ec1e77fa50e0b586b1e9745225ad4f78ce96ca59d6ac025f8057dd095c"
target='_blank' class="card link">
<img src="resources/tokenincorp.png" alt="">
<h4>Incorporation flodata (Flosight)</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Blockchain Contracts</h1>
<p>Blockchain Contracts are at the core of RanchiMall as a company. All our primary products are Blockchain
Contracts. </p>
<sm-carousel>
<a href="https://medium.com/ranchimall/fixing-smart-contracts-here-comes-blockchain-contracts-ca0243ef506f"
target='_blank' class="card link">
<h4>Fixing Smart Contracts : Blockchain Contracts</h4>
<p></p>
</a>
<a href="https://medium.com/ranchimall/introduction-to-blockchain-contracts-cc48b42e4174" target='_blank'
class="card link">
<h4>Introduction to Blockchain Contracts</h4>
<p></p>
</a>
<a href="https://medium.com/ranchimall/guidelines-for-management-of-ranchi-mall-blockchain-contracts-b579e1d59859"
target='_blank' class="card link">
<h4>Guidelines for Management of Blockchain Contracts</h4>
<p></p>
</a>
<a href="https://medium.com/ranchimall/flo-blockchain-contract-ranchi-mall-introduction-e6c1f9eda83e"
target='_blank' class="card link">
<h4>FLO Blockchain Contract</h4>
<p></p>
</a>
<a href="https://medium.com/ranchimall/ranchi-mall-internship-blockchain-contract-b00193fd188c"
target='_blank' class="card link">
<h4>Internship Blockchain Contract</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Web & Walletless architecture</h1>
<p>At RanchiMall we have removed the need for a blockchain wallet to be downloaded locally on a device and in
turn, the need to download the whole blockchain locally. Our wallets are pure HTML5 web-based wallets. </p>
<sm-carousel>
<a href="https://flo-webwallet.duckdns.org/" target='_blank' class="card link">
<img src="resources/flo-webwallet.png" alt="">
<h4>FLO Webwallet</h4>
<p></p>
</a>
<a href="https://github.com/ranchimall/flo-webwallet/" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>Readme</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Blockchain based data cloud</h1>
<p>RanchiMall has come up with a Blockchain digital signature based cloud storage.</p>
<sm-carousel>
<a href="https://github.com/ranchimall/SuperNodeStorage" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>SuperNode Storage</h4>
<p></p>
</a>
<a href="https://github.com/ranchimall/webAppServer" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>webApp Server</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Architecture for FLO based Applications</h1>
<sm-carousel>
<a href="https://ranchimall.github.io/Standard_Operations/" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>Readme</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Token Transfer System</h1>
<p>We have created the most easy and user friendly Token system on top of the FLO Blockchain.</p>
<sm-carousel>
<a href="https://medium.com/ranchimall/introducing-natural-language-based-token-creation-transfer-system-on-flo-blockchain-e4bc944b2c28" target='_blank' class="card link">
<img src="resources/medium.png" alt="">
<h4>Natural language based Token system</h4>
<p></p>
</a>
<a href="https://flodata-tester.duckdns.org/" target='_blank' class="card link">
<img src="resources/flodata-tester.PNG" alt="">
<h4>FLO Data Tester</h4>
<p></p>
</a>
<a href="https://ranchimall.github.io/floscout/#a74a03ec1e77fa50e0b586b1e9745225ad4f78ce96ca59d6ac025f8057dd095c" target='_blank' class="card link">
<img src="resources/tokenincorp_floscout.png" alt="">
<h4>Token creation</h4>
<p></p>
</a>
<a href="https://ranchimall.github.io/floscout/#fdcb3ff273deb2a03c19333d4f4f3a22b1fedd22e17fef576559319c40450f50" target='_blank' class="card link">
<img src="resources/tokentransfer.PNG" alt="">
<h4>Token transfer</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Smart Contract System</h1>
<p>An example of RanchiMall's Smart Contracts.</p>
<sm-carousel>
<a href="https://ranchimall.github.io/floscout/#c6eb7adc731a60b2ffa0c48d0d72d33b2ec3a33e666156e729a63b25f6c5cd56" target='_blank' class="card link">
<img src="resources/tokenincorp_floscout.png" alt="">
<h4>India Elections creation</h4>
<p></p>
</a>
<a href="https://ranchimall.github.io/floscout/#ad50d8bffe7214473b6f8f454f55749d23a26ab3fc854d63e1ccc808045d98ba" target='_blank' class="card link">
<img src="resources/tokenincorp_floscout.png" alt="">
<h4>India Elections participation</h4>
<p></p>
</a>
<a href="https://ranchimall.github.io/floscout/#b57cf412c8cb16e473d04bae44214705c64d2c25146be22695bf1ac36e166ee0" target='_blank' class="card link">
<img src="resources/tokenincorp_floscout.png" alt="">
<h4>India Elections trigger</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Single data Authentication</h1>
<p>All the applications in RanchiMall take single data as user authentication.</p>
<sm-carousel>
<a href="https://ranchimall.github.io/RIBC/" target='_blank' class="card link">
<img src="resources/ribc.png" alt="">
<h4>RIBC</h4>
<p></p>
</a>
<a href="https://ranchimall.github.io/internapply" target='_blank' class="card link">
<img src="resources/internapply.png" alt="">
<h4>Internship Application</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Content Collaboration as a sample application</h1>
<p>Content Collaboration app is a way for anonymous users across the Internet to collaborate and create beautiful articles. These articles are then published on RanchiMall times.</p>
<sm-carousel>
<a href="https://ranchimall.github.io/p2p-content-collaboration/" target='_blank' class="card link">
<img src="resources/contentcollab.PNG" alt="">
<h4>Content Collaboration</h4>
<p></p>
</a>
<a href="https://github.com/p2p-content-collaboration" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>Content Collaboration Code</h4>
<p></p>
</a>
<a href="https://ranchimall.github.io/articles/" target='_blank' class="card link">
<img src="resources/rmtimes.PNG" alt="">
<h4>RanchiMall Times</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Connecting with other networks like TOR and TORRENT</h1>
<p>At RanchiMall we strongly believe in anti-censorship. Our products FLO-Twitter and FLO-Whatsapp connect to TOR network and are totally censorship resistant.</p>
<sm-carousel>
<a href="https://github.com/ranchimall/FLO_Torrent" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>FLO Torrent</h4>
<p></p>
</a>
<a href="https://github.com/ranchimall/Flo-Whatsapp" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>FLO WhatsApp</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>WhatsApp, Google and Twitter on the FLO</h1>
<p></p>
<sm-carousel>
<a href="https://github.com/ranchimall/Flo-Whatsapp" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>FLO WhatsApp</h4>
<p></p>
</a>
<a href="https://github.com/ranchimall/FLO_Twitter" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>FLO Twitter</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Banking and Financial Applications on FLO</h1>
<p></p>
<sm-carousel>
<a href="https://github.com/ranchimall/FLO_BankApp" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>FLO Bank</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Distributed Exchange: An extension of Local Bitcoins</h1>
<p>Local Bitcoins++ is a decentralized distributed version of the famous peer to peer online exchange.</p>
<sm-carousel>
<a href="https://ranchimall.net/bitcoins" target='_blank' class="card link">
<img src="resources/localbitcoins_pp.PNG" alt="">
<h4>Local Bitcoins ++</h4>
<p></p>
</a>
<a href="https://github.com/ranchimall/localbitcoinplusplus" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>Local Bitcoins ++ Code</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>FLO LogSheet</h1>
<p>FLO LogSheet is high quality data curated for the public.</p>
<sm-carousel>
<a href="https://ranchimall.github.io/FLO_LogSheet/FLO_LogSheet.html" target='_blank' class="card link">
<img src="resources/logsheet.PNG" alt="">
<h4>FLO Logsheet</h4>
<p></p>
</a>
<a href="https://github.com/ranchimall/localbitcoinplusplus" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>FLO Logsheet Code</h4>
<p></p>
</a>
</sm-carousel>
</section>
<section>
<h1>Labor market using Blockchain</h1>
<p>In India low income daily wage labourers are ample, but most of them don't earn enough to sustain their families because they cannot find people to work for. We, at RanchiMall, plan to connect employers and these workers through blockchain.</p>
</section>
<section>
<h1>FLO Messenger</h1>
<p></p>
<sm-carousel>
<a href="https://ranchimall.github.io/FLO_Messenger/" target='_blank' class="card link">
<img src="resources/flomessenger.jpeg" alt="">
<h4>FLO Messenger</h4>
<p></p>
</a>
<a href="https://github.com/ranchimall/FLO_Messenger/" target='_blank' class="card link">
<img src="resources/github.png" alt="">
<h4>FLO Messenger Code</h4>
<p></p>
</a>
</sm-carousel>
</section>
</main>
<script src="components.js"></script>
</body>
</html>

BIN
resources/contentcollab.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

BIN
resources/flo-webwallet.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
resources/flomessenger.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

BIN
resources/github.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
resources/image1.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

BIN
resources/internapply.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 995 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

BIN
resources/logsheet.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

BIN
resources/medium.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

BIN
resources/ribc.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

BIN
resources/rmtimes.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

BIN
resources/tokenincorp.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

BIN
resources/tokentransfer.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB