added contribute section to README

parent e1653b51
# Deface Code of Conduct
We believe that our mission is best served in an environment that is friendly, safe, and accepting; free from intimidation or harassment.
Towards this end, certain behaviors and practices will not be tolerated.
## tl;dr
- Be respectful.
- We're here to help: [[email protected]](mailto:[email protected])
- Abusive behavior is never tolerated.
- Violations of this code may result in swift and permanent expulsion from the Deface community.
- "Too long, didn't read" is not a valid excuse for not knowing what is in this document.
## Scope
We expect all members of the Deface community to abide by this Code of Conduct at all times in all Deface community venues, online and in person, and in one-on-one communications pertaining to Deface affairs.
This policy covers the usage of all Deface websites, Deface related events, and any other services offered by or on behalf of the Deface community. It also applies to behavior in the context of the Deface Open Source project communities, including but not limited to public Gitlab repositories, social media, mailing lists, and public events.
This Code of Conduct is in addition to, and does not in any way nullify or invalidate, any other terms or conditions related to use of the Service.
The definitions of various subjective terms such as "discriminatory", "hateful", or "confusing" will be decided at the sole discretion of the Deface abuse team.
## Friendly Harassment-Free Space
We are committed to providing a friendly, safe and welcoming environment for all, regardless of gender identity, sexual orientation, ability, ethnicity, religion, age, physical appearance, body size, race, or similar personal characteristics.
We ask that you please respect that people have differences of opinion regarding technical choices, and that every design or implementation choice carries a trade-off and numerous costs. There is seldom a single right answer. A difference of technology preferences is not a license to be rude.
Any spamming, trolling, flaming, baiting, or other attention-stealing behavior is not welcome, and will not be tolerated.
Harassing other users of the Service is never tolerated, whether via public or private media.
Avoid using offensive or harassing package names, nicknames, or other identifiers that might detract from a friendly, safe, and welcoming environment for all.
Harassment includes, but is not limited to: harmful or prejudicial verbal or written comments related to gender identity, sexual orientation, ability, ethnicity, religion, age, physical appearance, body size, race, or similar personal characteristics; inappropriate use of nudity, sexual images, and/or sexually explicit language in public spaces; threats of physical or non-physical harm; deliberate intimidation, stalking or following; harassing photography or recording; sustained disruption of talks or other events; inappropriate physical contact; and unwelcome sexual attention.
## Reporting Violations of this Code of Conduct
If you believe someone is harassing you or is demonstrating some other form of malicious or inappropriate behavior, contact [[email protected]](mailto:[email protected]). If this is the initial report of a problem, please include as much detail as possible. It is easiest for us to address issues when we have more context.
## Consequences
Unacceptable behavior from any community member will not be tolerated.
Anyone asked to stop unacceptable behavior is expected to comply immediately.
If a community member engages in unacceptable behavior, the Deface team may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning.
## Addressing Grievances
If you feel you have been falsely or unfairly accused of violating this Code of Conduct, you should notify the Deface team. We will do our best to ensure that your grievance is handled appropriately.
In general, we will choose the course of action that we judge as being most in the interest of fostering a safe and friendly community.
## Contact Info
Please contact [[email protected]](mailto:[email protected]) if you need to report a problem or address a grievance related to an abuse report.
You are also encouraged to contact us if you are curious about something that might be "on the line" between appropriate and inappropriate content. We are happy to provide guidance to help you be a successful part of our community.
## Changes
This is a living document and may be updated from time to time. Please refer to the [git history]( for this document to view the changes.
## Credit and License
This Code of Conduct borrows heavily from the Stumptown Syndicate [Citizen's Code of Conduct](, and the [Rust Project Code of Conduct](
This document may be reused under a [Creative Commons Attribution-ShareAlike License](
......@@ -12,6 +12,8 @@ Deface's general documentation and demo video are located [on the project's home
This repository is an entry point to Deface's several repositories. Getting familiar with them and understanding how they interact will help you grasp how Deface works as a whole.
![Deface modules]( "Deface modules")
* [*deface-chrome*]( Google Chrome extension for Deface. It injects Facebook pages with a script that captures, encrypts and decrypts user posts. Runs a [Libp2p2]( node in the background.
* [*deface-dht*]( - `deface` branch: Under the hood, deface-chrome's libp2p node relies on a Distributed Hash Table (DHT) that distributes and queries encryption keys across Deface's network of users. This DHT, forked from [js-libp2p-kad-dht](, is augmented with a layer of user verification. __The application uses deface-dht's deface branch__
......@@ -61,9 +63,43 @@ _Webpack auto-reload will handle reloading the extension within Chrome after any
__Deface currently exists in its alpha 2 version. It is not suitable for use by anyone.__ In fact, this development version only runs on your local network: only devices living on your network will be able to access encryption keys. Besides, things are likely to break. __Please be patient and courteous: don't use Deface in the wild before it reaches a stable state.__
## Tracks of work
For a granular view of current efforts, please refer to this project's [issue board]( Below is a summary of tracks of work for 2019.
__1. Peer-to-peer:__
- Review performance
- Review security
- Investigate alternatives to reCaptcha
__2. Client & UI:__
- Bring Deface to mobile platforms
- Make Facebook DOM manipulations robust
- Refine user interface (e.g add in-app information and recovery features)
__3. Ethics:__
- Identify and mitigates risks posed to vulnerable communities
- Develop a framework for responsible data use
- Document security trade-offs and possible risks
__4. Impact:__
- Identify and contact potential communities of users
- Plan legal strategy
- Secure funding
__5. Codebase:__
- Set up tests for all Deface repositories
- Define a deployment pipeline
## Contribute
We need help, and welcome all contributions! If you're not sure where to start, reading through [the project's homepage]( will be helpful. If you want to contribute with code, please have a look at our [issue board]( Feel free to submit issues and (even better) merge requests.
This project defaults to [standard]( code style. It is a clean codestyle, and its adoption is increasing significantly, making the code that we write familiar to the majority of the developers.
## Code of Conduct
This project follows a [Code of Conduct]( based on [NPM's](
## License
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment