GithubHelp home page GithubHelp logo

tomyo / locpost Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 2.0 242 KB

Censorship resistant location-based messages that empowers anyone to have a voice

Home Page: https://tomyo.github.io/locpost/

Makefile 0.05% HTML 5.22% CSS 2.51% JavaScript 92.23%
censorship-resistance decentralized gun location-based messaging p2p

locpost's Introduction

LocPost

The censorship resistant messaging app that empowers anyone to communicate anonymously around a location.

Check it out online at https://tomyo.github.io/locpost/ and join our public room on Matrix: #locpost:matrix.org.

logo

We use GUN to create a distributed database which is stored amongst the network participants in their local storage inside the web browser. Each participant will keep a copy of the database and GUN will take care of keeping them in sync.

By giving access to your device location, you will join a censorship-resistant channel to exchange messages around that area.

Installation

  • Install pre-commit hook: pre-commit install
  • Run development environment: make dev

ETHBerlin³ hackathon

This project was made during the awesome ETHBerlin³ hackathon during 16-18th September 2022.

Authors

locpost's People

Contributors

ofqwx avatar pablocastellano avatar tomyo avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

locpost's Issues

Register / create / submit Project

ethberlin.devfolio.co

DO NOT FORGET specifics:

  • Relevant/selected Track == Even the Odds: Empowering the underprivileged. Topics: Social Justice, Inclusion, Sustainability, Public Goods.
  • Check & participate in Open Track

Deadline 11 AM Sunday

List content

For now, messages.

As a user, I want to see all content linked to a certain location.

Set manual location

As a user, in order to access the content within a certain location (and to not be dependent on GPS-/network-based location data), I want to click a button 'Set location', and then* be presented with a map that includes a search function, navigate to a certain location, and confirm said location.
*One alternative/additional in the 'manual select' interface might be a directory/list of locations, rather than (merely) a map view

Based upon user input, a new map tile & subsequent location is loaded. The button 'set location' persists in this view, as well.

The error "user has denied location access" should be removed.

Prevent 'empty' posts

Repro:

  • click +
  • click Post

Actual result:
It is possible to post a message without any body (actual content) in it.

Expected Result:
An exception message is thrown if user input = NULL. No POST takes place.

Display enriched context/location information

As a user, at the top of posts page, I want to see which (approximate) location I am 'at', in order to understand more context in relation to whatever I see, and perhaps add to.

Ideally, this is displayed by means of a map section, with the active map grid tile highlighted, within it.

Research/implement (more) permanent storage and/or valuations

EDIT: some storage(-related) stuff to consider (to consider).
IPFS
Pinata / zkSync
Ceramic
Lens (d.Twitter...?)
(Swarm?)

As a user, I want to use a certain Real Life value (such as the ETH on the ETHBerlin Goerli Testnet Cards) in order to enrich my own experience with & contribution to the LocPost ecosystem, as well as that of others.

The value add is being able to 'vote', and getting appreciated by others.

The 'power' required enables users to appreciate (e.g. upvote/like/love/...) our content, i.e. (for the moment only) messages.

We should CAP the maximum amount of impact a user can have, such as 5*/day. Please advise/conceptualize.
Please also advise on potential to present (e.g. auto-sort) location-based content.

Goal guideline:
Level 1: research & provide general insights/recommendations
Level 2: provide (minimal) PoC (text only)
Level 3 (stretch goal): create 'MVP' implementation e.g. interface to (bridge with / application of ETHBerlin Goerli Testnet Cards, allowing fellow hackers to use the TEST ETH provided to value posts within our system)

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.