{"id":23592893,"url":"https://github.com/noalvo/ape","last_synced_at":"2026-05-19T09:05:55.813Z","repository":{"id":82112490,"uuid":"133706554","full_name":"NOALVO/ape","owner":"NOALVO","description":"Apé | Ultra-minimalistic Node.js redirect server. 👣","archived":false,"fork":false,"pushed_at":"2018-05-16T21:14:55.000Z","size":33,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-02-02T03:34:45.985Z","etag":null,"topics":["http-server","https-server","nodejs","redirect","subdomain-host"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NOALVO.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-16T18:15:58.000Z","updated_at":"2023-09-08T17:40:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"997efe38-c883-47bc-aaf2-b038a59177d4","html_url":"https://github.com/NOALVO/ape","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/NOALVO/ape","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOALVO%2Fape","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOALVO%2Fape/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOALVO%2Fape/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOALVO%2Fape/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NOALVO","download_url":"https://codeload.github.com/NOALVO/ape/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOALVO%2Fape/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33209448,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-19T07:54:09.561Z","status":"ssl_error","status_checked_at":"2026-05-19T07:54:08.508Z","response_time":58,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["http-server","https-server","nodejs","redirect","subdomain-host"],"created_at":"2024-12-27T08:16:17.520Z","updated_at":"2026-05-19T09:05:55.751Z","avatar_url":"https://github.com/NOALVO.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![apé](https://github.com/NOALVO/ape/raw/master/ape2.png)\n# apé\n\u003e Ultra-minimalistic Node.js redirect server.\n\nWhen you need a simple redirect server, to redirect subdomains, HTTP to HTTPS or even your own URL shortener.\n\nThe only thing you need to do is deploy this repository and add your redirects to `redirects.json` file. \n\nAfter deployed, all the HTTP requests will look for a registered request inside this file and will redirect using a standard HTTP redirect with `Location` header and an optional status code.\n\n## How to use\n\n### 1. Modify `redirects.json`, adding your own redirects, in form:\n```\n{\n  host: \"myhost.com\",\n  path: \"/mypath\",\n  destination: \"https://url.to/be/redirected,\n  status: 301\n}\n```\n\n- **`host`** will match URL's hostname and port. i.e. `https://google.com:123/search?q=term` host is `google.com:123`\n- **`path`** will match the entire path and query after `host`. i.e. `https://google.com:123/search?q=term` path is `/search?q=term`\n- **`destination`** should be any valid URL. If not present, will be redirected to `defaultDestination`.\n- **`status`** should be any valid HTTP status code. If not present, will be used code 302.\n\n#### Host and path precedence\n\nApé will check request URL and look `redirects` for:\n\n1. Both `host` and `path` of URL.\n2. Only `host` of URL.\n3. Only `path` of URL.\n4. If not found a redirect rule, it will redirect to default configured destination in `redirects.json` file.\n\n### 2. Deploy to your favorite cloud.\n\n#### Microsoft Azure\n\nThis repository is already configured for an Azure deployment. If you use this cloud, follow the steps below.\n\n1. Create an App Service.\n2. Click *Deployment options* and choose `External Git Repository`.\n3. Put this repository clone URL and follow on.\n4. Await for deploy and access `https://yourappname.scm.azurewebsites.net/dev/wwwroot/redirects.json` to edit the redirects.\n5. _Et voilá!_\n\n\u003e This release was tested with Node 8.9.4. Some used JavaScript features, as _`const` declaration_ and _string interpolation_ may not work with older versions.   \n\u003e   \n\u003e To make sure your app will work with this release, change `WEBSITE_NODE_DEFAULT_VERSION` to `8.9.4` in **Application settings** section.   \n\u003e \n\u003e If you can't upgrade your Node version, consider using Babel to transpile apé's to an older ECMAScript version.\n\n#### Other clouds\n\nPLEASE. Make a pull request!\n\n## Curiosity\n**_Apé_** is a word in Tupi-Guarani, a native south-american indian language, that means \"the path\".\n\n## Roadmap\n\n- Full URL matching\n- Regex URL matching\n- Other cloud deploying configurations\n- Variables to use with destination URLs  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoalvo%2Fape","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnoalvo%2Fape","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnoalvo%2Fape/lists"}