Skip to content

feat: Templates for V4.0#15

Open
rsaz wants to merge 20 commits intomainfrom
feature/v4.0
Open

feat: Templates for V4.0#15
rsaz wants to merge 20 commits intomainfrom
feature/v4.0

Conversation

@rsaz
Copy link
Member

@rsaz rsaz commented Dec 30, 2025

  • Opinionated and Non opinionated template don't exist anymore
  • Application and Micro services template are in place

…ting, and testing setup

- Added .env.example for environment variable configuration
- Created .gitignore to exclude unnecessary files
- Implemented expressots.config.ts for CLI scaffolding
- Set up Jest configuration for testing
- Added package.json with scripts and dependencies
- Developed basic application structure with AppController and App class
- Included README.md for project documentation
- Established TypeScript configuration files for building and development
@rsaz rsaz self-assigned this Dec 30, 2025
@rsaz rsaz added the enhancement New feature or request label Dec 30, 2025
rsaz added 19 commits December 29, 2025 21:07
…structure

- Deleted .env.example and config.ts as they are no longer needed
- Updated tsconfig.json to include expressots.config.ts
- Simplified App class by removing logger configuration
- Adjusted AppController method signature for consistency
- Enhanced test setup for AppController with zero-config test app
- Added *.tsbuildinfo to .gitignore to exclude TypeScript build info files
- Simplified expressots.config.ts by removing unnecessary comments
- Updated jest.config.ts to include --detectOpenHandles for better test handling
- Modified package.json scripts for improved test and coverage commands
- Enhanced tsconfig files with incremental builds and better type definitions
- Cleaned up app.ts and app.controller.spec.ts by removing commented code
- Added path mappings for useCases and controllers in tsconfig.build.json and tsconfig.json
- Disabled the no-unused-vars rule in ESLint configuration for better flexibility
…ernetes, and migration templates

- Introduced a new repository structure for community-maintained templates.
- Added templates for various CI/CD platforms (GitHub Actions, GitLab, CircleCI, Jenkins, Bitbucket, Azure).
- Included Docker configurations for production and development environments.
- Provided Kubernetes manifests for deployments, services, config maps, and ingress.
- Created migration checklists for transitioning from Heroku to Railway, Render, and Fly.io.
- Implemented a manifest and pricing data structure for template versioning and cloud provider pricing.
…emplate

- Introduced Docker Compose setup for local development and production environments.
- Added multi-stage Dockerfile for optimized production builds.
- Created Kubernetes manifests including ConfigMap, Deployment, Service, Ingress, and Network Policy for production readiness.
- Implemented observability features with health checks and metrics endpoints.
- Provided example implementations for dependency injection, event-driven architecture, and observability in the microservice context.
- Added local dependencies for @expressots/adapter-express and @expressots/core in package.json.
- Refactored di-container.example.ts to simplify user service implementation and logging.
- Updated event-driven.example.ts to use a simple event emitter pattern and improved event handling.
- Enhanced serverless-lambda.example.ts with clearer Lambda handler creation instructions and updated deployment steps.
- Deleted Docker Compose and Dockerfile as they are no longer needed.
- Removed example environment configuration and Jest configuration files.
- Eliminated Kubernetes manifests including ConfigMap, Deployment, Ingress, and Network Policy.
- Cleared out example implementations for dependency injection, event-driven architecture, and observability.
- Updated package.json to reflect the removal of unnecessary dependencies and scripts.
- Changed the import from createMicroAPI to micro for a more streamlined API setup.
- Updated the package.json to reference the correct path for @expressots/adapter-express.
- Simplified the API initialization by removing unnecessary middleware parsing and directly defining the route handler.
- Updated package.json to improve project description and add relevant keywords.
- Introduced new npm scripts for example execution, showcasing advanced features like Circuit Breaker, Service Discovery, and Service Client.
- Expanded README.md to reflect new features and provide detailed usage instructions.
- Added example implementations for Circuit Breaker, Service Discovery, Service Client, Full DI API, and Serverless deployment.
- Included comprehensive examples and documentation to facilitate understanding of advanced capabilities.
…Micro

- Removed the .env.local file as it is no longer needed.
- Updated entryPoint in expressots.config.ts to reflect the new directory structure.
- Revised package.json to use local paths for dependencies and added new testing scripts.
- Modified tsconfig files to improve build settings and include test files.
- Changed the API listening port from 3001 to 3000 for consistency.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant