GithubHelp home page GithubHelp logo

michaelharms6010 / zecpages Goto Github PK

View Code? Open in Web Editor NEW
16.0 2.0 6.0 67.66 MB

Blockchain MVC App - Zcash-powered Social Media & Publishing

Home Page: https://zecpages.com

HTML 1.26% JavaScript 78.62% SCSS 20.10% Batchfile 0.02%

zecpages's Introduction

ZECpages

ZECpages is a Zcash-focused social site with a Zcash-powered message board. It uses a React frontend connected to a Express/knex/pg backend in its present state. You can see the app at https://zecpages.com. Note that this repo is just for the React app - the backend and a few other jobs that drive the app are in other repositories linked below.

ZECpages is built and maintained by Michael Harms.

Backend

Expressjs api / pg db. Hosted w/AWS EB / RDS. I wouldn't choose EB/RDS again, but here we are.

JSON API details, db schema, and deployment information are here: https://github.com/michaelharms6010/be-zeitpages

Zcash Jobs

These jobs run on a t3.large instance using adityapk00's zecwallet-cli.

This is probably oversized, but it's for safety - ime a t2.micro is totally fine for lightwallet testing and even modest use (not too many tx's firing at once).

Wallet Daemon

The wallet daemon listens for and handles new transactions. Credit where it's due, this is mostly cribbed and adapted from Andrew Miller's staked polling script: https://gist.github.com/amiller/63f78b6c5fb5a9aadcd8a34012986a76 . Thank you vm sir. This box uses admin auth to make posts to the rds db.

Wallet daemon code: https://github.com/michaelharms6010/zcash-memo-monitor

Daily Batched Like Payouts

Likes are paid 50% to eligible posts (a post is eligible if it contains a valid Zcash address). These payments are batched and go out on a scheduled cron job on the job box every day at ~midnight.

Like job code: https://github.com/michaelharms6010/zecpages-likes-payout-script

Testnet Faucet

https://faucet.zecpages.com

Minimal React app with just enough node backend to middleman cors for the browser. I think this is the only part of the ZECpages stack that does fullnode Zcashd rpc.

Faucet code: https://github.com/michaelharms6010/zcash-faucet

The faucet lives on its own server and isn't even linked from ZECpages, but this seems like an appropriate place to link it.

Contributing

Drop by our Trello!

https://trello.com/b/Bi7ghafG/zecpages

zecpages's People

Contributors

adityapk00 avatar dependabot[bot] avatar michaelharms6010 avatar rex4539 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

zecpages's Issues

Short optional, searchable description

May allow visitors to find products, services and the kinds of people they are looking for. Will also allow users to invite their specific target audience to reach out.

ZBoard instructions

consider Include [View QR] / [Copy Zaddr] option in instructions:

Post to zBoard by sending a memo along with 0.001 ZEC (or more) to zs1n5m4szkmqup6ht9nuwke9j5w6pwcd527l4sm8u2aqqhaedjv5at64el6eyazm6engqplx0ht6x9

Instead of Last Seen Alive...

Last Donation

Assign a taddr to each new user for the purposes of claiming to still be alive. Donation of any size works, even 0.00000001_Z (how about zero? )

Footer

Pages outside of the homepage do not have a footer, which is fine, but consider adding your warning about the page still being under construction at the bottom of every page. A user might stray from the home page but still have feedback about another page

Z-address first

Instead of OPEN-SOURCE ZADDR DIRECTORY consider titling the page Z-address Directory.

This was a comment that crypto Wendy o had without any preconception of what a zaddr could be. Fortunately, all the following references to z addresses are in short form zaddr

This humble directory contains 1 Zillion ๐Ÿฆ“ people(?)!

We can't be sure if we have 1 Zillion people because not everyone is verified let alone uniquely verified. Also, some verifications are better than others. Please consider using 3 zebra heads instead:

This humble directory contains 1 Zillion ๐Ÿฆ“๐Ÿฆ“๐Ÿฆ“!

proposing subtitle

instead of "Anonymous" Message Board can we say "z2z" msg board, which implies Anonymous without carrying some of the stigma?

Form Validation

Forms need some extra validation - some users will put in a website with https, some will use twitter with @, some without

Proof

I am michaelharms70 on zecpages.com

Edit name

While I'm not sure what's preventing this, here's a solution I imagine:

As soon as a new name is entered, create a copy into a display version, keeping the original name as the identifier.

The reason I ask is because I would like to change my username from my Twitter handle to my In real life meatspace name

I don't want people to think I'm an anonymous person online but I do want to give them a chance to contact me anonymously

Network Level Security

If possible, perhaps it is worthwhile to display a message like "Your IP Address: . Learn more about Network Level Privacy here"

