GithubHelp home page GithubHelp logo

gnunicorn / gather Goto Github PK

View Code? Open in Web Editor NEW
20.0 5.0 8.0 8.08 MB

the meetup.com clone for a user groups consortium blockchain

Home Page: https://gather.wtf

License: GNU General Public License v3.0

Rust 44.97% Shell 0.12% HTML 11.89% JavaScript 43.02%

gather's Introduction

Gather logo

Development

Gather is built using Substrate (Rust), for the UI we are using React and Material-UI.

Clone the repo

git clone https://github.com/gnunicorn/gather
cd gather

Backend / Blockchain / Substrate

To install the Substrate Development environment follow the official guide for a full install. On Linux and Mac this boils down to running:

curl https://getsubstrate.io -sSf | bash -s -- --fast

Then you can compile and run the local development client with:

cargo run -- --dev

Frontend / React

You need Node.js and the yarn package manager.

The frontend lives in /app. To run the dev server for the UI, just cd into that directory and run:

yarn start

This will open the browser showing the JS app locally, connecting to the local blockchain node via an unsecure websocket. It automatically reloads the UI on changes in /app/src.

To start the UI connecting to a remote server, put the address in the enviornment variable $REACT_APP_WS_TARGET when starting the server, e.g.:

REACT_APP_WS_TARGET="ws://otherhost.tld:9944" yarn start

gather's People

Contributors

gnunicorn avatar ryry79261 avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar

gather's Issues

Typescript + Redux conversion

Description

Converting to Typescript & adding redux will provide us better management of chain state and better tooling

Adding tags

discovery is key for the platform aspect. One of the key ways that discovery works is by allowing the user to set the tags and locations they are interested in and when new groups are created, matching these criteria, they receive a digest/direct notification (email).

This issue is about the tagging mechanism. In particular I expect:

  • a globally managed list of tags
  • tags<->groups relationship (to be set during "updated")
  • tags<->users relationship (new user-preferences?)

import upcoming events from meetup.com

Would be great to wire up the UI to allow organisers to import their existing upcoming meetup.com events as events on the chain.

๐Ÿ’ฏ ๐Ÿ‘ if you use the API/verification-flow not only to import the event, but automatically close RSVPs and put a link to the new events in the description and tell people to sign up here :D .

autodeploying CI

would love some CI, especially on that would install on the server after merge.

static pages: About & FAQ

About and FAQ page(s) to give some more background info on the idea, the tech used and link the upcoming article.

single entrypoint docker-compose

  • a slim Dockerfile to put the entire build (binary & JS build) into
  • a docker-compose.yml, that uses the docker-image and provides a single http-endpoint (potentially with an nginx in front) to
    1. host and serve the static-html
    2. allow access to the JSON-RPC
    3. pass-through to the websocket

User state service

Description

Currently user state is inferred on interaction with the chain. Creating a formal user service to manage user/account state would aid in managing controls & routing throughout the app

research better login patterns

The current system uses email+pw as mnemonic phrases to generate the keypair. But todays humans are used to forgetting their password and then having capabilities to recover or reset it. We should investigate what is necessary to implement something like this.

Let's deploy this - call for consortium

Who is interested in running a consortium of communities running this chain? Please post here, would be great if you could also give a one-liner, what your community is about.

Actual User State

the UI doesn't actually fetch or sync the current user state, thus not showing the correct state :(

Main Header Video doesn't load

Looks like my google drive link timed out and it doesn't allow fetching anymore. Should put the video somewhere else and fetch it from there... potentially the target server?

Implement generator service

Description

Adding a component generator service to reduce human error generatoring components, containers & other react components

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.