Structure
Packages
The packages of next-forge
next-forge contains a number of shared packages that are used across the monorepo. The purpose of these packages is to isolate shared code from the main app, making it easier to manage and update.
Additionally, it makes it easier to swap out parts of the app for different implementations. For example, the database
package contains everything related to the database, including the schema and migrations. This allows us to easily swap out the database provider or ORM without impacting other parts of the app.
Package | Description |
---|---|
analytics | Analytics systems. |
auth | Authentication provider. |
database | Database schema and migrations. |
design-system | Contains shared components, utility files and styles. |
email | Email functionality, including provider SDK and templates. |
env | Environment variables. |
feature-flags | Feature flags. |
next-config | Shared Next.js configuration. |
observability | Observability utilities, including logging, error handling and uptime monitoring. |
payments | Payments and billing functionality. |
seo | Search engine optimization, including metadata and structured data. |
tailwind-config | Shared Tailwind CSS configuration. |
typescript-config | Shared TypeScript configuration. |