repo is misnamed

Migrate repo to zecpages to reflect the product name - this need to be fixed on the deployment end as well

Toolbar Navigation

proposals:

  1. add Pages (or Directory) to the toolbar so users can easy jump from the Board to the directory
  2. change ZECpages logo to ZECboard when on the board

I think the boards and pages will ultimately head in different directions, attracting different crowds...

to me: board serve the zeal, a page serves a single zebra

View profile

I find myself manually appending my username to the website address to see what my card looks like.

A view card link could potentially replace the edit your profile link. (Move the edit link within the profile page if that page is in fact the user's profile?)

zaddr dupes

"Your z-address is invalid" appears when dupes zaddr.
perhaps a special message is warranted when dupe is found?
someone may offer different services under different identities....

Profile view suggestions

Two links: Get Zaddr, All Zaddrs

Screenshot_20200217-011652

(New to Zcash? Get a Z-address on your laptop with Zec Wallet Lite)

(View all zaddrs)

About Page

Ppl need to know what the site is and what Zcash is and all that

Header logo link to homepage...

....doesn't reveal changes you've made to your card after submitting edits. The changes appear after refreshing the page.

Add shield icon to center of QR code

I had this idea yesterday, but didn't feel as if it is worth the trouble (if any).

now feel it's worthwhile mentioning it after hearing ECC explain why they implemented it in their iOS wallet app.

Perhaps a black shield with a white Zcash z would suffice ...

May Shield Emoji will do...

IMG_20200218_171759

"Get A Zaddr" link

People who visit site curiously may not have avenue to participate before leaving the site.

Perhaps a "Get A Zaddr" link to zecwallet's twitter will attract new users to join the community

Pagination / Sort

When youv'e got a zillion users ppl gonna have to be able to sort thru em

Display Zeal Count

Featuring 18 ๐Ÿฆ“๐Ÿฆ“๐Ÿฆ“. Sign in to add your card!

significant digits

for any donation above 0.1, please consider special effects like,

0.1-.49... for Oval
0.5+ for Super Star (with much more than 5 legs)

backgrouds (hundreths digits)
0._1 for red
0._2 for orange
0._3 for yellow
0._4 for green
0._5 for blue
0._6 for indigo
0._7 for violet

borders (thousandth digits)
0._ 1 for red
0.
2 for orange
0.
3 for yellow
0.
4 for green
0.
5 for blue
0.
6 for indigo
0.
_7 for violet

font color (ten-thousandth digits)
0._ _ 1 for red
0.
_ 2 for orange
0.
_ 3 for yellow
0.
_ 4 for green
0.
_ 5 for blue
0.
_ 6 for indigo
0.
_ _7 for violet

special effects
1._ _ +: animation
2.
_ _+: recurs once-a-month for a year

making the second third or fourth digit another shape, font, background

Twitter bot to announce new ๐Ÿฆ“๐Ÿฆ“๐Ÿฆ“

if user gives permission at sign up, let twitter.com/zecpages tweet:

Join ๐Ÿฆ“ (name) and ๐Ÿฆ“๐Ÿฆ“๐Ÿฆ“ {total number} others at ZECpages.com #z2z

If no permission, and non-zero result, let @zecpages tweet once daily:

+1 ๐Ÿฆ“ today. Join ๐Ÿฆ“๐Ÿฆ“๐Ÿฆ“ at ZECpages.com/(username)

assure zaddr

underline/bold first 4 letters of zaddr after zs1 and underline/bold last 4 letters of zaddr

FAQs

How to prove identity?

One of the easiest way to make visitors confident that they are, in fact, reaching out to you privately is to announce your z-address, or your presence on zecpages.com, on another website.

Most users tweet "I am ____ on Zecpages.com" and include a link to that tweet under "Proof of Identity"

More FAQ's to come...

Open Twitter link in app

Twitter seems to open in browser only instead of app. Requires user to re-log in via browser to follow zecpages users

users enables public anon tips

Memos: Anonymous feedback is a more unbiased way to collect feedback because the sender is shielded from the receiver. Unperturbed by the potential of retaliation, the feedback may draw stronger conclusions.

Money: Instead of stars, allow users to send any amount of Z cash to represent their approval of Zecpage user

How? Sort of like a personal coin petition - Let user upload a separate t address and it's viewing key strictly for comments. Perhaps two new entry fields become available to collect a T address and view key if the user so chooses to feature the ability to collect comments and tips on there profile page.

What's it look like? A 2xn table where in is the number of transactions received into the transparent address and view key provided.

The memo and amount appear under columns labeled Comments and Tips or something

This may be useful for an anonymous young startup to build street cred, garner honest feedback and raise funds.

One could send themselves positive comments and their own Z cash, though.

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.