This is a Next.js project bootstrapped with create-next-app.
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun devOpen http://localhost:3000 with your browser to see the result.
- Dynamic table with sorting, global search, client-side pagination
- Manage Columns modal: add fields, show/hide, reorder (persisted)
- CSV import (PapaParse) with schema validation, CSV export (visible columns only)
- Inline editing with Save All / Cancel All; row delete with confirm
- Theme toggle (light/dark), responsive UI using MUI v5
src/app: App Router pages and layoutsrc/components: Reusable UI components (DataTable, dialogs, toggles)src/redux: Redux Toolkit store and slices, persisted via redux-persistsrc/hooks: Typed redux hookssrc/utils: CSV helperspublic/sample.csv: Example data
npm run dev— start dev servernpm run build— production buildnpm start— run production build
Build and run the production image:
docker build -t dynamic-data-table-manager .
docker run -p 3000:3000 dynamic-data-table-manager- Required headers:
Name, Email, Age, Role - Additional columns are allowed and will be added automatically
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.