Forjnot is a high-performance monorepo starter template, designed to help developers quickly set up scalable, production-ready applications. It integrates NestJS, Next.js, and TurboRepo for a seamless experience in building real-world, microservice-based projects.
- Modular & Scalable Backend: Utilize NestJS for building flexible, maintainable backend applications.
- Next.js with SSG: Leverage Next.js for your frontend, with Static Site Generation (SSG) support out of the box.
- TurboRepo Integration: Build fast, with optimal monorepo management and efficient CI/CD workflows.
- Shared Packages: Easily manage reusable code and configurations across multiple apps and services within the monorepo.
Forjnot is tailored for serious development needs and offers:
- A streamlined setup for rapid project initiation.
- A clean, efficient architecture for both frontend and backend development.
- A modular approach that allows for seamless scaling and microservice integration.
- A configuration-free experience—no unnecessary bloat or overhead, just exactly what you need to get started.
This is not a generic starter template. Forjnot is meticulously crafted for developers who seek clarity, precision, and real-world scalability.
The repository follows a monorepo structure for scalability and modularity.
apps/
├── backend # NestJS API
└── frontend # Next.js app
packages/
├── shared-configs/ # Shared configurations
├── shared-constants/ # Shared constants
├── shared-dtos/ # Shared DTOs
├── shared-env/ # Environment configuration
├── shared-logger/ # Shared logger
├── shared-types/ # Shared TypeScript types
└── shared-utils/ # Shared utilities
Root Files:
.editorconfig
.gitignore
.env.example
biome.json
docker-compose.yml
makefile
package.json
pnpm-workspace.yaml
tsconfig.json / tsconfig.base.json
turbo.json
To get started with Forjnot, follow these steps:
pnpm install
pnpm run client
pnpm run server
Forjnot is ready for deployment and offers an initial Docker configuration. The following command builds all necessary services:
pnpm run build:all
You can also use Docker for containerized deployment, with basic configurations provided in docker-compose.yml
.
Forjnot is designed to maintain code quality and consistency:
-
Linting & Formatting: Ensure your code meets style standards.
pnpm run lint pnpm run format
-
Swagger Docs: Automatically generated documentation for APIs.
-
Makefile: Manage project tasks, including builds and testing.
- NestJS: Backend framework for building scalable and maintainable APIs.
- Next.js: Frontend framework with support for Static Site Generation (SSG).
- TurboRepo: Efficient monorepo management tool.
- pnpm: Fast, disk space-efficient package manager.
- Swagger: Swagger integration for auto-generated API documentation, simplifying the testing and exploration of your APIs.
- Makefile: A Makefile is included for simplified task management, such as building, testing, and deployment processes.
- Biome: Linting and formatting integration.
- Docker: Basic containerization setup for easy deployment.
Forjnot is licensed under the MIT License. Feel free to use, modify, and distribute the project according to the terms of the license.
Forjnot is an open-source project, and contributions are always welcome. You can contribute by:
- Reporting bugs or issues
- Submitting feature requests or improvements
- Reviewing pull requests
Forjnot is already a powerful tool, but it can always be improved. We encourage contributions that help enhance its functionality and usability.
Forjnot is designed to help developers build scalable applications quickly and efficiently, with a focus on performance and maintainability. It provides a clean, modular foundation for both backend and frontend development, eliminating unnecessary complexity.
Feel free to use, modify, and extend Forjnot for your projects. Whether you're working on a new startup or a larger-scale enterprise application, Forjnot has you covered.