Amplication is an open‑source development tool. It helps professional Node.js developers develop quality Node.js applications without spending time on repetitive coding tasks.
Amplication auto-generates backend apps built with TypeScript and Node.js, and a client built with React
Try amplication immediately on app.amplication.com or follow the instructions to run a local instance.
Build database applications with:
- Manage data models visually or through CLI
- Auto-generated human-editable source code
- Node.js server built with Nest.js and Passport
- REST API and GraphQL for CRUD with relations, sorting, filtering, pagination
- Custom code generated app
- Admin UI built with React-Admin
- Role-based access control
- Docker and docker-compose integration
- Automatic push of the generated code to your GitHub repo
See Amplication website or Amplication docs for more details.
Watch this video for a quick recap of everything you get with Amplication.
Amplication is using a mono-repo with multiple packages. To initialize all the packages on a local development environment, follow these steps:
Execute the following commands in the project root folder:
npm install
npm run setup:dev
This will install all the required dependencies, run the necessary scripts and init a Docker-based Postgres server.
You can also use a more manual step-by-step approach to set up Amplication in a local development environment. To do that, you should follow the instructions listed for "Amplication Server" and "Amplication Client" below.
Amplication Server is the main component of the platform that provides all the core functionality to design and create low-code applications. The server exposes a GraphQL API for all actions. The server is built with the following awesome open-source technologies: Node.js, NestJS, Prisma over PostgreSQL, GraphQL API, and many more...
Amplication Client is the front end of the platform that provides you with an easy to drive UI for building your next low-code application. The client is based on React, Apollo client, Primer components, React Material Web Components, Formik, and more.
Define your data model and generate apps faster using Amplication Command Line Interface (CLI). Execute pre-defined scripts to create your app instantly.
Amplication Data Service Generator is the component that generates the code of apps built with Amplication. It generates the models, Prisma client, REST API, GraphQL, authentication and authorization filters, and more. This package is used internally by Amplication server.
To use this package as a library or as a CLI with other projects, follow the instructions on the package page.
Amplication is currently in Beta version. It means that we are still working on essential features like production-ready hosting, migrations, and stability to our console.
How does it affect you? Well...., it mostly doesn't.
Every app generated using Amplication platform contains popular, documented, secured, and supported production-ready open source components & packages. Your app is stable, scalable, and production-ready you can deploy and rely on. You can read more about the generated app and its stack here https://docs.amplication.com/docs/getting-started
You can ask questions, and participate in discussions about Amplication-related topics in the Amplication
Discord channel.
If you see an error message or run into an issue, please create a bug report, this effort is valued and it will help all.
If you have an idea, or you're missing a capability that would make development easier and more robust, please submit a feature request.
In case a similar feature request already exists, don't forget to leave a "+1". Adding some more information such as thoughts and your vision about the feature will be embraced warmly :)
Amplication is an open source project. We are committed to a fully transparent development process and highly appreciate any contributions. Whether you are helping us fix bugs, proposing new features, improving our documentation or spreading the word - we would love to have you as part of the Amplication community.
Please refer to our contribution guidelines and Code of Conduct.
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!