Hello HN , here is Omer. I'm the Co-founder & CTO of refine.
Today we are celebrating the new features of refine with this launch event. Last year was a landmark year for us since we watched refine grow from zero and establish itself as a prominent React framework.
It all started with a single question two years ago: "Is it possible for a low-code web framework to quickly generate CRUD applications while still allowing custom styling, logic and workflow?". None of the existing solutions could give us the amount of flexibility that we needed, so we started building one from scratch.
Today refine evolved into a full-blown framework for building CRUD applications like admin panels, dashboards, internal tools, and storefronts. It eliminates the repetitive tasks demanded by CRUD operations and saves days of development time.
With the new release, we add two new features to refine core
1- Inferencer
@pankod/refine-inferencer is a package that provides a way to automatically generate views for resources based on the data structure. The aim is to reduce the amount of time spent on creating views for resources by generating the code automatically that can be customized easily.
2- Swizzle
The swizzle is a command in refine-cli that allows you to customize the refine's supported components and data providers. It allows you to eject selected files from the refine packages and modify depending on your needs.
Unique "Headless UI" approach enables developers to use any UI framework or custom design without constraints. For convenience, refine is shipped with ready-made integrations with three powerful UI frameworks: Ant Design, Material UI & Mantine.
Being totally backend agnostic, refine can connect to 15+ backend services out-of-the-box, incl. custom REST & GraphQL API's. With refine, developers have 100% control over their projects as they may build, style and deploy the way they like.
And of course, we want to know what you think about refine and any ideas or suggestions you may have for our solution. Please write them and we'll be happy to join the conversation.
1. We've released a codemod when releasing v3 and allowed users to upgrade easily from v2 to v3 and we're planning to do the same for v4 as well. https://refine.dev/docs/migration-guide/
Over the last two weeks, I've been evaluating and trying out different headless CMSes, databases, and libraries like Refine to power my simple personal site.
I spent the most time with Refine and Supabase, and up until a few days ago, it seemed like Refine would be what I stayed with. I think what Refine offers out of the box is excellent. The ability to stand up a custom CRUD interface with low effort is really useful. I do appreciate what the Refine team is building.
However, when it came time to add customization or additional features, I spent more time stumbling through the docs than building what I wanted/needed.
A few days ago, I ripped refine out of my project for a custom-built interface using a component library called Mantine. Maybe it's because I've been building stuff like this for a long time, but I built exactly what I needed without Refine in less time than it took to get to the same spot with Refine.
The new swizzle command could have solved some of my issues, but I'm too far gone to go back.
Thank you very much for your time and feedback! Your experience with Refine is inspiring for us. Can you tell us exactly where we lost you? Was the learning curve too steep or were you unable to accomplish what you wanted to?
To be honest, we are working very hard to not let the experience you had to be felt by developers and it is clear that we need to work more.
Thank you for giving us the opportunity to improve ourselves.
Hi, react-admin core developer here. My opinion is that Refine is a copycat of react-admin with deceptive marketing practices and no soul.
- their API and code is a carbon copy of react-admin
- most features are half finished
- their benchmark is laughable if you look at the details
- they raised 1M$ and only sell mugs - watch out for the moment investor ask for they money back ("everything is free" isn't a good sign IMHO)
- they use the money to buy followers on social networks with contests
On the other hand, react-admin is mature (5+ years, ~4000 closed issues, huge unit test coverage and documentation), has passed breakeven point, and powers 3,000 new applications each month. It's published and supported by marmelab, a 10-year old company that has more than 70,000 stars across many projects on Github, and with very strong values (https://marmelab.com/en/values).
Hey,
Despite the fact that many your claims are baseless or unjustified, we appreciate your feedback and willingness to share your opinions with us. Any constructive criticism without unfair accusations is always very valuable to us.
Although its relatively recent emergence on the market, refine has quickly established itself as one of the fastest-growing frameworks, thanks to the support and enthusiasm of its great community. Having the invaluable support of prominent VC's and angel investors helps us to broaden our vision and set newer and higher goals we couldn't imagine before.
As it continues to grow and evolve, refine is becoming a one-stop solution for web application development, with the capability to handle an extensive range of use cases. Reaching this new level of success, vastly surpassing our origins as an admin panel creation tool, brings constant excitement to all of our stakeholders and serves as a source of motivation for us to develop innovative solutions for the industry.
refine is %100 open source. It provides all enterprise features of React Admin for free. Additionaly, refine has more features that React Admin enterprise doesn't have.
For this use-case I've almost always relied on Rails + custom scaffold generators. There are a few projects like Bullet Train that offer some admin panel features out of the box as well.
Is this a way of bringing that functionality to all these other frameworks as well? It seems compelling because the ability to build out crud resources with a single command is a huge accelerator in Rails projects.
Are there any videos of someone building projects with this? It's useful to see what takes time an what doesn't before committing to a framework like this.
The most important feature of refine is being headless by design.
No limit on customization, refine works with any custom design or UI framework you favor.
For convenience, it ships with ready-made integrations for Ant Design System, Material UI, Mantine, and Chakra UI.
Congratulations to the entire refine team on the launch of the new features! It's impressive to see how much the framework has grown and evolved since its inception. At the JavaScript Mastery team, we are looking forward to utilizing all of the benefits of refine in an upcoming video. Keep up the great work!
Thank you for your kind words and congratulations! We are thrilled to see the positive response to our new features and are proud of all the progress we've made since launching refine. We appreciate the interest from the JavaScript Mastery team and look forward to seeing how you utilize our framework in your upcoming video. We will continue to work hard to improve and enhance refine for our users.
I'm not too much into React but this seems like the kind of tools that can massively increase productivity. I can see open-source being a good source of both adoption and virtuousness as well. Very cool!
In a front-end project, being "headless" means that all functions can work without dependence on any user interface elements/components. With Refine, you can use features such as data management, authentication, real-time functionality, audit-logging, internationalization, and access control with any user interface element/component of your choice. This means that Refine does not restrict you in terms of styling and customization.
Today we are celebrating the new features of refine with this launch event. Last year was a landmark year for us since we watched refine grow from zero and establish itself as a prominent React framework.
It all started with a single question two years ago: "Is it possible for a low-code web framework to quickly generate CRUD applications while still allowing custom styling, logic and workflow?". None of the existing solutions could give us the amount of flexibility that we needed, so we started building one from scratch.
Today refine evolved into a full-blown framework for building CRUD applications like admin panels, dashboards, internal tools, and storefronts. It eliminates the repetitive tasks demanded by CRUD operations and saves days of development time.
With the new release, we add two new features to refine core
1- Inferencer @pankod/refine-inferencer is a package that provides a way to automatically generate views for resources based on the data structure. The aim is to reduce the amount of time spent on creating views for resources by generating the code automatically that can be customized easily.
2- Swizzle The swizzle is a command in refine-cli that allows you to customize the refine's supported components and data providers. It allows you to eject selected files from the refine packages and modify depending on your needs.
Unique "Headless UI" approach enables developers to use any UI framework or custom design without constraints. For convenience, refine is shipped with ready-made integrations with three powerful UI frameworks: Ant Design, Material UI & Mantine.
Being totally backend agnostic, refine can connect to 15+ backend services out-of-the-box, incl. custom REST & GraphQL API's. With refine, developers have 100% control over their projects as they may build, style and deploy the way they like.
And of course, we want to know what you think about refine and any ideas or suggestions you may have for our solution. Please write them and we'll be happy to join the conversation.
Would love to improve the examples though:
- Example code for backend Rest API to be used with Refine (i'm confused about specification on openapi request params/response)
- Example code on only using data provider package (for example, we don't need to use refine routing provider, auth provider,...)
edit: By the way, what is your opinion on the "inferencer" package?
1. How complex was the upgrade path between major versions?
2. Are you guys cashflow positive?
3. What are your competitors?
Thanks
1. We've released a codemod when releasing v3 and allowed users to upgrade easily from v2 to v3 and we're planning to do the same for v4 as well. https://refine.dev/docs/migration-guide/
2. We got a similar question before. You can check it out here: https://github.com/refinedev/refine/discussions/3261
3. We have detailed comparison table for similar tools: https://refine.dev/docs/comparison/
Have you ever tried similar tools for building a CRUD app before? Can you suggest any for us to take a look?
I spent the most time with Refine and Supabase, and up until a few days ago, it seemed like Refine would be what I stayed with. I think what Refine offers out of the box is excellent. The ability to stand up a custom CRUD interface with low effort is really useful. I do appreciate what the Refine team is building.
However, when it came time to add customization or additional features, I spent more time stumbling through the docs than building what I wanted/needed.
A few days ago, I ripped refine out of my project for a custom-built interface using a component library called Mantine. Maybe it's because I've been building stuff like this for a long time, but I built exactly what I needed without Refine in less time than it took to get to the same spot with Refine.
The new swizzle command could have solved some of my issues, but I'm too far gone to go back.
To be honest, we are working very hard to not let the experience you had to be felt by developers and it is clear that we need to work more.
Thank you for giving us the opportunity to improve ourselves.
Deleted Comment
- their API and code is a carbon copy of react-admin
- most features are half finished
- their benchmark is laughable if you look at the details
- they raised 1M$ and only sell mugs - watch out for the moment investor ask for they money back ("everything is free" isn't a good sign IMHO)
- they use the money to buy followers on social networks with contests
On the other hand, react-admin is mature (5+ years, ~4000 closed issues, huge unit test coverage and documentation), has passed breakeven point, and powers 3,000 new applications each month. It's published and supported by marmelab, a 10-year old company that has more than 70,000 stars across many projects on Github, and with very strong values (https://marmelab.com/en/values).
Prefer the original ;)
Although its relatively recent emergence on the market, refine has quickly established itself as one of the fastest-growing frameworks, thanks to the support and enthusiasm of its great community. Having the invaluable support of prominent VC's and angel investors helps us to broaden our vision and set newer and higher goals we couldn't imagine before.
As it continues to grow and evolve, refine is becoming a one-stop solution for web application development, with the capability to handle an extensive range of use cases. Reaching this new level of success, vastly surpassing our origins as an admin panel creation tool, brings constant excitement to all of our stakeholders and serves as a source of motivation for us to develop innovative solutions for the industry.
You can take a look at the comparison table: https://refine.dev/docs/comparison/
Is this a way of bringing that functionality to all these other frameworks as well? It seems compelling because the ability to build out crud resources with a single command is a huge accelerator in Rails projects.
Are there any videos of someone building projects with this? It's useful to see what takes time an what doesn't before committing to a framework like this.
It helps developers create CRUD-like applications such as internal tools, admin panels, Content Management Systems and user-facing apps.
I love seeing more and more movement in this space.
https://avohq.io
For convenience, it ships with ready-made integrations for Ant Design System, Material UI, Mantine, and Chakra UI.
We have tutorial for building a fully-functioning CRUD app, from scratch to full launch using refine. Please take a look: https://refine.dev/docs/tutorial/introduction/index/
How would you define a "headless" CRUD framework please?
Thanks in advance.
You can take a look at the other real world examples with the source codes from here: https://refine.dev/examples/
Additionally the full examples for refine feature implementations:
https://refine.dev/docs/examples/