Add MIT license, CI workflow, and live demo link#1
Merged
Conversation
Adds a LICENSE file, a GitHub Actions workflow that builds the backend and lints/builds the frontend on push and PR, and links the live demo deployment in the README.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
- Fix typo in eslint.config.js (no-unused-var -> no-unused-vars) that
was crashing ESLint before it could even run.
- With ESLint working, fix the 22 real errors it surfaced:
- Reorder useCall.ts helpers to remove forward references, and
memoize getPeerConnection so the React Compiler can verify
acceptCall's memoization.
- Replace setState-in-effect patterns (CallTimer, ChatImage,
useChatSession, DashboardPage) with the React-recommended
"adjust state during render" pattern.
- Split SocketProvider.tsx into SocketProvider.tsx + SocketContext.ts
so the file only exports components (fixes fast-refresh lint) and
switch from a lazily-initialized ref to useState(() => ...) to
avoid reading a ref during render.
- Split Toast.tsx into Toast.tsx (trigger functions) +
ToastVariants.tsx (components) for the same fast-refresh reason.
- Move the emoji-picker anchor element into state, set via a ref
callback, instead of reading emojiBtnRef.current during render.
- Suppress react-hooks/refs on the two tanstack-virtual
measureElement ref assignments, which are the library's documented
API and not an unsafe ref read.
- Fix two unsafe non-null-assertions on optional chains.
- Supply build-time env vars in the CI workflow and add a missing
frontend/.env.example, since vite.config.ts validates required env
vars at build time and there was no example file for the frontend.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
LICENSEfile (MIT) — the repo previously had none, and the README explicitly noted this.github/workflows/ci.yml: builds the backend and lints + builds the frontend on push/PR tomainfrontend/eslint.config.js(no-unused-var→no-unused-vars) that was silently crashing ESLint before it could run at allSocketProvider/Toastto satisfy fast-refresh's one-component-per-file rule, and two unsafe non-null-assertions on optional chains. Two tanstack-virtualmeasureElementref assignments are suppressed with an explanatory comment rather than rewritten, since that's the library's documented API, not an unsafe ref read.frontend/.env.example, sincevite.config.tsvalidates required env vars at build time and exits if they're absentTest plan
npm run lintinfrontend/: 0 errors (13 pre-existing warnings, unchanged in scope)npm run buildinfrontend/with the same env vars as CI: builds successfullynpm ci && npm run build) already passes