{"id":47098350,"url":"https://github.com/mlms13/ts-multipkg-starter","last_synced_at":"2026-03-12T14:56:32.796Z","repository":{"id":338747255,"uuid":"1158980791","full_name":"mlms13/ts-multipkg-starter","owner":"mlms13","description":"A simple starter template for multi-package TS/Node projects","archived":false,"fork":false,"pushed_at":"2026-02-16T07:15:06.000Z","size":52,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-16T14:37:26.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/mlms13.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-16T06:49:36.000Z","updated_at":"2026-02-16T07:15:07.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/mlms13/ts-multipkg-starter","commit_stats":null,"previous_names":["mlms13/ts-multipkg-starter"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/mlms13/ts-multipkg-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mlms13%2Fts-multipkg-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mlms13%2Fts-multipkg-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mlms13%2Fts-multipkg-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mlms13%2Fts-multipkg-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mlms13","download_url":"https://codeload.github.com/mlms13/ts-multipkg-starter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mlms13%2Fts-multipkg-starter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30429145,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-12T14:34:45.044Z","status":"ssl_error","status_checked_at":"2026-03-12T14:09:33.793Z","response_time":114,"last_error":"SSL_read: 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":"2026-03-12T14:56:32.131Z","updated_at":"2026-03-12T14:56:32.784Z","avatar_url":"https://github.com/mlms13.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TS Multi-Package Starter\n\nAn opinionated template for setting up new TypeScript projects. The goal is to use fast, modern tooling, opinionated, strict configurations, and to make it as easy as possible to get new monorepo-style projects up and running quickly.\n\nIn a world of LLM-generated code, we opt for strictness and correctness with automated enforcement of our rules.\n\n## Usage\n\nThis template makes some assumptions about project structure (e.g. it's currently specialized for client/server apps) and common libraries used (it assumes React for the client, vitest for testing, etc). When cloning this for a new project, you may wish to do the following:\n\n1. Clone this repo\n2. Edit `name`, `description`, and `author` in the root `package.json`\n3. Edit `globalName` in `packages/client/tsup.config.ts` if you publish an IIFE build—the default `\"Client\"` is generic and may collide with other scripts\n4. Edit `eslint.config.mjs` to customize paths to packages (currently expects `packages/server` and `packages/client`)\n  - The server gets Node globals\n  - The client gets browser globals and React Hooks rules.\n5. **Not Using React?** Update `jsx` option in `tsconfig.base.json` and hooks-specific rules in `eslint.config.mjs`\n6. **Not Using Vitest?** Update import order in `.prettierrc.cjs`\n7. **Not Using Fastify/Dotenv?** Update dependencies in `packages/server/package.json`\n8. Replace this README with your own content\n\n\n## Tooling and Opinions\n\n### TypeScript Config\n\n- strict settings related to soundness and correctness\n- `tsup` everywhere for building (both client and server)\n\n### Common Libraries\n\n- `vitest` configured to find all the right tests\n\n### Monorepo Tooling\n\n- Turborepo + config\n\n### Code Quality\n\n- `eslint` with most TS defaults, plus extra strictness\n- `prettier` with trailing commas, semicolons, and import sorting\n- Husky enforcing linting, formatting, tests, and build pre-commit\n\n### Script Conventions\n\n- Sub-packages own their own scripts, but each follows the same conventions\n- The root package exposes the same scripts, and it will run those scripts for each child package\n- When names are ambiguous, the default is \"check\" not \"write\"\n  - e.g. `npm run lint` will print lint errors, `npm run lint:fix` will attempt to rewrite files\n  - e.g. `npm run format` will print formatting errors, `npm run format:fix` will rewrite files\n  - e.g. `npm run audit` will print issues, `npm run audit:fix` or `npm run audit:fix-force` will make package updates\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmlms13%2Fts-multipkg-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmlms13%2Fts-multipkg-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmlms13%2Fts-multipkg-starter/lists"}