{"id":21365022,"url":"https://github.com/altinn/altinn-notifications-email","last_synced_at":"2025-03-16T07:40:23.579Z","repository":{"id":164410470,"uuid":"637781837","full_name":"Altinn/altinn-notifications-email","owner":"Altinn","description":"Microservice for sending email","archived":false,"fork":false,"pushed_at":"2025-03-06T12:45:12.000Z","size":187,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":18,"default_branch":"main","last_synced_at":"2025-03-06T13:39:47.228Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","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/Altinn.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-08T11:54:01.000Z","updated_at":"2025-03-06T12:45:15.000Z","dependencies_parsed_at":"2024-04-04T15:27:09.956Z","dependency_job_id":"d503952c-0d17-4fe4-94ba-17409417ad5f","html_url":"https://github.com/Altinn/altinn-notifications-email","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/Altinn%2Faltinn-notifications-email","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Altinn%2Faltinn-notifications-email/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Altinn%2Faltinn-notifications-email/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Altinn%2Faltinn-notifications-email/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Altinn","download_url":"https://codeload.github.com/Altinn/altinn-notifications-email/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243841203,"owners_count":20356441,"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-11-22T07:09:04.139Z","updated_at":"2025-03-16T07:40:23.559Z","avatar_url":"https://github.com/Altinn.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# altinn-notifications-email\n\nThis component handles the functionality related to sending an email through Altinn Notifications.\n\n## Project organization\nThis is a backend WebAPI solution written in .NET / C# following the clean architecture principles.\nThe solution is into three projects, each with their associated test project.\n\n### Altinn.Notifications.Email\nThe API layer that consumes services provided by _Altinn.Notifications.Email.Core_\n\nRelevant implementations:\n- Program.cs\n- Kafka consumer implementation\n\n### Altinn.Notifications.Email.Core\nThe domain and application layer that implements the business logic of the system.\n\nRelevant implementations:\n- Interfaces for external dependencies implemented by infrastructure layer\n- Domain models\n- Services for handling sending of e-mails\n\n\n### Altinn.Notifications.Email.Integrations\nThe infrastructure layer that implements the interfaces defined in _Altinn.Notifications.Email.Core_ for integrations towards 3rd-party libraries and systems.\n\nRelevant implementations:\n- Client for integrating with e-mail service\n- Kafka producer implementation\n\n## Getting started\n\n1. [.NET 9.0 SDK](https://dotnet.microsoft.com/download/dotnet/9.0)\n2. Newest [Git](https://git-scm.com/downloads)\n3. A code editor - we like [Visual Studio Code](https://code.visualstudio.com/download)\n   - Also install [recommended extensions](https://code.visualstudio.com/docs/editor/extension-marketplace#_workspace-recommended-extensions) (e.g. [C#](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp))\n4. [Podman](https://podman.io/) or another container tool such as Docker Desktop\n\n### Cloning the application\n\nClone [Altinn Notifications Email repo](https://github.com/Altinn/altinn-notifications-email) and navigate to the folder.\n\n```bash\ngit clone https://github.com/Altinn/altinn-notifications-email\ncd altinn-notifications-email\n```\n\n### Setting up Kafka broker and visualization\n\nEnsure that Docker and Podman are installed and is running.\n\nIn a terminal navigate to the root of this repository\nand run command `podman compose -f setup-kafka.yml up -d`\n\nKafdrop is now available at http://localhost:9000.\n\n### Set up Azure Communication Services\n\nIf you need working end to end functionality when working on\nNotifications Email Azure Communication Services (ACS) needs to be set up.\n\nSet up a service in your personal Azure account or use an existing service in a test environment.\nFind the connection string in the Azure Portal under _Settings_ -\u003e _Keys_ and add this to the configuration values.\n\nWe recommend settings it up as a user secret with the commands below.\n\n```\ncd src Altinn.Notifications.Email\ndotnet user-secrets init\ndotnet user-secrets set \"CommunicationServicesSettings:ConnectionString\" \"insert-connection-string\"\n```\n\n### Running the application with .NET\n\nThe Notifications Email component can be run locally when developing/debugging. Follow the install steps above if this has not already been done.\n\n- Navigate to _src/Altinn.Notifications.Email_, and build and run the code from there, or run the solution using you selected code editor\n\n  ```cmd\n  cd src/Altinn.Notifications.Email\n  dotnet run\n  ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faltinn%2Faltinn-notifications-email","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faltinn%2Faltinn-notifications-email","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faltinn%2Faltinn-notifications-email/lists"}