Inferencer
You can automatically generate views for your resources using @refinedev/inferencer. Inferencer exports HeadlessListInferencer, HeadlessShowInferencer, HeadlessEditInferencer, HeadlessCreateInferencer, and finally HeadlessInferencer components, the last of which combines all in one place.
- Headless elements of 
@refinedev/inferenceruses@refinedev/react-hook-formand@refinedev/react-tableto create views. These dependencies should be installed in your project in order to use inferencer components. - To learn more about the 
@refinedev/inferencerpackage, please check out Inferencer docs. 
Usage
Inferencer components can be imported from @refinedev/inferencer/headless. You can directly use the components in your routes without passing any props. If you use a routerProvider, it will infer the resource, action and id from the current route.
- Without Props
 - With Explicit Props
 
resources
import routerProvider from "@refinedev/react-router";
import { BrowserRouter } from "react-router";
import { HeadlessInferencer } from "@refinedev/inferencer/headless";
const App = () => {
  return (
    <BrowserRouter>
      <Refine
        routerProvider={routerProvider}
        resources={[
          {
            name: "samples",
            list: "/posts",
          },
        ]}
      >
        <Routes>
          <Route path="/posts" element={<HeadlessInferencer />} />
        </Routes>
      </Refine>
    </BrowserRouter>
  );
};
custom
import { HeadlessInferencer } from "@refinedev/inferencer/headless";
const SampleList = () => {
  return (
    <HeadlessInferencer resource="samples" action="list" />
  );
};
const SampleShow = () => {
  return (
    <HeadlessInferencer resource="samples" action="show" id="1" />
  );
};
const SampleCreate = () => {
  return (
    <HeadlessInferencer resource="samples" action="create" />
  );
};
const SampleEdit = () => {
  return (
    <HeadlessInferencer resource="samples" action="edit" id="1" />
  );
};
Views
List
Generates a sample list view for your resources according to the API response. It uses the useTable hook from @refinedev/react-table.
Show
Generates a sample show view for your resources according to the API response. It uses the useShow hook from @refinedev/core.
Create
Generates a sample create view for your resources according to the first record in list API response. It uses the useForm hook from @refinedev/react-hook-form.
Edit
Generates a sample edit view for your resources according to the API response. It uses the useForm hook from @refinedev/react-hook-form.
Example
Below you'll find a Live CodeSandbox Example displaying a fully setup Refine app with @refinedev/inferencer/headless components.
npm create refine-app@latest -- --example inferencer-headless