{"id":15634617,"url":"https://github.com/patrickjs/ng6-todomvc-starter","last_synced_at":"2025-08-21T13:32:44.088Z","repository":{"id":66200331,"uuid":"48773342","full_name":"PatrickJS/NG6-todomvc-starter","owner":"PatrickJS","description":"Basic example of TodoMVC application written with angular and with use of components","archived":false,"fork":false,"pushed_at":"2016-12-16T09:09:20.000Z","size":688,"stargazers_count":136,"open_issues_count":3,"forks_count":73,"subscribers_count":19,"default_branch":"master","last_synced_at":"2024-12-15T01:02:19.695Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://angularclass.github.io/NG6-todomvc-starter/","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/PatrickJS.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}},"created_at":"2015-12-30T00:36:31.000Z","updated_at":"2024-02-13T15:40:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"fc498b86-2dec-47d2-80b9-544ff1b02bff","html_url":"https://github.com/PatrickJS/NG6-todomvc-starter","commit_stats":null,"previous_names":["angularclass/ng6-todomvc-starter"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PatrickJS%2FNG6-todomvc-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PatrickJS%2FNG6-todomvc-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PatrickJS%2FNG6-todomvc-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PatrickJS%2FNG6-todomvc-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PatrickJS","download_url":"https://codeload.github.com/PatrickJS/NG6-todomvc-starter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230516183,"owners_count":18238352,"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":[],"created_at":"2024-10-03T10:54:24.833Z","updated_at":"2024-12-20T00:08:34.228Z","avatar_url":"https://github.com/PatrickJS.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"NG6-starter TodoMVC Example\n============================\n\nThis application is example of how you can write your angular applications using [NG6-starter](https://github.com/AngularClass/NG6-starter) as your starting point. Currently this example provides you:\n\n - Example of small-sized application\n - UI components examples\n - Service example which includes unit tests\n - Unit tests for controllers of UI components\n - Browser-driven end-to-end tests\n \nBut there is still some things that should be done:\n\n - Improve test coverage\n \nIf you have some other ideas of how improve this example, or you have questions, please welcome to our [issue tracker](https://github.com/AngularClass/NG6-todomvc-starter/issues).\n\n## Learning AngularJS\n\nOfficial [AngularJS website](http://angularjs.org/) is good place to start, but it lacks of best practices and not provides you base concepts, which could simplify your life. There is some links that can help you better understand how to write maintainable applications using AngularJS. \n\n - [Angular Styleguide](https://github.com/johnpapa/angular-styleguide) - This is basically angular best practices. There are some differences for ES2015 but the explanation of these practices remains the same.\n - [Optionated Angular Styleguide](https://github.com/toddmotto/angular-styleguide) - this is an extended version of angular styleguide, which covers additional information relevant to dev teams.\n - [Code Organization in Large AngularJS and JavaScript Applications](http://cliffmeyers.com/blog/2013/4/21/code-organization-angularjs-javascript) - This article explains a directory structure, proposed in angular styleguide with more details and use cases.\n - The Top 5 Mistakes AngularJS Developers Make - This is a great series of posts describing in depth the common mistakes and how to not make them.\n   - [Heavy reliance on $scope (not using controller as) ](http://csharperimage.jeremylikness.com/2014/11/the-top-5-mistakes-angularjs-developers.html)\n   - [Abusing $watch](http://csharperimage.jeremylikness.com/2014/11/the-top-5-mistakes-angularjs-developers_28.html)\n   - [Overusing $broadcast and $emit](http://csharperimage.jeremylikness.com/2014/12/the-top-5-mistakes-angularjs-developers.html)\n   - [Hacking the DOM](http://csharperimage.jeremylikness.com/2014/12/the-top-5-mistakes-angularjs-developers_13.html)\n   - [Failing to Test](http://csharperimage.jeremylikness.com/2014/12/the-top-5-mistakes-angularjs-developers_28.html)\n - [AngularJS: The Bad Parts](http://larseidnes.com/2014/11/05/angularjs-the-bad-parts/) - To not fall into a trap, developers always should know the problems of tools they are using. With this knowledge in mind, you will write more maintainable applications.\n - [You don't always need AngularJS DI in directives](http://michalostruszka.pl/blog/2015/01/18/angular-directives-di/) - This article will help you to make more reusable UI components.\n - [Exploring the Angular 1.5 `.component()` method](https://toddmotto.com/exploring-the-angular-1-5-component-method/)\n - [A Guide To Transclusion in AngularJS](http://teropa.info/blog/2015/06/09/transclusion.html)\n\n*If you have any others helpful links to share, or find any of the links above no longer work, please [let us know](https://github.com/AngularClass/NG6-todomvc-starter/issues).*\n\n## Unit testing\n\nThe app uses [Karma](http://karma-runner.github.io/0.12/index.html) to run the unit tests, which you can find near the test target (`*.spec.js` files).\n\n## End-to-end testing\n\nThe app uses [Protractor](https://github.com/angular/protractor), an end-to-end test framework designed for AngularJS apps, to the end-to-end tests, which you can find in the `e2e` folder.\n\n### Setup development environment for running end-to-end tests\n\nThe app uses [Protractor](https://angular.github.io/protractor/#/) from the command line, so first please install it globally:\n\n`npm install -g protractor`\n\nIt installs two command line tools, `protractor` and `webdriver-manager`, and you can use the `protractor --version` \ncommand to verify the installation.\n\nNext, download the necessary binaries for Selenium Server:\n \n`webdriver-manager update`\n\nFinally, start Selenium Server:\n\n`webdriver-manager start`\n\nIt will start Selenium Server on port 4444.\n\n\n### Running end-to-end tests\n\nFirst, start the Selenium Server, and keep it running:\n\n`webdriver-manager start`\n\nNext, open another command prompt, and start the NG6-starter TodoMVC Example application, and keep it running:\n\n`gulp serve`\n\nFinally, open yet another command prompt, and execute the end-to-end tests:\n\n`npm run test:e2e`\n\nEnjoy the report :)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpatrickjs%2Fng6-todomvc-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpatrickjs%2Fng6-todomvc-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpatrickjs%2Fng6-todomvc-starter/lists"}