 [image source](https://goo.gl/images/HbqzGY) **Repository**: [Python, Open Source Repository](https://github.com/python) **Software Requirements**: For software download python 3.0 compatible with your OS [here](https://www.python.org/downloads/) **What you will learn**: In this tutorial you will learn how to - Automating block generation using a loop in ``kivy`` for our tetris app - Using the ``kivy.clock`` and ``kivy.window`` modules - How to use ``kivy``s built in ``EventDispatcher`` to add properties to our super classes ``init`` function **Difficulty** : Intermediate **Tutorial** **The topics covered in this tutorial are**: **Creating block widgets** **Making our widgets fall** **Defining how our application will build** In the last of this series we saw the basics for startup for a kivy applications visiting the basic layout and how to startup an application using kivy syntax. Today we will be going on to the development of the application starting out with its widgets. As earlier stated it is advisable to divide files into graphics and logic for better assesment and easier coding. We will be building six blocks for the tetris game. Each block will have a different color and be drawn on a different ``canvas`` addreses as different widgets. **Creating the block widgets** We start by creating six new classes of widgets ``` #Create the classes and pass them class Block1(Widget): pass class Block2(Widget): pass class Block3(Widget): pass class Block4(Widget): pass class Block5(Widget): pass class Block6(Widget): pass ``` You then link all these to consecutive kv styles in your ``.kv`` file ``` <Block1>: canvas: Color: rgb: 0,0,255 Rectangle: size: root.width/5, root.height/20 pos: self.pos <Block2>: canvas: Color: rgba:1,0,0,1 Rectangle: size: root.width/10, root.height/20 pos: self.pos <Block3>: canvas: Color: rgba:1,0,0,1 Rectangle: size: root.width/10, root.height/20 pos: self.pos <Block4>: canvas: Color: rgba:1,0,0,1 Rectangle: size: root.width/10, root.height/20 pos: self.pos <Block5>: canvas: Color: rgba:1,0,0,1 Rectangle: size: root.width/10, root.height/20 pos: self.pos <Block6>: canvas:#A canvas is kivys default work area where things can be drawn Color:#This is the color intruction in rgba rgba:1,0,0,1 Rectangle: size: root.width/10, root.height/20 pos: self.pos ``` For now we have widgets but they wont show on our window if run because they have not been called in our app ``build`` function. **Defining how our app will build** This tetris app generates a random block out of the six gives it to our console at intervals. To do this we have to create a loop in our build function. First we set our Tetris game as our root layout and then add the widgets systematically using the loop. We write our code like this. ``` class TetrisApp(App): def build(self):#This is the root component of our app or rather where it loads game = TetrisGame() x = Window.width#Using our kivy.window module block1 = Block1(pos=(randint(0,x),Window.height))#We use this code to determine where the widget will load block2 = Block2(pos=(randint(0,x),Window.height))#We want it to load at a random x axis but on a constant y axis block3 = Block3(pos=(randint(0,x),Window.height)) block4 = Block4(pos=(randint(0,x),Window.height)) block5 = Block5(pos=(randint(0,x),Window.height)) block6 = Block6(pos=(randint(0,x),Window.height)) allblocks = (block1, block2, block3, block4, block5, block6) while game:#This is where we create our loop blockchoice = randint(1,6) if blockchoice == 1: game.add_widget(block1) Clock.schedule_interval(block1.fall,1/60) for i in allblocks: if block1.collide_widget(i): block1.position[1] = 0 elif blockchoice == 2: game.add_widget(block2) Clock.schedule_interval(block2.fall,1/60) for i in allblocks: if block2.collide_widget(i): block2.position[1] = 0 elif blockchoice == 3: game.add_widget(block3) Clock.schedule_interval(block3.fall,1/60) for i in allblocks: if block3.collide_widget(i): block3.position[1] = 0 elif blockchoice == 4: game.add_widget(block4) Clock.schedule_interval(block4.fall,1/60) for i in allblocks: if block4.collide_widget(i): block4.position[1] = 0 elif blockchoice == 5: game.add_widget(block5) Clock.schedule_interval(block5.fall,1/60) for i in allblocks: if block5.collide_widget(i): block5.position[1] = 0 elif blockchoice == 6: game.add_widget(block6) Clock.schedule_interval(block6.fall,1/60) for i in allblocks: if block6.collide_widget(i): block6.position[1] = 0 else: print('this is not possible') return game ``` To explain the ``Clock.schedule_interval`` function, we will have to define a fall function within each of our widget classes. The ``Clock.schedule_interval`` function keeps calling this function over a period of time. ``` #In this case it call the fall function of our widget once every 60 seconds Clock.schedule_interval(block.fall, 1/60) ``` **Making our blocks fall** We then make the blocks fall and stop when they reach zero position. ``` #Repeat this piece of code for every block widget class Block6(Widget): vel_x = NumericProperty(0) vel_y = NumericProperty(-5) position = ReferenceListProperty(vel_x,vel_y) def fall(self, pos): self.pos = Vector(self.position) + self.pos if self.pos[1]==0: self.position[1] = 0 ``` If you followed you should see your blocks falling one after the other and lumping on each other when they reach the end .png) This tutorial would continue in the next of its series **For my previous posts in the python tutorial series** -[Click Here* Creating a simple calculator using python 3.8(cpython)](https://steemit.com/utopian-io/@yalzeee/tutorial-developing-a-simple-calculator-with-basic-command-with-python-fix-bugs-in-your-code) **Creating an encryption key(Cryptography)** -[ Part 1](https://steemit.com/utopian-io/@yalzeee/tutorial-creating-a-visual-cube-encryption-key-using-python-3-0-part-1) -[ Part 2](https://steemit.com/utopian-io/@yalzeee/tutorial-creating-a-visual-encryption-key-in-python-3-6-part-2) -[ Part 3](https://steemit.com/utopian-io/@yalzeee/tutorial-creating-an-visual-cube-encryption-program-with-python-3-6-part-3) -[ Part 4](https://steemit.com/utopian-io/@yalzeee/tutorial-creating-an-encryption-program-with-python-3-6-part-4) **Developing an institutions data collection backend and frontend with python 3.6 series** [Part 1 of this series](https://steemit.com/utopian-io/@yalzeee/tutorial-development-of-an-institutions-data-collection-backend-using-python-3-6-part-1) [Part 2 of this series](https://steemit.com/utopian-io/@yalzeee/tutorial-development-of-an-institutions-data-collection-back-end-using-python-3-6-part-2) [Part 3 of this series](https://steemit.com/utopian-io/@yalzeee/tutorial-development-of-an-institutions-data-collection-back-end-with-python-3-part-3) [Part 4 of this series](https://steemit.com/utopian-io/@yalzeee/tutorial-developing-an-institutions-data-collection-web-front-end-with-python-3-6-part-4) [Part 5 of this series](https://steemit.com/utopian-io/@yalzeee/tutorial-developing-an-institutions-data-collection-web-front-end-with-python-3-6-part-5) [Part 6 of this series](https://steemit.com/utopian-io/@yalzeee/tutorial-developing-and-institutions-data-collection-web-front-end-and-back-end-with-python3-6-final-part6) **Previous Series** [Automating OnScreen Processes](https://steemit.com/utopian-io/@yalzeee/tutorial-navigation-and-system-interaction-automating-system-processes-in-python-development) [Screen Mapping and Navigation](https://steemit.com/utopian-io/@yalzeee/tutorial-image-recognition-and-screen-mapping-in-python-developments-part-2) [Packaging and Deploying](https://steemit.com/utopian-io/@yalzeee/tutorial-packaging-and-deploying-part-3) **Proof of work done** [Github](https://github.com/yalzeee/Python-tutorial-series/blob/master/Kivy%20Tetris%20App)
author | yalzeee |
---|---|
permlink | tutorial-kivy-app-development-animating-the-first-block-part-2 |
category | utopian-io |
json_metadata | {"tags":["utopian-io","tutorials","programming","stach","wafrica"],"image":["https://cdn.steemitimages.com/DQmYqni9vxME8D1tzy4wZGgu8CT8zK2Goq5cwDaQia7Zg7J/images.png","https://cdn.steemitimages.com/DQmWn2Yz4NXxK76zyrsL5eC8uJsMVjDfPre2m33YigQ1qMr/Screenshot%20(24).png"],"links":["https://goo.gl/images/HbqzGY","https://github.com/python","https://www.python.org/downloads/","https://steemit.com/utopian-io/@yalzeee/tutorial-developing-a-simple-calculator-with-basic-command-with-python-fix-bugs-in-your-code","https://steemit.com/utopian-io/@yalzeee/tutorial-creating-a-visual-cube-encryption-key-using-python-3-0-part-1","https://steemit.com/utopian-io/@yalzeee/tutorial-creating-a-visual-encryption-key-in-python-3-6-part-2","https://steemit.com/utopian-io/@yalzeee/tutorial-creating-an-visual-cube-encryption-program-with-python-3-6-part-3","https://steemit.com/utopian-io/@yalzeee/tutorial-creating-an-encryption-program-with-python-3-6-part-4","https://steemit.com/utopian-io/@yalzeee/tutorial-development-of-an-institutions-data-collection-backend-using-python-3-6-part-1","https://steemit.com/utopian-io/@yalzeee/tutorial-development-of-an-institutions-data-collection-back-end-using-python-3-6-part-2","https://steemit.com/utopian-io/@yalzeee/tutorial-development-of-an-institutions-data-collection-back-end-with-python-3-part-3","https://steemit.com/utopian-io/@yalzeee/tutorial-developing-an-institutions-data-collection-web-front-end-with-python-3-6-part-4","https://steemit.com/utopian-io/@yalzeee/tutorial-developing-an-institutions-data-collection-web-front-end-with-python-3-6-part-5","https://steemit.com/utopian-io/@yalzeee/tutorial-developing-and-institutions-data-collection-web-front-end-and-back-end-with-python3-6-final-part6","https://steemit.com/utopian-io/@yalzeee/tutorial-navigation-and-system-interaction-automating-system-processes-in-python-development","https://steemit.com/utopian-io/@yalzeee/tutorial-image-recognition-and-screen-mapping-in-python-developments-part-2","https://steemit.com/utopian-io/@yalzeee/tutorial-packaging-and-deploying-part-3","https://github.com/yalzeee/Python-tutorial-series/blob/master/Kivy%20Tetris%20App"],"app":"steemit/0.1","format":"markdown"} |
created | 2018-08-26 14:12:36 |
last_update | 2018-08-26 14:12:36 |
depth | 0 |
children | 5 |
last_payout | 2018-09-02 14:12:36 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 5.936 HBD |
curator_payout_value | 1.728 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 9,022 |
author_reputation | 12,484,565,044,191 |
root_title | "[Tutorial] Kivy App Development(Animating the first block)Part 2" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 69,414,266 |
net_rshares | 5,224,693,713,121 |
author_curate_reward | "" |
voter | weight | wgt% | rshares | pct | time |
---|---|---|---|---|---|
bleepcoin | 0 | 204,778,542,731 | 45% | ||
goode | 0 | 719,654,715 | 90% | ||
yuxi | 0 | 3,039,187,622 | 10% | ||
alavan | 0 | 1,374,752,561 | 100% | ||
surfyogi | 0 | 78,207,441,685 | 4.09% | ||
kisom1 | 0 | 261,426,163 | 45% | ||
youngogmarqs | 0 | 131,749,020 | 0.02% | ||
klynic | 0 | 3,236,127,497 | 45% | ||
luigi-tecnologo | 0 | 1,197,662,153 | 4% | ||
elbleess | 0 | 785,160,575 | 90% | ||
aafeng | 0 | 14,204,844,547 | 25% | ||
leir | 0 | 1,827,746,999 | 50% | ||
vwovwe | 0 | 1,332,362,165 | 90% | ||
bhim | 0 | 73,113,036 | 45% | ||
salim001 | 0 | 85,209,306 | 45% | ||
stach | 0 | 169,725,098,123 | 90% | ||
piaristmonk | 0 | 3,300,063,095 | 100% | ||
tolarnee | 0 | 1,991,771,427 | 45% | ||
rogerman | 0 | 176,750,377 | 90% | ||
nmalove | 0 | 513,214,073 | 4.09% | ||
francistagbo | 0 | 1,174,200,458 | 100% | ||
pangoli | 0 | 1,013,891,280 | 11.7% | ||
tekadii | 0 | 2,415,339,297 | 100% | ||
utopian-io | 0 | 4,472,645,697,094 | 6.22% | ||
temmy8284 | 0 | 188,889,656 | 9% | ||
jaff8 | 0 | 90,191,859,180 | 100% | ||
lumen77 | 0 | 1,284,017,467 | 90% | ||
pasaift | 0 | 871,419,103 | 4.5% | ||
aehiguese | 0 | 342,266,397 | 100% | ||
greenorange | 0 | 605,432,593 | 100% | ||
caesar2341 | 0 | 195,532,612 | 45% | ||
mvanyi | 0 | 1,725,820,594 | 100% | ||
williams-owb | 0 | 322,857,532 | 45% | ||
fejiro | 0 | 1,031,248,645 | 45% | ||
odesanya | 0 | 348,248,556 | 45% | ||
olatun | 0 | 705,458,412 | 90% | ||
paragon99 | 0 | 434,224,664 | 45% | ||
nellita66 | 0 | 168,156,928 | 45% | ||
ezinwakelvin | 0 | 356,697,472 | 45% | ||
sirfreeman | 0 | 545,679,561 | 45% | ||
amosbastian | 0 | 8,228,197,527 | 11.3% | ||
jeline | 0 | 2,355,017,374 | 90% | ||
tdre | 0 | 10,355,227,720 | 100% | ||
jjay | 0 | 854,401,658 | 100% | ||
portugalcoin | 0 | 7,049,839,862 | 28% | ||
patatesyiyen | 0 | 71,915,781 | 11.25% | ||
yalzeee | 0 | 4,880,523,350 | 100% | ||
waku | 0 | 487,019,380 | 90% | ||
crypto4euro | 0 | 72,865,235 | 45% | ||
used-lessboy | 0 | 195,393,903 | 45% | ||
matadonis | 0 | 216,847,494 | 45% | ||
princefizzy | 0 | 224,082,160 | 45% | ||
syahrulfardani | 0 | 200,687,016 | 45% | ||
chidiarua | 0 | 534,168,775 | 90% | ||
valarmorg | 0 | 527,408,010 | 90% | ||
rusliwaddah | 0 | 274,694,724 | 45% | ||
steempeninsula | 0 | 424,572,478 | 100% | ||
jacintoelbarouki | 0 | 165,777,642 | 45% | ||
aronexxon | 0 | 75,991,476 | 45% | ||
steemdragon | 0 | 194,901,853 | 45% | ||
properfraction | 0 | 771,815,278 | 100% | ||
simplymike | 0 | 11,612,038,140 | 10% | ||
pejugold | 0 | 82,021,118 | 45% | ||
anam01 | 0 | 79,284,615 | 45% | ||
jo5h | 0 | 1,716,327,724 | 90% | ||
phaazer1 | 0 | 1,375,439,623 | 45% | ||
isaaceko | 0 | 442,167,653 | 90% | ||
rikilb | 0 | 194,466,583 | 45% | ||
alimuddin97 | 0 | 636,211,740 | 45% | ||
andhikafebrian | 0 | 129,548,364 | 45% | ||
carloniere | 0 | 155,906,141 | 45% | ||
juned0292 | 0 | 213,562,226 | 45% | ||
abdane | 0 | 166,192,465 | 45% | ||
oiq | 0 | 273,358,975 | 45% | ||
statsexpert | 0 | 3,484,344,573 | 60% | ||
pepememes | 0 | 185,753,113 | 45% | ||
ayoade96 | 0 | 154,511,713 | 45% | ||
kerabanafk | 0 | 273,620,767 | 45% | ||
nur-malita | 0 | 155,638,469 | 45% | ||
syahril9 | 0 | 180,442,483 | 45% | ||
terry00 | 0 | 156,487,799 | 45% | ||
wafrica | 0 | 47,892,262,627 | 8.19% | ||
bahagia9 | 0 | 210,709,051 | 45% | ||
etaletai | 0 | 572,423,155 | 45% | ||
flextar | 0 | 821,803,182 | 20% | ||
awesome-p | 0 | 273,243,993 | 45% | ||
finite-clothings | 0 | 130,772,582 | 22.5% | ||
clayjohn | 0 | 14,004,520,614 | 100% | ||
thelonegreywolf | 0 | 274,301,190 | 45% | ||
toyinbaruba | 0 | 61,045,116 | 10% | ||
kolxoznik0 | 0 | 516,381,823 | 100% | ||
manualejandrop | 0 | 136,679,487 | 22.5% | ||
nuryriana | 0 | 274,806,606 | 45% | ||
akmal93 | 0 | 195,372,345 | 45% | ||
newsnow | 0 | 260,762,221 | 45% | ||
pharao20 | 0 | 139,716,078 | 45% | ||
assaulenko | 0 | 522,488,966 | 100% | ||
lobbyx | 0 | 516,413,513 | 100% | ||
freedonor | 0 | 85,847,024 | 45% | ||
noobster | 0 | 1,450,520,554 | 100% | ||
rwalczak | 0 | 522,441,241 | 100% | ||
ninihorlah | 0 | 195,409,190 | 45% | ||
mightypanda | 0 | 10,115,936,857 | 50% | ||
ropessecond | 0 | 522,486,025 | 100% | ||
sutegloss | 0 | 522,486,025 | 100% | ||
footagecache | 0 | 522,488,966 | 100% | ||
widgeontasks | 0 | 516,410,606 | 100% | ||
closedolphin | 0 | 522,488,966 | 100% | ||
fadedclassic | 0 | 522,488,966 | 100% | ||
mastobaev11 | 0 | 516,413,513 | 100% | ||
dman-dmania | 0 | 139,861,978 | 45% | ||
olusegun | 0 | 273,648,555 | 45% | ||
damiralanov | 0 | 522,488,966 | 100% | ||
skuzmin88 | 0 | 516,410,606 | 100% | ||
telephonewhy | 0 | 516,410,606 | 100% | ||
wivesfesnying | 0 | 522,486,025 | 100% | ||
enlargedremove | 0 | 531,602,146 | 100% | ||
rushten | 0 | 516,410,606 | 100% | ||
templateflask | 0 | 516,410,606 | 100% | ||
mahdi-steem | 0 | 250,520,104 | 45% | ||
sadnesscarl | 0 | 194,625,487 | 45% | ||
xericparrot | 0 | 522,486,025 | 100% | ||
grossoexercise | 0 | 522,488,966 | 100% | ||
malmseycafe | 0 | 522,488,966 | 100% | ||
rydbergactinium | 0 | 516,410,606 | 100% | ||
fragiletalented | 0 | 516,413,513 | 100% | ||
jacekw.dev | 0 | 1,297,763,463 | 100% | ||
taqiyagenji | 0 | 261,259,491 | 45% | ||
lambdaethanol | 0 | 516,323,208 | 100% | ||
testisland | 0 | 516,323,208 | 100% | ||
ringbiceps | 0 | 520,901,871 | 100% | ||
aclcrypto2 | 0 | 6,879,530,828 | 100% | ||
sid000 | 0 | 112,738,415 | 45% | ||
barnacoi | 0 | 274,265,493 | 90% | ||
dzheymss | 0 | 522,988,995 | 100% | ||
anmal1990 | 0 | 513,845,555 | 100% |
Thanks for your contribution. We've been reviewing your contribution and suggest the following to improve on upcoming tutorials. - You use many blocks of code repeated, we suggest you put a function that will always use the same code is called. The code repeated is this: ``` if blockchoice == 1: game.add_widget(block1) Clock.schedule_interval(block1.fall,1/60) for i in allblocks: if block1.collide_widget(i): block1.position[1] = 0 ``` <br/> - Your tutorial is quite short for a good tutorial.If your code didn't have code repetition the tutorial was very short. We recommend you aim for capturing at least 2-3 concepts in single tutorial. Your contribution has been evaluated according to [Utopian policies and guidelines](https://join.utopian.io/guidelines), as well as a predefined set of questions pertaining to the category. To view those questions and the relevant answers related to your post, [click here](https://review.utopian.io/result/8/31313434). ---- Need help? Write a ticket on https://support.utopian.io/. Chat with us on [Discord](https://discord.gg/uTyJkNm). [[utopian-moderator]](https://join.utopian.io/)
author | portugalcoin |
---|---|
permlink | re-yalzeee-tutorial-kivy-app-development-animating-the-first-block-part-2-20180826t204735840z |
category | utopian-io |
json_metadata | {"tags":["utopian-io"],"links":["https://join.utopian.io/guidelines","https://review.utopian.io/result/8/31313434","https://support.utopian.io/","https://discord.gg/uTyJkNm","https://join.utopian.io/"],"app":"steemit/0.1"} |
created | 2018-08-26 20:47:36 |
last_update | 2018-08-26 20:47:36 |
depth | 1 |
children | 2 |
last_payout | 2018-09-02 20:47:36 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 3.472 HBD |
curator_payout_value | 1.121 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 1,179 |
author_reputation | 598,828,312,571,988 |
root_title | "[Tutorial] Kivy App Development(Animating the first block)Part 2" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 69,441,400 |
net_rshares | 3,152,457,933,678 |
author_curate_reward | "" |
voter | weight | wgt% | rshares | pct | time |
---|---|---|---|---|---|
espoem | 0 | 15,504,576,157 | 15% | ||
utopian-io | 0 | 3,096,447,021,065 | 4.32% | ||
amosbastian | 0 | 11,594,278,334 | 16% | ||
yalzeee | 0 | 4,880,603,501 | 100% | ||
reazuliqbal | 0 | 8,492,144,227 | 20% | ||
statsexpert | 0 | 3,459,521,839 | 60% | ||
codebull | 0 | 219,276,969 | 20% | ||
mightypanda | 0 | 9,129,371,787 | 50% | ||
fastandcurious | 0 | 2,408,398,032 | 100% | ||
mops2e | 0 | 322,741,767 | 10% |
Thank you for your review, @portugalcoin! So far this week you've reviewed 16 contributions. Keep up the good work!
author | utopian-io |
---|---|
permlink | re-re-yalzeee-tutorial-kivy-app-development-animating-the-first-block-part-2-20180826t204735840z-20180827t054508z |
category | utopian-io |
json_metadata | "{"app": "beem/0.19.42"}" |
created | 2018-08-27 05:45:09 |
last_update | 2018-08-27 05:45:09 |
depth | 2 |
children | 0 |
last_payout | 2018-09-03 05:45:09 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.019 HBD |
curator_payout_value | 0.004 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 116 |
author_reputation | 152,955,367,999,756 |
root_title | "[Tutorial] Kivy App Development(Animating the first block)Part 2" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 69,471,094 |
net_rshares | 16,464,487,379 |
author_curate_reward | "" |
voter | weight | wgt% | rshares | pct | time |
---|---|---|---|---|---|
espoem | 0 | 16,124,759,203 | 15% | ||
mops2e | 0 | 339,728,176 | 10% |
Thanks for the tip Prior to this i thought my code was rather quite lenghty, but in the next of my tutorial series i would try to encapsulate more
author | yalzeee |
---|---|
permlink | re-portugalcoin-re-yalzeee-tutorial-kivy-app-development-animating-the-first-block-part-2-20180826t232854227z |
category | utopian-io |
json_metadata | {"tags":["utopian-io"],"app":"steemit/0.1"} |
created | 2018-08-26 23:29:30 |
last_update | 2018-08-26 23:29:30 |
depth | 2 |
children | 0 |
last_payout | 2018-09-02 23:29:30 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 146 |
author_reputation | 12,484,565,044,191 |
root_title | "[Tutorial] Kivy App Development(Animating the first block)Part 2" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 69,449,939 |
net_rshares | 0 |
Hey @yalzeee **Thanks for contributing on Utopian**. Weβre already looking forward to your next contribution! **Want to chat? Join us on Discord https://discord.gg/h52nFrV.** <a href='https://steemconnect.com/sign/account-witness-vote?witness=utopian-io&approve=1'>Vote for Utopian Witness!</a>
author | utopian-io |
---|---|
permlink | re-tutorial-kivy-app-development-animating-the-first-block-part-2-20180827t052533z |
category | utopian-io |
json_metadata | "{"app": "beem/0.19.42"}" |
created | 2018-08-27 05:25:33 |
last_update | 2018-08-27 05:25:33 |
depth | 1 |
children | 0 |
last_payout | 2018-09-03 05:25:33 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.019 HBD |
curator_payout_value | 0.004 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 297 |
author_reputation | 152,955,367,999,756 |
root_title | "[Tutorial] Kivy App Development(Animating the first block)Part 2" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 69,469,832 |
net_rshares | 16,464,487,379 |
author_curate_reward | "" |
voter | weight | wgt% | rshares | pct | time |
---|---|---|---|---|---|
espoem | 0 | 16,124,759,203 | 15% | ||
mops2e | 0 | 339,728,176 | 10% |
Hello! I find your post valuable for the wafrica community! Thanks for the great post! We encourage and support quality contents and projects from the West African region.<br>Do you have a suggestion, concern or want to appear as a guest author on WAfrica, join our [discord server](https://discord.gg/AfFUhnC) and discuss with a member of our curation team.<br>Don't forget to join us every Sunday by 20:30GMT for our Sunday WAFRO party on our [discord channel](https://discord.gg/AfFUhnC). Thank you.
author | wafrica |
---|---|
permlink | re-tutorial-kivy-app-development-animating-the-first-block-part-2-20180826t143436 |
category | utopian-io |
json_metadata | "" |
created | 2018-08-26 14:34:36 |
last_update | 2018-08-26 14:34:36 |
depth | 1 |
children | 0 |
last_payout | 2018-09-02 14:34:36 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 503 |
author_reputation | 38,945,611,432,157 |
root_title | "[Tutorial] Kivy App Development(Animating the first block)Part 2" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 69,415,981 |
net_rshares | 0 |