Skip to content
/ tsapp-template Public template

Template para aplicações Typescript

License

NotificationsYou must be signed in to change notification settings

heliomarpm/tsapp-template

Repository files navigation


📦 TypeScript Application Template

CodeQLTestRelease

Node.jsTypeScriptBiomeSemantic ReleaseLicense

PayPalKo-fiLiberapayGitHub Sponsors

📚 Summary

Professional Template with automated CI/CD, TypeDoc-generated documentation, and production-ready semantic versioning.

🔀 PR Workflow

gitGraph
  commit
  branch develop
  checkout develop
  commit
  commit
  checkout main
  merge develop
  commit tag: "v1.0.0"
Loading

🧩 What's Included

Core Infrastructure

  • ☑️ Node.js + TypeScript
  • ☑️ Vitest (Unit Testing)
  • ☑️ Semantic Release
  • ☑️ Actions CI/CD
  • ☑️ Actions Pages

Quality Assurance

  • ☑️ BiomeJS (Linting/Formatting)
  • ☑️ Husky + Lint Staged
  • ☑️ Commitlint + Conventional Commits
  • ☑️ CodeQL Scanning

Project Scaffolding

  • ☑️ Docs: Contribution Guide & Code of Conduct
  • ☑️ Husky Git Hooks
  • ☑️ Automated CHANGELOG.md
  • ☑️ TypeDoc + Vitepress for Documentation Site

🤖 Automation Features

WorkflowDescriptionTrigger
1.test.ymlRuns unit testsPush/PR to main
2.release.ymlGenerates releasesSuccessful tests
3.deploy-docs.ymlDeploys docsSuccessful release
create_pr.ymlCreates pull requestsPush/PR to develop

❓ When to Use This Template

Perfect for developers who need:

  1. Zero-config TypeScript library setup
  2. Automated docs with TypeDoc
  3. CI/CD pipeline with Actions
  4. Semantic versioning right out of the box

💡 Ideal for:

  • Building npm packages
  • Open source projects
  • Enterprise-grade libraries

🚀 Quick Start

npx degit heliomarpm/tsapp-template your-app
cd your-app
npm install

⚙️ Configuration Guide

Workflow permissions

You'll need to update the workflow permissions in your repository.

  • Access the repository's Settings section
  • Access Actions in the side menu
  • Check the Read and write permissions option and Allow Actions to create and approve pull requests

Documentation Page

see TypeDoc Vitepress

  • First time: npx vitepress init
  • Documentation code base: npm run docs or npm run docs:dev

Dry Run Releasing

Test releasing without version bump:

npm run release:test
# or 
npx semantic-release --dry-run

Requirements

RequirementDescription
Branch protectionRequire PR reviews before merge

📦 Dependencies

✅ Zero runtime dependencies
🔄 All devDependencies are pinned to latest stable versions

🤝 Contributing

We welcome contributions! Please read:

Thank you to everyone who has already contributed to the project!

Made with contrib.rocks.

❤️ Support this project

If this project helped you in any way, there are several ways to contribute.
Help us maintain and improve this template:

⭐ Starring the repository
🐞 Reporting bugs
💡 Suggest features
🧾 Improving the documentation
📢 Share with others

💰 Supporting via Sponsors, Ko-fi, Paypal, LiberaPay

PayPalKo-fiLiberapayGitHub Sponsors

📝 License

MIT © Heliomar P. Marques 🔝