{"id":30584160,"url":"https://github.com/MarkusThielker/next-ory","last_synced_at":"2025-08-29T09:03:10.258Z","repository":{"id":237833651,"uuid":"795323632","full_name":"MarkusThielker/next-ory","owner":"MarkusThielker","description":"☄️ An easy-to-use starting point to self-host Ory Kratos with Ory Hydra and Ory Keto, Next.js authentication UI and admin dashboard (work in progress) styled with TailwindCSS and shadcn/ui","archived":false,"fork":false,"pushed_at":"2025-04-05T13:19:37.000Z","size":10324,"stargazers_count":41,"open_issues_count":4,"forks_count":8,"subscribers_count":4,"default_branch":"development","last_synced_at":"2025-08-19T09:35:27.982Z","etag":null,"topics":["docker","nextjs","ory","ory-hydra","ory-kratos","react","tailwindcss","typescript"],"latest_commit_sha":null,"homepage":"https://codeberg.org/markusthielker/next-ory","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/MarkusThielker.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":"2024-05-03T03:11:39.000Z","updated_at":"2025-08-12T12:54:45.000Z","dependencies_parsed_at":"2025-02-08T23:33:01.714Z","dependency_job_id":null,"html_url":"https://github.com/MarkusThielker/next-ory","commit_stats":null,"previous_names":["markusthielker/next-ory"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/MarkusThielker/next-ory","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkusThielker%2Fnext-ory","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkusThielker%2Fnext-ory/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkusThielker%2Fnext-ory/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkusThielker%2Fnext-ory/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MarkusThielker","download_url":"https://codeload.github.com/MarkusThielker/next-ory/tar.gz/refs/heads/development","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarkusThielker%2Fnext-ory/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272658784,"owners_count":24971604,"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","status":"online","status_checked_at":"2025-08-29T02:00:10.610Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["docker","nextjs","ory","ory-hydra","ory-kratos","react","tailwindcss","typescript"],"created_at":"2025-08-29T09:03:05.763Z","updated_at":"2025-08-29T09:03:10.219Z","avatar_url":"https://github.com/MarkusThielker.png","language":"TypeScript","funding_links":[],"categories":["Boilerplates \u0026 Starters"],"sub_categories":[],"readme":"\u003e [!Important]  \n\u003e The development of this project has moved to [Codeberg](https://codeberg.org/markusthielker/next-ory), a german non-profit GitHub alternative. \u003cbr/\u003e\n\u003e This repository does not represent the current state of development. It might still get updates at major releases.\n\n\u003cbr/\u003e\u003cbr/\u003e\u003cbr/\u003e\u003cbr/\u003e\u003cbr/\u003e\u003cbr/\u003e\n\n---\n\n# Next-Ory\n\nGet started with the Ory stack quickly and easily.\n\n\u003e [!Warning]  \n\u003e This project is work in progress. There is no guarantee that everything will work as it should and breaking changes in\n\u003e the future are possible.\n\nThe goal of this project is to create an easy-to-use setup to self-host the [Ory](https://www.ory.sh) stack with all its\ncomponents. It will contain an authentication UI, implementing all self-service flows for Ory Kratos and Ory Hydra, as\nwell as an admin UI. All UI components are written in NextJS and Typescript, and styled using shadcn/ui and TailwindCSS.\n\n## Getting started\n\nStart the backend services using Docker Compose:\n\n```bash\ncp /docker/ory-dev/.env.example /docker/ory-dev/.env\ndocker compose -f docker/ory-dev/docker-compose.yaml up -d\n\n# optional to test consent flow\nsh docker/ory-dev/hydra-test-consent.sh\n```\n\nThen start the authentication UI:\n\n```bash\ncd authentication\ncp .env.example .env\nbun install\nbun run dev\n```\n\nCreate an account using the authentication UI on http://localhost:3000.\nThe verification code can be found on the dummy SMTP dashboard on http://localhost:4436.\n\nInside another terminal session we can start the dashboard UI:\n\n```bash\ncd dashboard\ncp .env.example .env\nbun install\nbun run dev\n```\n\nTo access the admin dashboard, the `identity` has to be a `member` of the `admin` role. (Relation: roles:admin@\u003c\nidentity_id\u003e#member) \u003cbr/\u003e\nThe identity ID is displayed on the screen when accessing the dashboard without sufficient permissions. \u003cbr/\u003e\nUse the identity ID to execute the following script with the identity ID as an argument.\n\n```bash\nsh docker/ory-dev/keto-make-admin.sh \u003cidentity_id\u003e\n```\n\n## Deployment\n\n*soon.*\n\n## Authentication UI\n\nThe authentication UI is already implemented and working. It supports all self-service flows for Ory Kratos and Ory\nHydra. It is implemented in a way, that customizing style and page layout is very easy.\n\n![A browser window showing the login page of the authentication UI in dark mode](./documentation/.img/a-login-dark.png)\n\n![A browser window showing the registration page of the authentication UI in light mode](./documentation/.img/a-registration-light.png)\n\n![A browser window showing the profile settings page of the authentication UI in dark mode](./documentation/.img/a-settings-dark.png)\n\n## Admin Dashboard\n\nRight now I am working on the admin dashboard for all Ory applications. It will provide you with an overview of your\ninstances and let you manage users, OAuth2 applications and more. It is ***work in progress*** and should be handled\nwith caution.\n\n![A browser window showing the home page of the dashboard UI in dark mode](./documentation/.img/d-dashboard-dark.png)\n\n![A browser window showing the users page of the dashboard UI in dark mode](./documentation/.img/d-users-dark.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMarkusThielker%2Fnext-ory","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMarkusThielker%2Fnext-ory","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMarkusThielker%2Fnext-ory/lists"}