{"id":22727584,"url":"https://github.com/pagopa/io-messages","last_synced_at":"2026-04-20T11:06:07.494Z","repository":{"id":242717454,"uuid":"810362103","full_name":"pagopa/io-messages","owner":"pagopa","description":"This is a monorepo that contains all the backend microservices and functionalities related to messaging in IO.","archived":false,"fork":false,"pushed_at":"2026-03-27T15:46:57.000Z","size":11620,"stargazers_count":0,"open_issues_count":11,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-27T19:57:58.678Z","etag":null,"topics":["backend","comunicazione","io","iocom","messages"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":false,"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/pagopa.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":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2024-06-04T14:45:12.000Z","updated_at":"2026-03-26T12:35:26.000Z","dependencies_parsed_at":"2026-01-20T07:22:43.000Z","dependency_job_id":null,"html_url":"https://github.com/pagopa/io-messages","commit_stats":null,"previous_names":["pagopa/io-messages"],"tags_count":155,"template":false,"template_full_name":null,"purl":"pkg:github/pagopa/io-messages","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pagopa%2Fio-messages","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pagopa%2Fio-messages/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pagopa%2Fio-messages/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pagopa%2Fio-messages/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pagopa","download_url":"https://codeload.github.com/pagopa/io-messages/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pagopa%2Fio-messages/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31314782,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"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":["backend","comunicazione","io","iocom","messages"],"created_at":"2024-12-10T17:12:52.406Z","updated_at":"2026-04-02T20:01:06.859Z","avatar_url":"https://github.com/pagopa.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# io-messages\n\n## Setup\n\n### Using Devcontainer\n\nThe preferred way to setup your development environment is to use [Devcontainer](https://containers.dev) ([Host system requirements](https://code.visualstudio.com/docs/devcontainers/containers#_system-requirements)).\n\n\u003e [!TIP]\n\u003e If you are on macOS we recommend using [Rancher Desktop](https://rancherdesktop.io/) configured to use `VZ` as _Virtual Machine Type_ and `virtiofs` as volume _Mount Type_.\n\n#### Visual Studio Code\n\n1. Make sure `docker` is available and running in your host system\n2. Install the [Devcontainer Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers)\n3. Open the project root folder and select `Dev Containers: Reopen in Container` from the command palette\n4. Visual Studio Code will build the devcontainer image and then open the project inside the container, with all the needed tools and extension configured\n\n#### Console\n\nIf you use a code editor that doesn't support Dev Container, you can still run it in your terminal.\n\n1. Follow the instruction of the following chapter (\"Using local machine\") to setup your local environment\n2. Run devcontainer from your terminal\n\n   ```bash\n   pnpm exec devcontainer up --workspace-folder .\n   pnpm exec devcontainer exec -- workspace-folder . /bin/bash\n   ```\n\n### Using local machine\n\nThis project use specific versions of `node`, `pnpm` and `terraform`. To make sure your development setup matches with production follow the recommended installation methods.\n\n1. Install and configure the follow tool in your machine\n\n   - [nodenv](https://github.com/nodenv/nodenv) - Node version manager\n   - [tfenv](https://github.com/tfutils/tfenv) - Terraform version manager\n   - [terraform-docs](https://terraform-docs.io/user-guide/installation/) - Generate Terraform modules documentation in various formats\n   - [tflint](https://github.com/terraform-linters/tflint) - A Pluggable Terraform Linter\n   - [pre-commit](https://pre-commit.com/) - A framework for managing and maintaining multi-language pre-commit hooks\n\n2. Install `node` at the right version used by this project\n\n   ```bash\n    cd path/to/io-messages\n    nodenv install\n   ```\n\n3. Install `pnpm` using [corepack](https://nodejs.org/api/corepack.html) (Node Package Manager version manager, it is distributed with `node`). This step will also install all the required dependencies\n\n   ```bash\n   corepack enable\n   pnpm\n   ```\n\n4. Build all the workspaces contained by this repo\n\n   ```bash\n   pnpm build\n   ```\n\n## Release management\n\nWe use [changesets](https://github.com/changesets/changesets) to automate package versioning and releases.\n\nEach Pull Request that includes changes that require a version bump must include a _changeset file_ that describes the introduced changes.\n\nTo create a _changeset file_ run the following command and follow the instructions.\n\n```bash\npnpm changeset\n```\n\n## Useful commands\n\nThis project uses `pnpm` and `turbo` with workspaces to manage projects and dependencies. Here is a list of useful commands to work in this repo.\n\n### Work with workspaces\n\n```bash\n# build all the workspaces using turbo\npnpm build\n# or\npnpm turbo build\n\n# to execute COMMAND on WORKSPACE_NAME\npnpm --filter WORKSPACE_NAME run command\n# to execute COMMAD on all workspaces\npnpm -r run command\n\n# run unit tests on citizen-func\npnpm --filter citizen-func run test\n# or (with turbo)\npnpm turbo test -- citizen-func\n\n# run the typecheck script on all workspaces\npnpm workspaces foreach run typecheck\n```\n\n### Add dependencies\n\n```bash\n# add a dependency to the workspace root\npnpm add turbo\n\n# add vitest as devDependency on citizen-func\npnpm --filter citizen-func add -D vitest\n\n# add zod as dependency on each workspace\npnpm -r add zod\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpagopa%2Fio-messages","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpagopa%2Fio-messages","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpagopa%2Fio-messages/lists"}