{"id":15285519,"url":"https://github.com/zurfyx/angular-library-starter-kit","last_synced_at":"2025-04-13T02:27:58.101Z","repository":{"id":57177980,"uuid":"109379392","full_name":"zurfyx/angular-library-starter-kit","owner":"zurfyx","description":"Angular 5 Library Starter Kit based on Angular-CLI","archived":false,"fork":false,"pushed_at":"2018-05-14T21:33:52.000Z","size":1611,"stargazers_count":34,"open_issues_count":2,"forks_count":8,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-26T19:51:17.697Z","etag":null,"topics":["angular","angular5","github-pages","kit","library","npm","starter","travis-ci"],"latest_commit_sha":null,"homepage":"https://zurfyx.github.io/angular-library-starter-kit/","language":"TypeScript","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/zurfyx.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":"2017-11-03T09:51:01.000Z","updated_at":"2024-06-03T15:34:21.000Z","dependencies_parsed_at":"2022-08-30T05:32:16.466Z","dependency_job_id":null,"html_url":"https://github.com/zurfyx/angular-library-starter-kit","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zurfyx%2Fangular-library-starter-kit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zurfyx%2Fangular-library-starter-kit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zurfyx%2Fangular-library-starter-kit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zurfyx%2Fangular-library-starter-kit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zurfyx","download_url":"https://codeload.github.com/zurfyx/angular-library-starter-kit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248610339,"owners_count":21132921,"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","angular5","github-pages","kit","library","npm","starter","travis-ci"],"created_at":"2024-09-30T15:05:45.562Z","updated_at":"2025-04-13T02:27:58.082Z","avatar_url":"https://github.com/zurfyx.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Angular 5 Library Starter Kit\n\n[![npm Version](https://img.shields.io/npm/v/angular-library-starter-kit.svg)](https://www.npmjs.com/package/angular-library-starter-kit)\n[![Build Status](https://travis-ci.org/zurfyx/angular-library-starter-kit.svg?branch=master)](https://travis-ci.org/zurfyx/angular-library-starter-kit)\n\n\u003e Angular 5 Library Starter Kit based on Angular-CLI.\n\n## What you get out of the box\n\n**A NPM library** such as:\n\n[npmjs.com/package/angular-library-starter-kit](https://www.npmjs.com/package/angular-library-starter-kit)\n\nWhich can be installed and imported as easy as `npm install your-library-name` and `import { MyModule } from 'your-library-name'`\n\nA **demo page** such as:\n\n[zurfyx.github.io/angular-library-starter-kit](https://zurfyx.github.io/angular-library-starter-kit/)\n\n## Features\n\n- Based on [angular-cli](https://github.com/angular/angular-cli)\n- Compatibility with Angular CLI, Webpack and SystemJS (built with [ng-packgr](https://github.com/dherges/ng-packagr))\n- Demo project (watch your library result as you develop)\n- Angular tests \u0026 E2E tests\n- Travis CI autodeploy to NPM\n- Travis CI demo autodeploy to GitHub Pages\n\n## Getting started\n\n```\ngit clone https://github.com/zurfyx/angular-library-start-kit\nnpm install\nnpm start\n```\n\n**Write your package metadata**\n\nMake this library yours. Edit `package.json`, `.angular-cli.json` and `.travis.yml` and replace all ocurrences of `angular-library-starter-kit` with `your-module-name` (make sure it doesn't exist on [NPM](http://npmjs.com/) yet).\n\nFor the `package.json -\u003e build-gh-pages` make sure to change `zurfyx` with your GitHub name or organization name. It will be used to later deploy your demo page onto GitHub pages.\n\nSame thing has to be done with `.travis.yml -\u003e after_sucess`. We'll get into secure tokens in [Setting up Continuous Integration](#setting-up-continuous-integration).\n\n**Write your module**\n\nEdit `src/` with your library contents. The current `taggify.module.ts`, `taggify.pipe.ts`, `taggify.pipe.spec.ts` and `index.ts` should be edited with your module stuff.\n\nEverything you want the target users to be able to import directly should be added into `index.ts`. Remember that shared components or pipes should be written both into `declarations` and `exports` when defining your module.\n\n**Write your module demo**\n\nEdit `example/app` files just like if it was a normal `angular-cli` site. You might want to make use of `import { YourModule } from '../../src'` at some point to proof that your library works as expected.\n\n**Test your module**\n\nYou can write both `e2e` test over your demo site, and unit tests on either the `src` and `example/app`.\n\nYou might want to check `e2e/app.e2e-spec.ts` and `src/taggify.pipe.spec.ts` as examples.\n\n**Upload your module onto NPM**\n\nThis process can be done automatically with Travis CI. See [Autodeploy to NPM](#autodeploy-to-npm).\n\n```\nnpm run build\n```\n\nBrowser into the `dist/` folder, where the result is stored and publish it into NPM.\n\n```\ncd dist\nnpm publish\n```\n\nYour module should now be up and ready!\n\n## Folder structure\n\nFor the most part, the folder structure is identical to angular-cli's one.\n\n```\n|- example/app Your demo application (GH pages)\n|- src All your library source code, which will get packaged and distributed.\n```\n\n## Setting up Continuous Integration\n\nWhile you can use any CI of your choice, **Travis CI** is already set up to do the demo deployment onto GitHub Pages and library into NPM for you.\n\nRead over [Write your package metadata](#write-your-package-metadata) first, if you haven't already.\n\nFirst of all, activate Travis on your GitHub repository. You can do so on your [Travis profile](https://travis-ci.org/profile/).\n\n### Autodeploy to GitHub Pages\n\nIn order to deploy to GitHub Pages we need a GitHub token of yours.\n\nGenerate a token [here](https://github.com/settings/tokens/new). Scopes: [x] repo.\n\nEncrypt the token. On your source code folder run the following command:\n\n```\ntravis encrypt GH_TOKEN=your_token_here\n```\n\nThe result should be copy-pasted into `env -\u003e global -\u003e secure`.\n\n### Autodeploy to NPM\n\nA similar thing to GitHub Pages can be done with NPM.\n\nGenerate a token with `npm token create`.\n\nEncrypt the token. On your source code folder run the following command:\n\n```\ntravis encrypt your_token_here\n```\n\nThe result should be copy-pasted into `deploy -\u003e api_key -\u003e secure`.\n\n## Built with Angular Library Starter Kit\n\n- [angular-custom-modal](https://github.com/zurfyx/angular-custom-modal)\n- [angular-custom-dropdown](https://github.com/zurfyx/angular-custom-dropdown)\n- [angular-contents](https://github.com/zurfyx/angular-contents)\n\n## License\n\nMIT © [Gerard Rovira Sánchez](//zurfyx.com)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzurfyx%2Fangular-library-starter-kit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzurfyx%2Fangular-library-starter-kit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzurfyx%2Fangular-library-starter-kit/lists"}