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.
Build database applications with:
- Data models managed 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
You can get started with Amplication immediately on the Amplication Cloud.
Alternatively you can set up a local development environment.
See Amplication website or Amplication docs for more details.
Watch this video for a quick recap of everything you get with Amplication.
Launch Amplication from app.amplication.com
Amplication is using a mono-repo with multiple packages. To initialize all the packages on a local development environment, including running a docker image for the DB and seeding the DB, 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 use a manual step-by-step approach to set up Amplication in a local development environment. To do that, you should follow the following instructions for Setting Up Amplication Server, and Setting Up Amplication Client.
Setting up Amplication Server
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...
Setting Up Amplication Client
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.
Amplication is currently in Beta version. This 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... mostly it 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 bug report. This effort is valued and it will help all Amplication users.
If you have an idea, or you're missing a capability that would make development easier and more robust, please Submit feature request.
If a similar feature request already exists, don't forget to leave a "+1". If you add some more information such as your thoughts and vision about the feature, your comments will be embraced warmly :)
Amplication is an open-source project. We are committed to a fully transparent development process and appreciate highly 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!