{"id":18532327,"url":"https://github.com/triptyk/ember-boilerplate","last_synced_at":"2025-04-09T14:31:28.318Z","repository":{"id":99964237,"uuid":"301319254","full_name":"TRIPTYK/ember-boilerplate","owner":"TRIPTYK","description":"Pre-configured ember app for TRIPTYK. Ready for Polaris !","archived":false,"fork":false,"pushed_at":"2025-01-09T08:19:15.000Z","size":4615,"stargazers_count":8,"open_issues_count":1,"forks_count":1,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-03-24T07:56:57.678Z","etag":null,"topics":["boilerplate","ember","ember-changeset","ember-simple-auth","emberjs","embroider","msw","polaris","tailwindcss","typescript","vite"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TRIPTYK.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2020-10-05T06:57:45.000Z","updated_at":"2025-01-09T08:19:21.000Z","dependencies_parsed_at":"2023-10-14T20:25:23.922Z","dependency_job_id":"e91c5b92-ae04-4754-94f1-4e9f86b22c6a","html_url":"https://github.com/TRIPTYK/ember-boilerplate","commit_stats":{"total_commits":261,"total_committers":6,"mean_commits":43.5,"dds":"0.11877394636015326","last_synced_commit":"61646a4466e5af9b3a4de64aa63daa7484e591c4"},"previous_names":[],"tags_count":1,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TRIPTYK%2Fember-boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TRIPTYK%2Fember-boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TRIPTYK%2Fember-boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TRIPTYK%2Fember-boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TRIPTYK","download_url":"https://codeload.github.com/TRIPTYK/ember-boilerplate/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248055112,"owners_count":21040122,"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":["boilerplate","ember","ember-changeset","ember-simple-auth","emberjs","embroider","msw","polaris","tailwindcss","typescript","vite"],"created_at":"2024-11-06T19:05:45.210Z","updated_at":"2025-04-09T14:31:26.924Z","avatar_url":"https://github.com/TRIPTYK.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ember-boilerplate\n\n[![Tests](https://github.com/TRIPTYK/ember-boilerplate/actions/workflows/ci.yml/badge.svg)](https://github.com/TRIPTYK/ember-boilerplate/actions/workflows/ci.yml)\n\n\u003cp\u003e\n  \u003ca href=\"https://emberjs.com\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n    \u003cimg width=\"180\" src=\"https://emberjs.com/images/brand/ember-tomster-lockup-4c.svg\" alt=\"Ember logo\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://triptyk.eu\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n    \u003cimg width=\"160\" src=\"https://triptyk.eu/assets/images/tpk-square-logo.svg\" alt=\"TRIPTYK logo\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## Preconfigured 5.x Ember project with\n\n- Embroider\n- Typescript integration (ember-cli-typescript)\n- Validations (ember-immer-changeset + yup)\n- Tailwindcss 3.x, with primary and secondary colors configured\n- Flash messages (ember-cli-flash)\n- Tests (ember-test-selectors, ember-cli-page-object)\n- Sessions,Login,Logout,... (ember-simple-auth,ember-simple-auth-token)\n- Ember data next gen (RequestManager based)\n- Ember concurrency\n- Test seeding \u0026 parallelization (ember-exam)\n- dev \u0026 test mocking (msw)\n- Translations (ember-intl)\n- Authorizations (ember-can)\n- Pre-made registration flow (login/register/forgot-password)\n\n## VSCODE IDE\n\n- VSCODE Ready, all rules are setup for a great developing experience.\n\n## Additional Tooling\n\n- With-backend: `with-backend.js` Starts the ember app with a backend synchronously.\n- Husky: checks linting + code duplication + integration \u0026 unit tests before commiting to VSC.\n\n## Docker\n\n- A docker image can be found in `images`.\n\n## CI\n\nA github workflow CI is provided.\n\n## Approach\n\n### Controllers\n\n- We have the rule 'ember/no-controllers' activated, so usage of controllers other than for query params is prohibited. Instead, you must create a component in 'pages'. Each component should accept a @model.\n\nNote: Exception for the ApplicationController, needed for an addon.\n\n### Translations\n\nTranslations are located: `translations/`\n\n- Each component must have his translation file\n- A global translation file can be created\n- YAML files keys in snake_case\n\n### Changesets \u0026 Validations\n\nChangesets are located: `app/changesets/`\nChangesets services are located: `app/services/changesets`\nValidations are located: `app/validations/`\n\n- Each changeset has it's own file and it's own class.\n- All changesets comes from `ember-immer-changeset`. It provides full type-checking of changesets.\n- A changeset can have a service associated that persists the data of a changeset to an endpoint.\n\n### Authorizations\n\nAuthorizations are located: `app/abilities/`.\n\n### Components\n\nComponents are located: `app/components/`.\n\n- Pod structure.\n\n### API Mocking\n\nDevelopment mocks are in `app/handlers`.\nTesting mocks are split in the `tests` folders.\n\n## Installation\n\n- `git clone git@github.com:TRIPTYK/ember-boilerplate.git` this repository\n- `cd ember-boilerplate`\n- `rm -rf .git`\n- `git init`\n- `pnpm install`\n\n## Running / Development\n\n- `pnpm start`\n- Visit your app at [http://localhost:4200](http://localhost:4200).\n\n### Running Tests\n\n- `pnpm test`\n\n### Linting\n\n- `pnpm lint`\n- `pnpm lint:fix`\n\n### Building\n\n- `pnpm build --mode=dev` (development)\n- `pnpm build` (production)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftriptyk%2Fember-boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftriptyk%2Fember-boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftriptyk%2Fember-boilerplate/lists"}