Thank you for your interest in contributing! We welcome improvements and bug fixes. Please follow the guidelines below to ensure a smooth collaboration.
The repository includes a test-install application which serves as the development environment and playground.
-
Clone the repository:
git clone https://github.com/luciferdiot/react-timeline-scheduler.git cd react-timeline-scheduler -
Install Dependencies: You need to install dependencies for both the library and the test application.
# Root (Library) npm install # Test Application cd test-install npm install
-
Start Development: Typically, you will want to run the library in watch mode or simply relying on the monorepo structure if configured.
To run the test playground:
cd test-install npm run devThis will start a Vite server at
http://localhost:5173. Any changes tosrc(the library) should be reflected here (you may need to rebuild or rely on Vite's HMR if configured for alias paths). -
Testing Updates:
- Visual Verification: Use the
Examplespage in thetest-installapp to visually verify your changes. - New Features: If adding a feature, please add a demonstrating example in
test-install/src/data/examples.tsxorExamples.tsx.
- Visual Verification: Use the
When you are ready to submit your changes:
-
Target Branch:
- All Pull Requests must be targeted to the
debugbranch. - Do NOT submit PRs directly to
main.
- All Pull Requests must be targeted to the
-
PR Description Requirements: Your Pull Request description MUST include an Ordered List of updates/changes.
Example Format:
## Updates 1. Fixed tooltip positioning bug using React Portals. 2. Added `theme.scrollbar` customization option. 3. Updated `Docs.tsx` with new API details. 4. Removed unused `App.tsx` from root.
-
Docs:
- If you change the API or add features, you must update
Docs.tsxand/orREADME.md.
- If you change the API or add features, you must update
- Ensure there are no ESLint errors.
- Remove any
console.logused for debugging. - Keep the repository structure clean.
Thank you for helping build a better scheduler!
Before submitting, please run through this checklist in the test-install environment:
- Component Renders: The Timeline loads without crashing.
- Tasks Visible: Task bars appear in the correct rows and dates.
- Interaction:
- Drag: Can resize tasks left and right?
- Move: (If enabled) Can move tasks?
- Click:
onTaskClickfires correctly?
- Styling:
- Theme: Check both Light and Dark modes.
- Responsive: Check on different screen sizes.
- Console: No errors or warnings in the browser console.