DEV Community

Yuval Hazaz
Yuval Hazaz

Posted on

Generate Node.js app with GraphQL and REST API from Excel

Working with small businesses over the years, I saw a lot of them working and managing critical business processes using Excel files that start small but quickly grow out of proportion.
As a developer, the security, scalability, integrity, and durability implications made me feel nervous every single time.

On many occasions, I was asked to build a full-scale app to replace the Excel file once it becomes too risky for the business to keep relying on a spreadsheet.

Like with every project, you have to go through several steps to produce a reliable service:

  1. Design the data model based on the excel file.

  2. Building the infrastructure (database, ORM, web framework, packages, libraries, etc).

  3. Adding authorization and authentication.

  4. Making sure everything is written with best practices, security, performance, and maintainability in mind.

That process was tedious and repetitive, even when using an existing boilerplate project.

What is Recast

Alt Text

Recast was designed exactly for these types of projects to save time and money and bring the development process up to speed in no time, eliminating the painful process.

Recast is built on top of Amplication, an open-source development platform that generates a TypeScript Node.js source code that includes a GraphQL and REST API, authorization, authentication, identity management, logging utility, error handler, and a React admin UI — just by importing a data schema from excel.

The generated source code is automatically pushed to your GitHub repository or you can download the source code in a Zip file. You own your code.

From this point, you can use your favorite IDE to customize the code and add business logic.

We also made it easy to modify your data models without overriding your custom code every time you re-generate your app, allowing your service to evolve with the business.

Recast is open-source

As a free, open-source project, Recast offers developers immediate access to a free and full-featured account to start developing their next Node.JS application from an excel file at https://recast.amplication.com.

Of course, developers can also freely clone the project source code and run their own local Amplication server.

So how does it really work?

Step 1 — Select and upload an Excel file or any other flat-file format such as CSV

Alt Text

Step 2 — View the data schema that was imported from the file.

Alt Text

Step 3 — Create additional entities and move fields between entities to normalize your data model.

Alt Text

Step 4 — Click “Create App” and Amplication will generate your Node.JS back-end and a React client.

Alt Text

Step 5 — The generated source code is automatically pushed to your GitHub repository or you can download the source code in a Zip file. You own your code.

Alt Text

Step 6 — Deploy your application or use the provided sandbox environment to start working with your GraphQL API, REST API, or Admin UI.

Recast by Amplication

Read more

Read more about deployment options for your generated application here https://docs.amplication.com/docs/deploy.

Read about customizing your app and adding custom code with your business logic here https://docs.amplication.com/docs/how-to/custom-code.

Try it now

Start using Recast by Amplication by visiting our website at https://recast.amplication.com/

Join the community

Join us in building the next generation of development tools by visiting our repo on GitHub https://github.com/amplication/amplication or our discord channel at https://discord.gg/KSJCZ24vj2

Top comments (5)

Collapse
 
johnkazer profile image
John Kazer

Interesting idea, gonna have a look.

Collapse
 
yuvalhazaz profile image
Yuval Hazaz

Great, please come back with any feedback

Collapse
 
glnse profile image
Glency Tirao

Its great and I love it! Will recommend to my friends and will start using this to my future projects 🤓

Collapse
 
yuvalhazaz profile image
Yuval Hazaz

Thanks, Glad you liked it

Collapse
 
malu44 profile image
Malu

Cool Idea - is there a way to import the excel also in the database? Or is it just used to define your db-schema?