{"id":20934765,"url":"https://github.com/redneb/hubic-auth-swift","last_synced_at":"2025-07-24T00:03:14.328Z","repository":{"id":36489325,"uuid":"40794936","full_name":"redneb/hubic-auth-swift","owner":"redneb","description":"Swift v1 authentication for hubiC","archived":false,"fork":false,"pushed_at":"2017-01-08T23:37:46.000Z","size":34,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-13T02:41:16.178Z","etag":null,"topics":["haskell","hubic"],"latest_commit_sha":null,"homepage":"","language":"Haskell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/redneb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-08-16T01:23:57.000Z","updated_at":"2017-02-22T10:57:42.000Z","dependencies_parsed_at":"2022-09-10T20:24:57.897Z","dependency_job_id":null,"html_url":"https://github.com/redneb/hubic-auth-swift","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/redneb/hubic-auth-swift","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redneb%2Fhubic-auth-swift","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redneb%2Fhubic-auth-swift/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redneb%2Fhubic-auth-swift/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redneb%2Fhubic-auth-swift/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/redneb","download_url":"https://codeload.github.com/redneb/hubic-auth-swift/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redneb%2Fhubic-auth-swift/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266769515,"owners_count":23981388,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["haskell","hubic"],"created_at":"2024-11-18T22:11:07.579Z","updated_at":"2025-07-24T00:03:14.288Z","avatar_url":"https://github.com/redneb.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# hubic-auth-swift\n\n[hubiC](https://hubic.com/) is a file hosting service that supports accessing the files via the OpenStack [Swift](http://docs.openstack.org/developer/swift/) API. Unfortunately, hubiC does not support the standard Swift authentication mechanism and instead uses one based on OAuth 2.0. Consequently, it is not possible to use most of Swift client applications with hubiC. `hubic-auth-swift` is a simple solution to that problem: it provides a single stand-alone executable that acts as an authentication gateway, enabling applications to access a hubiC account via the standard Swift v1 authentication method.\n\n__DISCLAIMER__: I am not affiliated with hubiC or OVH. This is a tool I developed for my personal use and is not officially supported by hubiC.\n\n### Getting started\n\n1. [Download](https://github.com/redneb/hubic-auth-swift/releases) the executable for your OS (precompiled binaries for Linux, Mac OS X, and Windows are provided).\n2. Execute it.\n3. Visit [http://localhost:8080/](http://localhost:8080/) with your favorite browser.\n4. Follow the instructions.\n\n### Features\n\n* A single stand-alone executable.\n* Cross platform (Linux, Mac OS X, Windows, and others).\n* Caches authentication tokens.\n* Includes an in-browser setup guide.\n* Can be used behind a reverse proxy.\n* Supports multiple hubiC applications (i.e. apps with different client IDs).\n\n### Usage\n\n    Usage: hubic-auth-swift [OPTION]...\n\n      -p NUM   --port=NUM           port to listen on (default: 8080)\n      -a HOST  --address=HOST       address to listen on (default: 127.0.0.1)\n      -t NUM   --max-cache-ttl=NUM  maximum time (in minutes) to cache auth tokens (default: 30)\n      -u URL   --base-url=URL       the URL that this server is reachable at if reverse proxied\n      -h       --help               display this help and exit\n\n\n### Compiling from source\n\nIn order to compile `hubic-auth-swift` you need a haskell development environment. For that, you can use the [haskell platform](https://www.haskell.org/platform/). Alternatively, you can just install `GHC` and `cabal-install`. After you have setup the haskell environment, `hubic-auth-swift` can be compiled as follows:\n\n    cabal update\n    cd /path/to/hubic-auth-swift/sources\n    cabal sandbox init\n    cabal install\n    \nThe resulting binary will be available at `.cabal-sandbox/bin`.\n\n### Similar projects\n\n* [node-hubic-swiftauth](https://github.com/gierschv/node-hubic-swiftauth): a very similar program written in node.js.\n* [hubic2swiftgate](https://github.com/oderwat/hubic2swiftgate): a solution written in PHP that can be run in an apache HTTP server.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredneb%2Fhubic-auth-swift","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredneb%2Fhubic-auth-swift","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredneb%2Fhubic-auth-swift/lists"}