{"id":20039057,"url":"https://github.com/defra/rpa-mit-web","last_synced_at":"2026-03-01T10:32:41.426Z","repository":{"id":179135234,"uuid":"660272098","full_name":"DEFRA/rpa-mit-web","owner":"DEFRA","description":null,"archived":false,"fork":false,"pushed_at":"2024-04-29T15:21:55.000Z","size":1215,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-02-22T11:32:10.001Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DEFRA.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":"2023-06-29T16:14:22.000Z","updated_at":"2024-04-29T15:22:03.000Z","dependencies_parsed_at":"2023-10-02T19:45:43.385Z","dependency_job_id":"1f8ccdb1-c912-4dd6-b623-75b659789bea","html_url":"https://github.com/DEFRA/rpa-mit-web","commit_stats":null,"previous_names":["defra/est-mit-web","defra/rpa-mit-web"],"tags_count":32,"template":false,"template_full_name":null,"purl":"pkg:github/DEFRA/rpa-mit-web","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEFRA%2Frpa-mit-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEFRA%2Frpa-mit-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEFRA%2Frpa-mit-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEFRA%2Frpa-mit-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DEFRA","download_url":"https://codeload.github.com/DEFRA/rpa-mit-web/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEFRA%2Frpa-mit-web/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29966826,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T09:33:09.965Z","status":"ssl_error","status_checked_at":"2026-03-01T09:25:48.915Z","response_time":124,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2024-11-13T10:35:12.131Z","updated_at":"2026-03-01T10:32:41.410Z","avatar_url":"https://github.com/DEFRA.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Web\r\n\r\nThis repository hosts the frontend for the manual invoice service, designed as a web application. It includes various interactive web pages, API integrations, and services necessary for the invoicing process. Key functionalities involve creating and managing invoices, uploading bulk data, and handling payment requests.\r\n\r\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=rpa-mit-web\u0026metric=alert_status)](https://sonarcloud.io/summary/new_code?id=rpa-mit-web) [![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=rpa-mit-web\u0026metric=code_smells)](https://sonarcloud.io/summary/new_code?id=rpa-mit-web) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=rpa-mit-web\u0026metric=coverage)](https://sonarcloud.io/summary/new_code?id=rpa-mit-web) [![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=rpa-mit-web\u0026metric=ncloc)](https://sonarcloud.io/summary/new_code?id=rpa-mit-web)\r\n## Requirements\r\n\r\nAmend as needed for your distribution, this assumes you are using windows with WSL.\r\n\r\n- \u003cdetails\u003e\r\n    \u003csummary\u003e .NET 6 SDK \u003c/summary\u003e\r\n    \r\n    #### Basic instructions for installing the .NET 6 SDK on a debian based system.\r\n  \r\n    Amend as needed for your distribution.\r\n\r\n    ```bash\r\n    wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb\r\n    sudo dpkg -i packages-microsoft-prod.deb\r\n    sudo apt-get update \u0026\u0026 sudo apt-get install -y dotnet-sdk-6.0\r\n    ```\r\n\u003c/details\u003e\r\n\r\n- [Docker](https://docs.docker.com/desktop/install/linux-install/)\r\n- Azure AD Credentials\r\n- Azure Service Bus\r\n---\r\n## Local Setup\r\n\r\nTo run this service locally complete the following steps.\r\n\r\n### Set up user secrets\r\n\r\nUse the secrets-template to create a secrets.json in the same location.\r\n\r\nSetting this key allows you to use local emulation for functions such as blob storage.\r\n\r\n```json \r\n{\r\n\t\"PrimaryConnection\": \"UseDevelopmentStorage=true\"\r\n}\r\n```\r\n\r\nOnce this is done run the following command to add the projects user secrets\r\n\r\n```bash\r\ncat secrets.json | dotnet user-secrets set\r\n```\r\n\r\nThese values can also be created as environment variables or as a development app settings file, but the preferred method is via user secrets.\r\n\r\n## Create emulated storage\r\n\r\nYou need to create a local emulation of azure blob storage, this can be done using [azurite](https://github.com/Azure/Azurite).\r\n\r\nIn your console run the following commands.\r\n\r\n```bash\r\ndocker pull mcr.microsoft.com/azure-storage/azurite\r\n```\r\n\r\n```bash\r\ndocker run --name azurite -p 10000:10000 -p 10001:10001 -p 10002:10002 mcr.microsoft.com/azure-storage/azurite\r\n```\r\n\r\nYou can view the emulated storage using a tool such as [Azure Storage Explorer](https://github.com/microsoft/AzureStorageExplorer).\r\n\r\n## Start the application\r\n\r\n```bash\r\ncd EST.MIT.Web\r\n```\r\n\r\n```bash\r\ndotnet run\r\n```\r\n\r\n---\r\n## Running in Docker\r\n\r\nIt is also possible to standup the whole MIT service in docker by following these steps.\r\n### Import Certificate\r\n\r\nAdd your windows certificate to the local repo to allow the docker network to communicate with the local machine.\r\n\r\n**NOTE** This command should be ran in a windows terminal as we need the windows cert.\r\n```pwsh\r\ndotnet dev-certs https -ep mit.pfx -p [password]\r\n```\r\n\r\n### Set up environment variables\r\n\r\nCreate a .env file from the env-template in the root of the repo containing all the necessary environment variables.\r\n\r\n### Build and run the container\r\n\r\nCreate the container with docker compose\r\n```bash\r\ndocker-compose -f ./docker-compose-mit.yaml build\r\n```\r\n\r\nStart the container\r\n```bash\r\ndocker-compose -f ./docker-compose-mit.yaml up\r\n```\r\n\r\n**NOTE** You may need manually create the reference data and invoice db's in postgres and restart the container.\r\n\r\n### Accessing the service\r\n\r\nWhen the container is running you can access the service at on localhost port 8081.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdefra%2Frpa-mit-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdefra%2Frpa-mit-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdefra%2Frpa-mit-web/lists"}