My experience with Amplication
Tags: amplication, webdev, hacktoberfest
Published: 2022-10-19 14:07:28

As part of the hacktoberfest 2022, here I am writing a blog post about my experience with Amplication thus far. If you never heard about amplication before, it's an open‑source development platform that generate a very high quality backend application built with TypeScript and Node.js using the NestJs framework, and an Admin client built with React. If it's sound interesting to you, you should out their platform at [amplication.com](https://amplication.com).

Disclaimer, currently I am university student in my senior year major in software engineering, as such my inexperience with the field of software development may show in this post, but please don't mind me and correct me in the comment below! I would really appreciate it. 

I found out about amplication around August on a LinkedIn post and it immediately caught my interest. The first thing that came into my mind was "How are they able to do it?", "Will the code even be usable for actual application" since a lot of the auto code generation that promised I would have my own source-code which I can continue using and developing further doesn't seem to delivered. As soon as I saw the post, I shared it with my group of friends and then I hoped on to the platform to see if all the claimed about the generated source code would be readable and customizable. To my surprised, all of it was true. I have some experienced developing projects with NestJs as well as React, so I was able to quickly navigate through the source code and read through them, what surprising me is that all the code are well organized and human-readable!

## Using Amplication to build an actual project
I wanted to continue testing out amplication capability so I started working on a project using amplication as the core backend and admin ui, while writing my own client in NextJs. I was able to setup a working backend in about 2-3 days, adding some of my own code and packages. Then I moved on to work on the client side. Now here come the hard part, as I was developing the client I realized there is some missing fields, so I went on to the platform to change it up quickly and merge it on github without checking what the changed are. Well all of a sudden the backend stop working, and I later realized that all of the packages in package.json has been reset. Also some of the customization on the admin was also reset as well. 

Then everytime I need to change the entity and generate the new code, I had to manually check all the changes and revert/discard the files that were replaced by the auto-code generation.

When everything is finished, I tried launching it on digitalocean app platform and the setup was pretty easy. 

Overall my experience with amplication during that development were not that pleasant because of code generation replacing my own code. But I still think that it is pretty solid if you had planned out all the entities and tested it beforehand to make sure that you did not missed anything. I would rate it a 7.5/10

## Final thoughts
I wrote the project back in August/September when amplication has yet to release it first stable 1.0 version so my experience may not be relevant current version. But I think most of the issues has already been resolved by now hopefully, seeing how big the community has gotten.

Beside the platform being open-source the amplication's team and community is also working hard in contributing the development, especially during this month of hacktoberfest. I was able to made my very first contribution to an open-source project thank to amplication as well. 

Thank you for taking your time and read through my first every blog post. I hope you like🙇 

Don't forget to checkout [Amplication](https://amplication.com).
And join our community on [github](https://github.com/amplication/amplication) and [discord](https://discord.gg/Z2CG3rUFnu)
Cheer!🍻