{"id":16658357,"url":"https://github.com/mondo-mob/mondokit","last_synced_at":"2025-10-10T12:15:27.162Z","repository":{"id":180939555,"uuid":"665764601","full_name":"mondo-mob/mondokit","owner":"mondo-mob","description":"Simplify building NodeJS applications on cloud platforms","archived":false,"fork":false,"pushed_at":"2023-12-18T06:19:46.000Z","size":5044,"stargazers_count":10,"open_issues_count":1,"forks_count":0,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-03-29T06:35:32.293Z","etag":null,"topics":["bigquery","cloud","cloud-storage","cloud-tasks","database-migrations","datastore","datastore-backups","express","firebase-auth","firestore","firestore-database","firestore-database-backup","firestore-migrations","gcp","gcs","google-cloud","google-cloud-platform","google-cloud-tasks"],"latest_commit_sha":null,"homepage":"https://mondokit.dev/","language":"TypeScript","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/mondo-mob.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-07-13T00:41:04.000Z","updated_at":"2024-01-14T23:06:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"a63f49d4-f90e-413c-934e-737747c4b6b4","html_url":"https://github.com/mondo-mob/mondokit","commit_stats":null,"previous_names":["mondo-mob/mondokit"],"tags_count":524,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mondo-mob%2Fmondokit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mondo-mob%2Fmondokit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mondo-mob%2Fmondokit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mondo-mob%2Fmondokit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mondo-mob","download_url":"https://codeload.github.com/mondo-mob/mondokit/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247951530,"owners_count":21023737,"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":["bigquery","cloud","cloud-storage","cloud-tasks","database-migrations","datastore","datastore-backups","express","firebase-auth","firestore","firestore-database","firestore-database-backup","firestore-migrations","gcp","gcs","google-cloud","google-cloud-platform","google-cloud-tasks"],"created_at":"2024-10-12T10:05:19.230Z","updated_at":"2025-10-10T12:15:22.135Z","avatar_url":"https://github.com/mondo-mob.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MondoKit\n\nA helpful toolkit to simplify building NodeJS applications on the cloud. The most mature set of libraries is currently focussed on Google Cloud Platform (GCP).\n\nBuilt for ESM only.\n\n[Official documentation](https://mondokit.dev)\n\n## Package documentation\n\n- [gcp-core](https://mondokit.dev/packages/gcp-core.html)\n- [gcp-firestore](https://mondokit.dev/packages/gcp-firestore.html)\n- [gcp-firestore-backups](https://mondokit.dev/packages/gcp-firestore-backups.html)\n- [gcp-firestore-migrations](https://mondokit.dev/packages/gcp-migrations.html) \n- [gcp-datastore](https://mondokit.dev/packages/gcp-datastore.html)\n- [gcp-datastore-backups](https://mondokit.dev/packages/gcp-datastore-backups.html)\n- [gcp-storage](https://mondokit.dev/packages/gcp-storage.html)\n- [gcp-tasks](https://mondokit.dev/packages/gcp-tasks.html)\n- [gcp-bigquery](https://mondokit.dev/packages/gcp-bigquery.html)\n- [gcp-google-auth](https://mondokit.dev/packages/gcp-google-auth.html)\n- [gcp-firebase-auth](https://mondokit.dev/packages/gcp-firebase-auth.html)\n\n## History\n\nThese libraries have most recently evolved from [GAE JS](https://github.com/mondo-mob/gae-js), authored by the same team. They have been re-branded,\ngiven they are not just useful for Google App Engine, updated for ESM, and cleaned up with deprecations removed.\n\n\n## Contributing\n\nThis is a mono-repo using npm workspaces.\nPublishing is done using Atlassian Changesets (https://github.com/changesets/changesets).\nThis helps be consistent with versioning and auto-generates changelogs.\n\nHere's the basic flow:\n\n1. Create one or more changesets\n\n- Once you've made your changes, create a changeset. You can create more than one changeset for a single version.\n\n```\nnpx changeset\n```\n\n- From the cli tool, choose which packages to update and if major/minor/patch update\n- Enter summary for changes\n- Review and commit files\n\n2. Update package versions\n\n- Based on the changeset configuration - this will automatically version the packages.\n\n```\nnpx changeset version\n```\n\n- Commit changes\n\n3. Build and publish\n\nWould be nice if this was done from CI but for now we do this locally.\n\n- Check you're running a suitable version of node/npm. If not switch and clear out old node_modules.\n- Build and publish\n\n```\nnpm run publish-libs\n```\n\n### Adding new packages\n\nThere's nothing automated to do this. Essentially you just need to add a new package to `/packages` folder but\nthese steps should save some time:\n\n- Create new folder in `/packages`. e.g. `/packages/gcp-new-thing`, `/packages/aws-new-thing`, `/packages/azure-new-thing`\n- Copy `package.json`, `tsconfig.json`, `tsconfig.prod.json`, `jest.config.json` from one of the existing packages\n- Update `package.json` to match desired name, version, dependencies, etc\n- Update `tsconfig.json` to match desired project references.\n- Create file `src/index.ts` and export some constant\n- Run `npm install` from root folder\n- Run `npm run build` from project folder\n\n\n### Merging fixes from gae-js\nFeel free to change:\n - the name of your local branch in the first step\n - the name of the branch you are merging from in `gae-js` in the last step\n\n```shell\ngit checkout -b feature/gae-js-merge\ngit remote add gae-js https://github.com/mondo-mob/gae-js.git\ngit remote update\ngit merge gae-js/main\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmondo-mob%2Fmondokit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmondo-mob%2Fmondokit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmondo-mob%2Fmondokit/lists"}