Welcome to integral-limit. This project is a React + TypeScript app powered by Vite and TailwindCSS. Use this guide to get set up, contribute changes, and keep the workflow consistent.
- Prereqs: Node 20+ or Bun 1.3+, git.
- Install deps:
bun install. - Run dev server:
bun run dev(Vite). - Lint:
bun run lint. - Build:
bun run build; preview:bun run preview.
If you're new to Git, here's a quick guide to committing changes:
- Check status: Run
git statusto see what files you've changed, added, or deleted. - Stage changes: Use
git add <filename>to stage specific files, orgit add .to stage all changes. - Commit: Run
git commit -m "Your message here"to save your changes with a descriptive message. - View history: Use
git logto see past commits.
Remember to commit often with clear messages. For this project, follow Conventional Commits (see below).
- Branch from
masterusingfeat/<topic>,fix/<issue>, orchore/<task>. - Use Conventional Commits (e.g.,
feat: add limit plot), keep scope small, and rebase before opening a PR.
- Create a new branch:
git checkout -b feat/add-new-feature(creates and switches to a new branch). - Switch branches:
git checkout <branch-name>(e.g.,git checkout masterto go back). - Push your branch: After committing, run
git push -u origin <branch-name>to upload it to GitHub. - Merge or rebase: Before PR, rebase on master:
git rebase master(or merge if preferred).
- Include purpose, screenshots of UI changes, and a short testing note.
- Ensure
bun run lintand relevant checks pass locally. - Keep PRs focused; prefer follow-ups over large mixed changes.
- Push your branch to GitHub (see above).
- Go to the repo on GitHub and click "Compare & pull request" (or "New pull request").
- Fill in details: Title (e.g., "feat: add limit plot"), description with what changed and why, link to issues if applicable.
- Add reviewers and labels if needed.
- Submit and wait for review. Address feedback by committing fixes to the same branch.
- TypeScript + React 19; prefer function components and hooks.
- TailwindCSS for styling; colocate component styles when practical.
- Run ESLint before pushing; avoid disabling rules without context.
- Add or update tests alongside features (testing stack TBD; note coverage in PRs).
- Manually verify user-facing flows touched by your change.
- Use
bun add <pkg>/bun remove <pkg>for dependencies. - Environment variables follow Vite conventions (
.env.localfor secrets,VITE_prefix for client exposure).
- Start with a short plan in the issue or PR description.
- Raise blockers early; document decisions in the PR thread for future contributors.