tortick


Nametortick JSON
Version 0.10.0 PyPI version JSON
download
home_pageNone
SummaryA Telegram-like channel API for the Dark Web
upload_time2024-08-29 06:31:04
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseNone
keywords channel darknet feed onion telegram tor
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ## Description

**Tortick** (from Russian то́ртик, a diminutive for торт, "cake") is a Telegram-like channel for the Dark Web. It creates a Tor Hidden Service with JSON-speaking API, which allows to create text/flavoured posts and publish binaries (images, music, etc.). All posts and binaries are signed with Hidden Service Ed25519 key, which allows to verify authorship.

For now it works only with Unix-like systems (tested with Debian 12). Other systems support is planned for future releases.

**NOTE:** This is a pre-alpha. Server is working, but client is in progress of development. So, it does not look as beautiful as it can be.

## Dependencies

```bash
apt install tor obfs4proxy
```

## Usage

### Server side

Create a channel database:

```bash
tortick channel-new --name 'Test Channel' --info '{"author": "Anonymous Person", "email": "author@service.org"}' --db test_channel.db
```

Add a new post:

```bash
tortick post-new --db test_channel.db --text "Hi everyone! I've created my own tortick!" [--postpone ${NOT_NOW}]
```

Run the server. Also, you can specify Tor bridges:

```bash
tortick channel-run --db test_channel.db --bridges working_bridges.txt
```

Or, you can run your channel locally, at `localhost:8000`:

```bash
tortick channel-run --db test_channel.db --test
```

Get the full list of commands:

```bash
tortick --help
```

### API

**Last API version:** v0 (under development)

- `/api/v0/info`: Get channel public info
- `/api/v0/updates/{timestamp}`: Get Entity IDs (EntID) of all entities that were published (or edited) starting from `{timestamp}`. Returns 100 EntIDs at most. It is recommended to start getting updates from `/api/v0/updates/0`.
- `/api/v0/entity/{entid}`: Get Entity with specified `{entid}`. It can be Post, or Binary summary. Returns error if EntID does not exist.
- `/api/v0/binary/{entid}/{fragnum}`: Get fragment with number `{fragnum}` (started from 1) of the Binary with specified `{entid}`. Returns empty bytes in cause of any error.

## Bugs

If you find the project interesting and want to participate, feel free to report bugs and request features [here](https://codeberg.org/screwery/tortick/issues).

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "tortick",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": "channel, darknet, feed, onion, telegram, tor",
    "author": null,
    "author_email": "Ellie Viesn\u00e1 <snowboard_refinery@proton.me>",
    "download_url": "https://files.pythonhosted.org/packages/49/00/fa781d7a5c4efb471445034d15598f937e41f3972e3a3cb67aa65a5e8e9a/tortick-0.10.0.tar.gz",
    "platform": null,
    "description": "## Description\n\n**Tortick** (from Russian \u0442\u043e\u0301\u0440\u0442\u0438\u043a, a diminutive for \u0442\u043e\u0440\u0442, \"cake\") is a Telegram-like channel for the Dark Web. It creates a Tor Hidden Service with JSON-speaking API, which allows to create text/flavoured posts and publish binaries (images, music, etc.). All posts and binaries are signed with Hidden Service Ed25519 key, which allows to verify authorship.\n\nFor now it works only with Unix-like systems (tested with Debian 12). Other systems support is planned for future releases.\n\n**NOTE:** This is a pre-alpha. Server is working, but client is in progress of development. So, it does not look as beautiful as it can be.\n\n## Dependencies\n\n```bash\napt install tor obfs4proxy\n```\n\n## Usage\n\n### Server side\n\nCreate a channel database:\n\n```bash\ntortick channel-new --name 'Test Channel' --info '{\"author\": \"Anonymous Person\", \"email\": \"author@service.org\"}' --db test_channel.db\n```\n\nAdd a new post:\n\n```bash\ntortick post-new --db test_channel.db --text \"Hi everyone! I've created my own tortick!\" [--postpone ${NOT_NOW}]\n```\n\nRun the server. Also, you can specify Tor bridges:\n\n```bash\ntortick channel-run --db test_channel.db --bridges working_bridges.txt\n```\n\nOr, you can run your channel locally, at `localhost:8000`:\n\n```bash\ntortick channel-run --db test_channel.db --test\n```\n\nGet the full list of commands:\n\n```bash\ntortick --help\n```\n\n### API\n\n**Last API version:** v0 (under development)\n\n- `/api/v0/info`: Get channel public info\n- `/api/v0/updates/{timestamp}`: Get Entity IDs (EntID) of all entities that were published (or edited) starting from `{timestamp}`. Returns 100 EntIDs at most. It is recommended to start getting updates from `/api/v0/updates/0`.\n- `/api/v0/entity/{entid}`: Get Entity with specified `{entid}`. It can be Post, or Binary summary. Returns error if EntID does not exist.\n- `/api/v0/binary/{entid}/{fragnum}`: Get fragment with number `{fragnum}` (started from 1) of the Binary with specified `{entid}`. Returns empty bytes in cause of any error.\n\n## Bugs\n\nIf you find the project interesting and want to participate, feel free to report bugs and request features [here](https://codeberg.org/screwery/tortick/issues).\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A Telegram-like channel API for the Dark Web",
    "version": "0.10.0",
    "project_urls": {
        "Changelog": "https://codeberg.org/screwery/tortick/src/branch/main/CHANGELOG.md",
        "Issues": "https://codeberg.org/screwery/tortick/issues",
        "Repository": "https://codeberg.org/screwery/tortick"
    },
    "split_keywords": [
        "channel",
        " darknet",
        " feed",
        " onion",
        " telegram",
        " tor"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "75cc77a4c8ad990b6644d291df7ab3a5a1b9876af9a390750813899b0cb58727",
                "md5": "34c96ecc9fc356a5ed772cfa557faa16",
                "sha256": "d03d5950e1b1d413f63a494d739d91d2a2fc93ab739aaad32c079347ed040e6d"
            },
            "downloads": -1,
            "filename": "tortick-0.10.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "34c96ecc9fc356a5ed772cfa557faa16",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 22160,
            "upload_time": "2024-08-29T06:31:01",
            "upload_time_iso_8601": "2024-08-29T06:31:01.699891Z",
            "url": "https://files.pythonhosted.org/packages/75/cc/77a4c8ad990b6644d291df7ab3a5a1b9876af9a390750813899b0cb58727/tortick-0.10.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4900fa781d7a5c4efb471445034d15598f937e41f3972e3a3cb67aa65a5e8e9a",
                "md5": "8d0207dac64c4872b7d9c3032fd4e5ed",
                "sha256": "d22a3fa5fe2211689892a61cd7d87f07e843bf2243e619d7e458ccfbabf21708"
            },
            "downloads": -1,
            "filename": "tortick-0.10.0.tar.gz",
            "has_sig": false,
            "md5_digest": "8d0207dac64c4872b7d9c3032fd4e5ed",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 57592,
            "upload_time": "2024-08-29T06:31:04",
            "upload_time_iso_8601": "2024-08-29T06:31:04.527256Z",
            "url": "https://files.pythonhosted.org/packages/49/00/fa781d7a5c4efb471445034d15598f937e41f3972e3a3cb67aa65a5e8e9a/tortick-0.10.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-29 06:31:04",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": true,
    "codeberg_user": "screwery",
    "codeberg_project": "tortick",
    "lcname": "tortick"
}
        
Elapsed time: 0.37505s