{"id":46374529,"url":"https://github.com/adityadeshlahre/websocket-quick-start","last_synced_at":"2026-03-05T04:37:25.016Z","repository":{"id":291310263,"uuid":"977236197","full_name":"adityadeshlahre/websocket-quick-start","owner":"adityadeshlahre","description":" personal starter kit with WebSocket initialized and deployed to Render","archived":false,"fork":false,"pushed_at":"2025-05-16T11:16:50.000Z","size":91,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-16T11:36:32.753Z","etag":null,"topics":["expressjs","nodejs","reactjs","starter-template","websocket"],"latest_commit_sha":null,"homepage":"https://websocket-quick-start-web.onrender.com","language":"TypeScript","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/adityadeshlahre.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}},"created_at":"2025-05-03T18:23:25.000Z","updated_at":"2025-05-16T11:16:53.000Z","dependencies_parsed_at":"2025-05-03T19:41:25.890Z","dependency_job_id":"35393a26-009b-4848-93aa-74494e437458","html_url":"https://github.com/adityadeshlahre/websocket-quick-start","commit_stats":null,"previous_names":["adityadeshlahre/websocket-quick-start"],"tags_count":0,"template":true,"template_full_name":"adityadeshlahre/quick-start","purl":"pkg:github/adityadeshlahre/websocket-quick-start","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adityadeshlahre%2Fwebsocket-quick-start","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adityadeshlahre%2Fwebsocket-quick-start/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adityadeshlahre%2Fwebsocket-quick-start/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adityadeshlahre%2Fwebsocket-quick-start/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adityadeshlahre","download_url":"https://codeload.github.com/adityadeshlahre/websocket-quick-start/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adityadeshlahre%2Fwebsocket-quick-start/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30110443,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-05T03:40:26.266Z","status":"ssl_error","status_checked_at":"2026-03-05T03:39:15.902Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["expressjs","nodejs","reactjs","starter-template","websocket"],"created_at":"2026-03-05T04:37:24.282Z","updated_at":"2026-03-05T04:37:25.001Z","avatar_url":"https://github.com/adityadeshlahre.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## websocket + quick ts starter\n\nThis is my personal prefered stack for for starting simple full stack projects in one go. Initalized with turborepo in furhter i have added all the stacks along the way.\n\n\u003e [!IMPORTANT]  \n\u003e This is using `pnpm` as package manager.\n\n\u003e [WebSocket:URL]\n\u003e wss://websocket-quick-start-ws.onrender.com\n\n### Tech Stack\n\n- [x] React JS (Vite as initializer)\n- [x] Node/Express Js\n- [x] TailwindCSS\n- [x] Recoil\n- [x] Axios\n- [x] Prisma\n- [x] Zod\n\n### Insider\n\n```\n\"apps/ws\" this ws(websocket) folder is initializes using npm and tsc [websocket server]\n```\n\n```\n\"apps/web\" this web(react app) folder is initializes using VITE [backedn]\n```\n\n```\n\"apps/server\" this server(node app) folder is initializes using VITE [frontend]\n```\n\n```\npackages{folder}\n    | ui{reusable frontend componenets}\n    | types{types to use in both frontend and backend}\n    | db{prisma schema is here and singaltion connection client is init}\n```\n\n### To-Do Lits\n\n- [x] ESLinting\n- [x] Lint Stage\n- [x] husky\n- [x] Docker\n- [x] CI (to build and push image also run in render)\n- [x] CommitLint\n- [x] centeralized ENV\n- [ ] nodeSever{node dist/index.js} need to fix\n- [ ] cleanup\n\n### Getting Started\n\n```bash\nbun create next-app -e \"https://github.com/adityadeshlahre/quick-start\" \u003cproject-name\u003e\n\nnpx create-next-app -e \"https://github.com/adityadeshlahre/quick-start\" \u003cproject-name\u003e\n```\n\n\u003cp align=\"center\" style=\"font-weight: bold;\"\u003eOR\u003c/p\u003e\n\n**Install `degit` globally**\n\n```bash\nbun i -g degit || pnpm i -g degit || yarn global add degit || npm i -g degit\n```\n\n**Create a new project from this template**\n\n```bash\ndegit adityadeshlahre/quick-start \u003cproject-name\u003e\n# using GH cli\ngh repo create \u003cproject-name\u003e --template \u003cadityadeshlahre\u003e/\u003cquick-start\u003e --public\n\ncd \u003cproject-name\u003e\n```\n\n**Install dependencies**\n\n```bash\nbun i || pnpm i || yarn || npm i\n```\n\n**Initialize a new git repository _(Optional)_:**\n\n```bash\ngit init\ngit add .\ngit commit --no-verify -m \"init\"\n```\n\n## After Installation Checklist\n\n- [ ] Update `package.json` with your project details.\n- [ ] Update `README.md` with your project details.\n- [ ] Update `LICENSE` with your name and year.\n\n### Docker Infos\n\n- [x] dev.docker-compose.yml (run this if you want to do development without and hustule in you localsetup)\n- [x] build.docker-compose.yml (this is just to build image and push to docker hub )\n- [x] prod.docker-compose.yml (this production build if you have vps JUST pull this tempelate from github and run this in your vps)\n- [x] docker-compose.yml (this is top level docker file which will build full application image [no use as of now])\n\n\u003e Don't know why i have created this much docker files\n\n### ENV's\n\n\u003e [!NOTE]  \n\u003e if you are deploying VPS or RENDER make sure set below variables\n\n\u003e - DATABASE_URL=\"\" //any postgress database\n\u003e - PORT=3000\n\u003e - UI_PORT=5173\n\u003e - SERVER_URL=\"\" //put your render server url\n\n### Top Level nginx file added\n\n- top level testing script\n\n#### Thank You\n\n\u003cdetails\u003e\n\n\u003csummary\u003eTurborepo starter\u003c/summary\u003e\n\n````markdown\nThis is an official starter Turborepo.\n\n## Using this example\n\nRun the following command:\n\n```sh\nnpx create-turbo@latest\n```\n\n## What's inside?\n\nThis Turborepo includes the following packages/apps:\n\n### Apps and Packages\n\n- `docs`: a [Next.js](https://nextjs.org/) app\n- `web`: another [Next.js](https://nextjs.org/) app\n- `@repo/ui`: a stub React component library shared by both `web` and `docs` applications\n- `@repo/eslint-config`: `eslint` configurations (includes `eslint-config-next` and `eslint-config-prettier`)\n- `@repo/typescript-config`: `tsconfig.json`s used throughout the monorepo\n\nEach package/app is 100% [TypeScript](https://www.typescriptlang.org/).\n\n### Utilities\n\nThis Turborepo has some additional tools already setup for you:\n\n- [TypeScript](https://www.typescriptlang.org/) for static type checking\n- [ESLint](https://eslint.org/) for code linting\n- [Prettier](https://prettier.io) for code formatting\n\n### Build\n\nTo build all apps and packages, run the following command:\n\n```\ncd my-turborepo\npnpm build\n```\n\n### Develop\n\nTo develop all apps and packages, run the following command:\n\n```\ncd my-turborepo\npnpm dev\n```\n\n### Remote Caching\n\nTurborepo can use a technique known as [Remote Caching](https://turbo.build/repo/docs/core-concepts/remote-caching) to share cache artifacts across machines, enabling you to share build caches with your team and CI/CD pipelines.\n\nBy default, Turborepo will cache locally. To enable Remote Caching you will need an account with Vercel. If you don't have an account you can [create one](https://vercel.com/signup), then enter the following commands:\n\n```\ncd my-turborepo\nnpx turbo login\n```\n\nThis will authenticate the Turborepo CLI with your [Vercel account](https://vercel.com/docs/concepts/personal-accounts/overview).\n\nNext, you can link your Turborepo to your Remote Cache by running the following command from the root of your Turborepo:\n\n```\nnpx turbo link\n```\n\n## Useful Links\n\nLearn more about the power of Turborepo:\n\n- [Tasks](https://turbo.build/repo/docs/core-concepts/monorepos/running-tasks)\n- [Caching](https://turbo.build/repo/docs/core-concepts/caching)\n- [Remote Caching](https://turbo.build/repo/docs/core-concepts/remote-caching)\n- [Filtering](https://turbo.build/repo/docs/core-concepts/monorepos/filtering)\n- [Configuration Options](https://turbo.build/repo/docs/reference/configuration)\n- [CLI Usage](https://turbo.build/repo/docs/reference/command-line-reference)\n````\n\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadityadeshlahre%2Fwebsocket-quick-start","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadityadeshlahre%2Fwebsocket-quick-start","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadityadeshlahre%2Fwebsocket-quick-start/lists"}