This project is a collection explorer that provides a UI for data exploration and search functionality. The client makes requests to the server at http://localhost:3000/api/mockdata/customers
, which then adapts the returned data to conform to the type [{id: string} & Record<string, string>]
. Users can search for records based on any key present in the adapted data array.
- Backend: Express.js
- Frontend: Vue 3
- Monorepo Management: npm workspaces
To get started, you need to clone the repository and install the dependencies for both the client and the server:
git clone <repository-url>
cd collection-explorer
npm run install-all
The development servers for the client and server are available at:
- Server: http://localhost:3000/
- Client: http://localhost:5173/
To run both simultaneously, you can use the following command:
npm run dev
To run them separately:
-
For the server:
npm run dev:server
-
For the client:
npm run dev:client
To run tests for both client and server, execute the following commands:
npm run test:client
npm run test:server
To deploy, first build the client and then start the server:
-
Build the client:
npm run build:client
-
Start the server:
npm run start:server
The build will be served at http://localhost:3000/.