Giter Club home page Giter Club logo

covid-19-recovery-identification's Introduction

Tribler

Pytest Documentation Status Codacy Coverage Contributors Pull Requests Issues

python_3_8 python_3_9

Downloads(7.0.2) Downloads(7.1.3) Downloads(7.2.2) Downloads(7.3.2) Downloads(7.4.1) Downloads(7.5.1) Downloads(7.6.1) Downloads(7.7.0) Downloads(7.8.0) Downloads(7.9.0) Downloads(7.10.0) Downloads(7.11.0) Downloads(7.12.1) Downloads(7.13.0) Downloads(7.13.1)

DOI number openhub Join Discord chat

Towards making Bittorrent anonymous and impossible to shut down.

We use our own dedicated Tor-like network for anonymous torrent downloading. We implemented and enhanced the Tor protocol specifications. Tribler includes our own Tor-like onion routing network with hidden services based seeding and end-to-end encryption.

Tribler aims to give anonymous access to content. We are trying to make privacy, strong cryptography, and authentication the Internet norm.

For the past 11 years we have been building a very robust Peer-to-Peer system. Today Tribler is robust: "the only way to take Tribler down is to take The Internet down" (but a single software bug could end everything).

Obtaining the latest release

Just click here and download the latest package for your OS.

Obtaining support

If you found a bug or have a feature request, please make sure you read our contributing page and then open an issue. We will have a look at it ASAP.

Contributing

Contributions are very welcome! If you are interested in contributing code or otherwise, please have a look at our contributing page. Have a look at the issue tracker if you are looking for inspiration :).

Running Tribler from the repository

We support development on Linux, macOS and Windows. We have written documentation that guides you through installing the required packages when setting up a Tribler development environment.

Packaging Tribler

We have written guides on how to package Tribler for distribution on various systems.

Docker support

Dockerfile is provided with the source code which can be used to build the docker image.

To build the docker image:

docker build -t triblercore/triblercore:latest .

To run the built docker image:

docker run -p 20100:20100 --net="host" triblercore/triblercore:latest

Note that by default, the REST API is bound to localhost inside the container so to access the APIs, network needs to be set to host (--net="host").

To use the local state directory and downloads directory, the volumes can be mounted:

docker run -p 20100:20100 --net="host" -v ~/.Tribler:/state -v ~/downloads/TriblerDownloads:/downloads triblercore/triblercore:latest

The REST APIs are now accessible at: http://localhost:20100/docs

Docker Compose

Tribler core can also be started using Docker Compose. For that, a docker-compose.yml file is available on the project root directory.

To run via docker compose:

docker-compose up

To run in detached mode:

docker-compose up -d

To stop Tribler:

docker-compose down

Get in touch!

We like to hear your feedback and suggestions. To reach out to us, you can join our Discord server or create a post on our forums.

License

This file is part of Tribler, Copyright 2004-2023. Tribler is licensed under the GNU General Public License, version 3 (GPL-3.0), as published by the Free Software Foundation on 29 June 2007. Tribler is free software: you can redistribute it and/or modify it under the terms of this license. Tribler is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For more details, see the full terms and conditions in the LICENSE.txt file at the root of this repository, or visit https://www.gnu.org/licenses/gpl-3.0.html.

covid-19-recovery-identification's People

Contributors

akifyuksel avatar cptwesley avatar dependabot[bot] avatar kkostadinov99 avatar lfranschman avatar rsantanatrejo avatar xoriole avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

covid-19-recovery-identification's Issues

IPv8 Service Native Module

For better reusability and easier development, the IPv8 service's implementation is going to be moved into its own Native Module (npm package).

iOS Support

The plan to add iOS support consists of changing the bridge on Android, that is being used for running Python code, from Chaquopy to Beeware's Briefcase and then writing the necessary code for running IPv8's service on iOS. The reason for changing the Android implementation is that Briefcase is open source and does not require a license and it will also be easier to manage the project on both Android and iOS when only one tool is being used. Beeware's Briefcase was not used earlier since it had some issues with running on Android. With that said, using Briefcase might turn out to still be not desirable or even impossible.

Jenkins Integration

The existing GitLab pipeline needs to be adopted for Jenkins. This work will be beneficial for other projects as well.

Roadmap

A short proposal for further development of the project "Building a Critical Infrastructure for the Nation-Wide Identification of Recovered COVID-19 Patients".

  • Write a proper CI/CD for Jenkins (used by the Tribler organisation). Add support for running the test suite against a variety of emulated devices.

  • Split the GUI and the service in two. This would allow for the IPv8 service to become a npm package and anyone who needs to use it for something other than immunity certificates can just create a new GUI and add it as a dependency. Also, it would be easier to support Android and iOS versions with just one codebase for the GUI.

  • Fix Libsodium dependency. As of now, the IPv8 service uses a manually-built version of Libsodium and it is difficult to update or replace it.

  • Add iOS support. It should be implemented similarly to the Android version as iOS supports foreground services.

  • Rewrite partially the GUI (React Native code), in order to make the code testable. The problem is that there is not enough documentation about testing code that uses the React Native framework and is written in TypeScript. Previously there was an attempt at testing such codebase but with no success. A possible solution is to rewrite the codebase from TypeScript to JavaScript.

  • Add more ways for users to share information that is done through the use of QR codes at the moment. One suggestion was the implementation of URI Schemes.

  • Test the codebase more thoroughly. This should be accomplished through integration and system tests. Tools like Jest should be used.

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.