/app-payload-cms

This is a project to create a CMS to manage users and products for a store. It is built using a blank Payload CMS template, express, typescript and mongodb.

Primary LanguageTypeScriptMIT LicenseMIT

CMS using Payload and Mongodb

Status Version License TypeScript 4.3.5 MongoDB 4.4.6 Express 4.17.1 Payload 3.0.0 Docker 20.10.7

This is a project to create a CMS to manage users and products for a store. It is built using a blank Payload CMS template, express, typescript and mongodb.

Table of Contents

Tech Stack

  • Nodejs
  • Express
  • MongoDB
  • Typescript
  • Payload CMS
  • Docker

Payload Blank Template

A blank template for Payload to help you get up and running quickly. This repo may have been created by running npx create-payload-app@latest and selecting the "blank" template or by cloning this template on Payload Cloud.

See the official Examples Directory for details on how to use Payload in a variety of different ways.

Development

To spin up the project locally, follow these steps:

  1. First clone the repo
  2. Then cd YOUR_PROJECT_REPO && cp .env.example .env
  3. Next yarn && yarn dev (or docker-compose up, see Docker)
  4. Now open http://localhost:3000/admin to access the admin panel
  5. Create your first admin user using the form on the page

That's it! Changes made in ./src will be reflected in your app.

Docker

Alternatively, you can use Docker to spin up this project locally. To do so, follow these steps:

  1. Follow steps 1 and 2 from above, the docker-compose file will automatically use the .env file in your project root
  2. Next run docker-compose up
  3. Follow steps 4 and 5 from above to login and create your first admin user

That's it! The Docker instance will help you get up and running quickly while also standardizing the development environment across your teams.

Production

To run Payload in production, you need to build and serve the Admin panel. To do so, follow these steps:

  1. First invoke the payload build script by running yarn build or npm run build in your project root. This creates a ./build directory with a production-ready admin bundle.
  2. Then run yarn serve or npm run serve to run Node in production and serve Payload from the ./build directory.

Deployment

The easiest way to deploy your project is to use Payload Cloud, a one-click hosting solution to deploy production-ready instances of your Payload apps directly from your GitHub repo. You can also deploy your app manually, check out the deployment documentation for full details.

Questions

If you have any issues or questions, reach out to us on Discord or start a GitHub discussion.