A lightweight, production-ready pattern for binding Express.js server data to a Syncfusion React Grid. The sample supports complete CRUD (Create, Read, Update, Delete), server-side filtering, searching, sorting, and paging using Syncfusion DataManager.
- Express.js Server ↔ SQL Server: Robust TypeScript backend with type-safe database operations
- Syncfusion React Grid: Built-in search, filter, sort, and paging capabilities
- Complete CRUD Operations: Add, edit, delete, and update records directly from the grid
-
Node.js: LTS version (v20.x or later)
-
npm/yarn: For package management.
-
React: For creating and serving the React client application
-
Clone the repository
git clone <repository-url> cd syncfusion-react-grid-with-expressjs-server
-
Run the application
Run the Express.js server
cd server
npm install
npm startRun the React client
cd client
npm install
npm run dev-
Open the application
The server runs at http://localhost:3000 Navigate to the React application in your browser (typically
http://localhost:5173).
Security Note: For production environments, store sensitive credentials using:
-
Environment variables
-
Secure storage solutions (e.g., Azure Key Vault, AWS Secrets Manager)
| File/Folder | Purpose |
|---|---|
server/src/routes/patients.routes.ts |
Server-side route handling grid data operations |
server/src/controllers/patients.controller.ts |
Controller logic for CRUD operations |
server/src/utils/data.ts |
Entity model containing the data |
server/src/types/interface.ts |
TypeScript interfaces and types |
client/src/components/PatientsGrid.tsx |
Contains the Grid configuration and component |
- Click the Add button in the toolbar
- Fill in the form fields
- Click Update button in the toolbar to save the record.
- Select a row in the grid
- Click the Edit button in the toolbar
- Modify the required fields
- Click Update to save changes
- Select a row in the grid
- Click the Delete button in the toolbar
- Confirm the deletion
- Use the Search box in the toolbar
- Enter keywords to filter records (searches across all columns)
- Click the filter icon in any column header
- Select filter criteria (equals, contains, greater than, etc.)
- Click Filter to apply
- Click the column header to sort ascending
- Click again to sort descending
For detailed information, refer to the Syncfusion React Grid documentation.