{"id":15093299,"url":"https://github.com/bohoffi/ngx-deploy-ftp","last_synced_at":"2025-10-06T11:31:51.046Z","repository":{"id":44755688,"uuid":"351152944","full_name":"bohoffi/ngx-deploy-ftp","owner":"bohoffi","description":"Deploy Angular apps to an FTP remote using the Angular CLI","archived":true,"fork":false,"pushed_at":"2022-12-17T23:17:42.000Z","size":311,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2024-09-26T11:20:46.772Z","etag":null,"topics":["angular","angular-cli","cli","deploy","ftp","ng-deploy","schematics"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bohoffi.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2021-03-24T16:39:20.000Z","updated_at":"2024-03-10T13:14:46.000Z","dependencies_parsed_at":"2023-01-29T18:15:39.492Z","dependency_job_id":null,"html_url":"https://github.com/bohoffi/ngx-deploy-ftp","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bohoffi%2Fngx-deploy-ftp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bohoffi%2Fngx-deploy-ftp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bohoffi%2Fngx-deploy-ftp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bohoffi%2Fngx-deploy-ftp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bohoffi","download_url":"https://codeload.github.com/bohoffi/ngx-deploy-ftp/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219877267,"owners_count":16554853,"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","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":["angular","angular-cli","cli","deploy","ftp","ng-deploy","schematics"],"created_at":"2024-09-25T11:20:52.261Z","updated_at":"2025-10-06T11:31:45.736Z","avatar_url":"https://github.com/bohoffi.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"https://raw.githubusercontent.com/bohoffi/ngx-deploy-ftp/develop/assets/logo.svg\" width=\"150\"\u003e\n\n# ngx-deploy-ftp 🚀 📤\n\nDeploy Angular apps to an FTP remote using the Angular CLI\n\n[![npm version](https://img.shields.io/npm/v/ngx-deploy-ftp.svg)](https://www.npmjs.com/package/ngx-deploy-ftp)\n[![Apache 2.0](https://img.shields.io/badge/license-Apache%202.0-blue.svg?color=blue)](https://opensource.org/licenses/Apache-2.0)\n![PR-builder](https://github.com/bohoffi/ngx-deploy-ftp/workflows/PR-builder/badge.svg)\n\n## ⚠️Advisory ⚠️\n\nPrefer alternative transfer protocols like HTTPS or SFTP (SSH). Use this library when you have no choice and need to use FTP. Try to use FTPS (FTP over TLS) whenever possible, FTP alone does not provide any security.\n\n- [⚠️ Prerequisites](#prerequisites)\n- [📕 Usage](#usage)\n- [📖 Options](#options)\n  - [--base-href](#base-href)\n  - [--configuration](#configuration)\n  - [--no-build](#no-build)\n  - [--host](#host)\n  - [--port](#port)\n  - [--tls](#tls)\n  - [--username](#username)\n  - [--password](#password)\n  - [--remote-dir](#remote-dir)\n  - [--clean-remote](#clean-remote)\n  - [--verbose](#verbose)\n  - [--dry-run](#dry-run)\n- [Credits](#credits)\n\n## ⚠️ Prerequisites\n\nThis package has the following prerequisites:\n\n- Angular project created via [Angular CLI](https://github.com/angular/angular-cli) v9.0.0 or higher (or upgraded using `ng update`)\n\n## 📕 Usage\n\n1. Add `ngx-deploy-ftp` to your workspace (this command either requires a project passed using the `--project \u003cPROJECT_NAME\u003e` or the first `application` project present in your `angular.json`)\n\n   ```sh\n   ng add ngx-deploy-ftp\n   ```\n\n2. Deploy your app\n   ```sh\n   ng deploy \u003cOPTIONS\u003e\n   ```\n\n## 📖 Options\n\n#### --base-href \u003ca name=\"base-href\"\u003e\u003c/a\u003e\n\n- **optional**\n- Default: `undefined` (string)\n- Example:\n  - `ng deploy` – The tag `\u003cbase href=\"/\"\u003e` remains unchanged in your `index.html`\n  - `ng deploy --base-href=/sub-directory/` – The tag `\u003cbase href=\"/sub-directory/\"\u003e` is added to your `index.html`\n\nSpecifies the base URL for the application being built. Same as `ng build --base-href=/XXX/`\n\n#### --configuration \u003ca name=\"configuration\"\u003e\u003c/a\u003e\n\n- **optional**\n- Default: `production` (string)\n- Example:\n  - `ng deploy` – Angular project is build in production mode\n  - `ng deploy --configuration=test` – Angular project is using the configuration `test` (this configuration must exist in the `angular.json` file)\n\nA named build target, as specified in the `configurations` section of `angular.json`.\nEach named target is accompanied by a configuration of option defaults for that target.\nSame as `ng build --configuration=XXX`.\nThis command has no effect if the option `--no-build` option is active.\n\n#### --no-build \u003ca name=\"no-build\"\u003e\u003c/a\u003e\n\n- **optional**\n- Default: `false` (boolean)\n- Example:\n  - `ng deploy` – Angular project is build in production mode before the deployment\n  - `ng deploy --no-build` – Angular project is NOT build\n\nSkip build process during deployment.\nThis can be used when you are sure that you haven't changed anything and want to deploy with the latest artifact.\nThis command causes the `--configuration` setting to have no effect.\n\n#### --host \u003ca name=\"host\"\u003e\u003c/a\u003e\n\n- **required**\n- Example:\n  - `ng deploy --host myftpserver.com`\n\nSpecifies the target FTP host to use for deployment.\n\n#### --port \u003ca name=\"port\"\u003e\u003c/a\u003e\n\n- **optional**\n- Default: `21` (number)\n- Example:\n  - `ng deploy --port 1234`\n\nSpecifies the FTPs port to use for deployment.\n\n#### --tls \u003ca name=\"tls\"\u003e\u003c/a\u003e\n\n- **optional**\n- Default: `true` (boolean)\n- Example:\n  - `ng deploy --tls false` - turns off TLS for FTP\n\nIndicates to connect to the FTP server using TLS or not. (Some client may require to turn TLS off)\n\n#### --username \u003ca name=\"username\"\u003e\u003c/a\u003e\n\n- **required**\n- Example:\n  - `ng deploy --username bob`\n\nSpecifies the username to login on the FTP host.\n\n#### --password \u003ca name=\"password\"\u003e\u003c/a\u003e\n\n- **required**\n- Example:\n  - `ng deploy --password passw0rd`\n\nSpecifies the password to login on the FTP host.\n\n#### --remote-dir \u003ca name=\"remote-dir\"\u003e\u003c/a\u003e\n\n- **optional**\n- Example:\n  - `ng deploy --remote-dir 'sub-dir-a/sub-dir-aa'` - Deploys the app to remotes `sub-dir-a/sub-dir-aa`\n\nSpecifies the remotes directory path to deploy the app to.\n\n#### --clean-remote \u003ca name=\"clean-remote\"\u003e\u003c/a\u003e\n\n- **optional**\n- Default: `false` (boolean)\n- Example:\n  - `ng deploy --clean-remote` - Cleans the remotes working directory before deploying\n\nIndicates if the remotes working directory should be cleaned before deployment.\n\n#### --verbose \u003ca name=\"verbose\"\u003e\u003c/a\u003e\n\n- **optional**\n- Default: `false` (boolean)\n- Example:\n  - `ng deploy --verbose`\n\nWill increase the FTP clients log output. (using `--dry-run` will set this to true by default)\n\n#### --dry-run \u003ca name=\"dry-run\"\u003e\u003c/a\u003e\n\n- **optional**\n- Default: `false` (boolean)\n- Example:\n  - `ng deploy --dry-run`\n\nFor testing: Run through **without** making any changes. Will connect to the FTP, change the working directory (if passed) and disconnect.\n\n## Credits \u003ca name=\"credits\"\u003e\u003c/a\u003e\n\nProps to following repositorys for inspiration and deeper understanding:\n\n- [ngx-deploy-starter](https://github.com/angular-schule/ngx-deploy-starter)\n- [angular-cli-ghpages](https://github.com/angular-schule/angular-cli-ghpages)\n- [ngx-deploy-docker](https://github.com/kauppfbi/ngx-deploy-docker)\n- [ngx-deploy-npm](https://github.com/bikecoders/ngx-deploy-npm)\n- [ng-deploy-azure](https://github.com/Azure/ng-deploy-azure)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbohoffi%2Fngx-deploy-ftp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbohoffi%2Fngx-deploy-ftp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbohoffi%2Fngx-deploy-ftp/lists"}