Use multiple non-traditional back-ends for Next.js project. Built to support talk at Next.js Conf 2020.
This project supports the demo from the “Everything is a CMS!” talk at Next.js Conf 2020. It aims to showcase the ability to easily swap data sources in and out by using abstracted and normalized engines. There are two types of engines demonstrated: API-Based and File-Based. The project supports various data sources including Bear, Contentful, Dropbox, Fauna, Google Sheets, and Trello.
_data
directory.To run this project in development mode for demo purposes, follow these steps:
next start
localhost:3000
api-engine/.env
file. Refer to the documentation for each data source to know the required variables.[driver]
with the specific driver name (e.g., bear
, contentful
, dropbox
, fauna
, sheets
, trello
).This project demonstrates the concept of abstracted and normalized engines to easily swap data sources in and out. It includes two types of engines: API-Based and File-Based. The API-Based engine is an Apollo GraphQL server with support for various data sources. The File-Based engine reads local markdown files for front-end templates and pulls data from external sources to write them to markdown files. The project provides installation instructions and highlights key features.