{"id":20307209,"url":"https://github.com/oktadev/ionic-jhipster-starter","last_synced_at":"2025-04-11T15:06:49.723Z","repository":{"id":45041694,"uuid":"110480886","full_name":"oktadev/ionic-jhipster-starter","owner":"oktadev","description":"Starter Template for Ionic Apps with JHipster","archived":false,"fork":false,"pushed_at":"2022-01-18T19:27:09.000Z","size":589,"stargazers_count":27,"open_issues_count":2,"forks_count":18,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-03-25T11:11:35.250Z","etag":null,"topics":["ionic","ionic-starter","jhipster"],"latest_commit_sha":null,"homepage":"https://developer.okta.com/blog/2019/06/24/ionic-4-angular-spring-boot-jhipster","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/oktadev.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-13T00:19:06.000Z","updated_at":"2022-05-03T12:57:44.000Z","dependencies_parsed_at":"2022-08-27T16:31:51.851Z","dependency_job_id":null,"html_url":"https://github.com/oktadev/ionic-jhipster-starter","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/oktadev%2Fionic-jhipster-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oktadev%2Fionic-jhipster-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oktadev%2Fionic-jhipster-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oktadev%2Fionic-jhipster-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oktadev","download_url":"https://codeload.github.com/oktadev/ionic-jhipster-starter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248429079,"owners_count":21101782,"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":["ionic","ionic-starter","jhipster"],"created_at":"2024-11-14T17:16:44.422Z","updated_at":"2025-04-11T15:06:49.701Z","avatar_url":"https://github.com/oktadev.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# The Ionic JHipster Starter 🤓\n\n\u003e Because Ionic Apps need some JHipster 💙 too!\n\n\u003cdiv\u003e\n    \u003ca href=\"https://ionicframework.com\"\u003e\u003cimg src=\"src/assets/img/ionic-logo.png\" alt=\"Ionic\" width=\"250\"\u003e\u003c/a\u003e\n    \u003ca href=\"http://www.jhipster.tech\"\u003e\u003cimg src=\"src/assets/img/jhipster-logo.png\" alt=\"JHipster\" width=\"68\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n\nThe Ionic JHipster Starter is designed to be used with a JHipster backend. You can create a project with it directly, or use [Ionic for JHipster](https://github.com/oktadeveloper/generator-jhipster-ionic).\n\nThis project provides a base template of functionality for an Ionic app. The Ionic for JHipster module provides entity generation and additional features that require logic to install (e.g. OAuth authentication).\n\n[![Build Status][travis-image]][travis-url]\n\n## Table of Contents\n\n1. [Getting Started](#getting-started)\n2. [Pages](#pages)\n3. [Providers](#providers)\n4. [i18n](#i18n) (adding languages)\n5. [Testing](#testing)\n\n## Getting Started\n\nTo use this starter, install the latest version of the Ionic CLI and run:\n\n```bash\nionic start ionic4j oktadeveloper/jhipster --type angular\n```\n\nYou can also install it using the [Ionic for JHipster Module](https://github.com/oktadeveloper/generator-jhipster-ionic):\n\n```bash\nnpm install -g generator-jhipster-ionic @ionic/cli @angular/cli\nionic4j\n```\n\nThis module allows you to generate entities using:\n\n```bash\t\nionic4j entity \u003cname\u003e\t\n```\n\nOr by importing JDL:\n\n```bash\nionic4j import-jdl \u003cfile.jdl\u003e\n```\n\n**NOTE:** If you have any issues with the commands above, you can also use the `yo jhipster-ionic` equivalents.\n\n```bash\nyo jhipster-ionic # create an app\nyo jhipster-ionic:entity \u003cname\u003e\t\nyo jhipster-ionic:import-jdl \u003cfile.jdl\u003e\n```\n\n### Tips\n\nIn production, you will need to enable CORS in your backend's `src/main/resources/config/application-prod.yml` file. Set the allowed-origins so it works with `ionic serve`:\n         \n```yaml\ncors:\n    allowed-origins: \"http://localhost:8100\"\n```\n\n## Pages\n\nThe Ionic JHipster Starter comes with a variety of ready-made pages. \n\n## Services\n\nThe Ionic JHipster Starter comes with some basic implementations of common services.\n\n### User\n\nThe `User` service is used to authenticate users through its\n`login(accountInfo)` and `signup(accountInfo)` methods, which perform `POST`\nrequests to an API endpoint that you will need to configure.\n\n### Api\n\nThe `ApiService` is a simple CRUD frontend to an API.\n\n## i18n\n\nThe Ionic JHipster Starter comes with internationalization (i18n) out of the box with\n[ngx-translate](https://github.com/ngx-translate/core). This makes it easy to\nchange the text used in the app by modifying only one file. \n\n### Adding Languages\n\nTo add new languages, add new files to the `src/assets/i18n` directory,\nfollowing the pattern of LANGCODE.json where LANGCODE is the language/locale\ncode (ex: en/gb/de/es/etc.).\n\n## Testing\n\nThis starter borrows its testing infrastructure from Daniel Sogl's [Ionic Super Starter](https://github.com/danielsogl/ionic-super-starter). Thanks Daniel!\n\n### Usage\n\nThere are a number of scripts in `package.json` you can use to run tests:\n\n```json\n\"test\": \"jest\",\n\"test:watch\": \"jest --watch\",\n\"test:ci\": \"jest --runInBand\",\n\"test:coverage\": \"jest --coverage\",\n\"e2e\": \"ng e2e --port 8100\"\n```\n\n### Unit Tests\n\n[Jest](https://facebook.github.io/jest/) is used as the unit test runner in this project. Jest is a complete and easy to set-up JavaScript testing solution created by Facebook. Some of its benefits are:\n\n- Fast and sandboxed\n- Built-in code coverage reports\n- Zero configuration\n\n**NOTE:** If you'd like to convert your project so you can run `ng test` to run your tests, see [Angular CLI: \"ng test\" with Jest in 3 minutes](https://codeburst.io/angular-6-ng-test-with-jest-in-3-minutes-b1fe5ed3417c).\n\nTo run a unit test you have three options.\n\n1. Run `npm test` runs all your created unit-tests\n2. Run `npm run test:ci` if you want to run the unit-tests with you favorite CI\n3. To create a test-coverage report you can run `npm run test:coverage`\n\nDaniel created Ionic Mocks with Jest Support by forking the [ionic-mocks](https://github.com/stonelasley/ionic-mocks) ionic-mock repository. There are still some issues. Feel free to help him out with his [ionic-mocks-jest](https://github.com/danielsogl/ionic-mocks-jest) repository.\n\nIf you want to add ionic-native mocks you should definitely check out Chris Griffith's [ionic-native-mocks](https://github.com/chrisgriffith/ionic-native-mocks) repository\n\nSee the unit test example at [`src/app/app.component.spec.ts`](src/app/app.component.spec.ts).\n\n### E2E Tests\n\nThe E2E test configuration is from the official [ionic-unit-testing-example](https://github.com/ionic-team/ionic-unit-testing-example) repository. The e2e folder structure has been changed a bit.\n\n```\n/e2e\n  - pages\n  - spec\n```\n\nAdd your pages into the `/pages` folder and your tests into the `/spec` folder.\n\nSee the example end-to-end test in [`e2e/spec/app.e2e-spec.ts`](e2e/spec/app.e2e-spec.ts).\n\nTo run the e2e tests:\n\n```bash\nnpm run e2e\n```\n\nApache-2.0 © [Okta](https://developer.okta.com/)\n\n[travis-image]: https://travis-ci.org/oktadeveloper/ionic-jhipster-starter.svg?branch=master\n[travis-url]: https://travis-ci.org/oktadeveloper/ionic-jhipster-starter\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foktadev%2Fionic-jhipster-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foktadev%2Fionic-jhipster-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foktadev%2Fionic-jhipster-starter/lists"}