Skip to content

Latest commit

 

History

History
92 lines (78 loc) · 2.44 KB

File metadata and controls

92 lines (78 loc) · 2.44 KB

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...

If you need help or have a question, go to our Discord channel, we are here to help.

Development

💡 Before you begin, make sure you have all the below installed:

One time set up

  • Install dependencies of the monorepo (execute in root directory):

    npm install
    npm run bootstrap
    
  • Update code generated by Prisma

    npm run prisma:generate
    
  • Build dependencies of the server:

    npm run build -- --scope @amplication/server --include-dependencies
    
  • Update other generated code

    npm run generate
    
  • Make sure Docker is running

  • Move to server directory

    cd packages/amplication-server
    
  • Get external services up (execute in server directory "packages/amplication-server")

    npm run docker
    
  • Update application database (execute in server directory "packages/amplication-server")

    npm run start:db
    
  • Start the development server and watch for changes (execute in server directory "packages/amplication-server")

    npm run start:watch
    
Optional: Google Cloud Platform

If you use the Google Cloud Platform integration make sure to execute:

gcloud auth login
gcloud auth application-default login

Workflow

  • Get external services up, if they're not already running
    npm run docker
    
  • Start the development server and watch for changes, if it's not already running
    npm run start:watch
    
  • Format files (editors like VSCode can do it for you automatically)
    npm run format
    
  • Lint files (editors like VSCode come with integration to display those continuously)
    npm run lint
    
  • Run tests and watch for changes
    npm run test:watch
    
  • When needed, update Prisma Schema
    npm run migrate:save
    npm run migrate:up
    npm run prisma:generate