Skip to content

Repository files navigation

Engineering Template

A production-grade, highly reusable GitHub Repository Template designed as a baseline configuration for modern JavaScript and TypeScript applications.

πŸš€ Purpose

This repository standardizes and streamlines bootstrapping for multiple JavaScript/TypeScript stacks:

  • React Native (Mobile application development)
  • React (Single Page Applications)
  • Next.js (Full-stack SSR web applications)
  • NestJS (Enterprise-grade backend APIs)
  • Node.js & Express.js (Microservices and REST APIs)

It is pre-configured with industry-standard tooling, CI/CD pipelines, documentation templates, developer guidelines, and AI agent instructions.


πŸ“¦ Directory Structure

β”œβ”€β”€ .github/                 # GitHub specific configurations
β”‚   β”œβ”€β”€ workflows/           # CI/CD, branch protection, promotion workflows
β”‚   β”œβ”€β”€ ISSUE_TEMPLATE/      # Structured issue forms (bugs, features)
β”‚   β”œβ”€β”€ CODEOWNERS           # Reviews assignments
β”‚   β”œβ”€β”€ dependabot.yml       # Weekly dependency updates schedules
β”‚   └── PULL_REQUEST_TEMPLATE.md
β”‚
β”œβ”€β”€ .agent/                  # AI Development Guidelines & Workflows
β”‚   β”œβ”€β”€ rules/               # Architecture and coding rules
β”‚   β”œβ”€β”€ skills/              # Prompts/tasks for debugging, code reviews
β”‚   └── workflows/           # Standard checklists for bug fixes and features
β”‚
β”œβ”€β”€ docs/                    # Extensive technical documentation
β”‚   β”œβ”€β”€ architecture/        # High-level architecture and system design
β”‚   β”œβ”€β”€ decisions/           # Architecture Decision Records (ADRs)
β”‚   β”œβ”€β”€ deployment/          # Guides on deployment patterns (Web & Mobile)
β”‚   └── troubleshooting/     # Runbooks and common issues resolutions
β”‚
β”œβ”€β”€ scripts/                 # Automation scripts (setup, release prep)
β”‚   β”œβ”€β”€ setup.sh
β”‚   └── release.sh
β”‚
β”œβ”€β”€ .editorconfig            # Editor layout configuration
β”œβ”€β”€ .gitignore               # Multi-framework exclusions
β”œβ”€β”€ .nvmrc                   # Project target Node version
β”œβ”€β”€ .prettierrc              # Custom prettier config
β”œβ”€β”€ eslint.config.js         # ESLint Flat configuration
β”œβ”€β”€ .env.example             # Base configuration environment template
β”‚
β”œβ”€β”€ AGENTS.md                # How to leverage AI Agents with this repo
β”œβ”€β”€ DEVELOPMENT.md           # Instructions on local development setup
β”œβ”€β”€ CONTRIBUTING.md          # Branching, commits, and review processes
β”œβ”€β”€ SECURITY.md              # Disclosures and security report policy
β”œβ”€β”€ CHANGELOG.md             # Automated release logs
└── README.md

πŸ› οΈ Tech Stack & Standards

  • Runtime: Node.js (LTS)
  • Package Manager: pnpm (v9+)
  • Language: TypeScript First
  • Linter: ESLint (Flat Config)
  • Formatter: Prettier
  • Quality Checks: Automated type checking, testing, and linting on PRs
  • Version Control: Semantic Versioning & Conventional Commits

🎯 How to Use This Template

1. Instantiate the Repository

Click the "Use this template" button at the top of the GitHub page. Select "Create a new repository", set your new repository name, and clone it.

2. Run the Setup Script

Run the automated environment setup script to configure local files, git settings, and verify system dependencies:

chmod +x scripts/setup.sh
./scripts/setup.sh

3. Initialize Your Chosen Stack

After instantiating this template, clean up or modify configuration folders depending on the specific stack you are building:

  • NestJS/Express: Initialize your source files inside src/.
  • Next.js/React: Clean workspace and run your framework setup (pnpm dlx create-next-app@latest .).
  • React Native: Set up your React Native structure (or run npx react-native@latest init). Make sure to restore the .github/ and .agent/ folders to your root directory.

πŸ€– AI-Assisted Development

This repository contains AI instruction directories (.agent/) specifying styles, patterns, and workflows. AI assistants (such as Cursor, GitHub Copilot, or Gemini) will automatically discover these configurations to produce highly context-aware code matching this template's patterns. Read AGENTS.md to learn how to integrate this into your workflow.


πŸ›‘οΈ Guidelines and Contributing

Please refer to the following documentation files to align with repository engineering standards:

  • DEVELOPMENT.md - Project setup, engines, and tools guidelines.
  • CONTRIBUTING.md - Branch strategy, commits rules, and PR guidelines.
  • SECURITY.md - Vulnerabilities disclosures and security guidelines.

About

πŸš€ A reusable production-grade TypeScript project template with standardized GitHub workflows, CI/CD automation, documentation structure, code quality tools, and development guidelines.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages