Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/remirror/template
TypeScript monorepo with automatic release support via changesets
https://github.com/remirror/template
babel7 monorepo pnpm preconstruct template typescript
Last synced: 3 months ago
JSON representation
TypeScript monorepo with automatic release support via changesets
- Host: GitHub
- URL: https://github.com/remirror/template
- Owner: remirror
- License: mit
- Created: 2020-08-19T09:06:58.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2021-02-09T11:57:56.000Z (over 3 years ago)
- Last Synced: 2024-07-12T01:53:40.684Z (4 months ago)
- Topics: babel7, monorepo, pnpm, preconstruct, template, typescript
- Language: TypeScript
- Homepage:
- Size: 2.23 MB
- Stars: 35
- Watchers: 4
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- Contributing: docs/contributing.md
- License: LICENSE
Awesome Lists containing this project
README
Add your motivational tagline here.
Getting Started ·
Why? ·
Documentation ·
Contributing
## Getting Started
Use the following steps when first using this template.
- Find and replace `remirror/template` with `user/repo` across the whole project.
- Replace `<< TEMPLATE NAME >>` in the `LICENSE` file with the name of your choosing.
- Replace the template package in the packages folder with a package of your choosing.
- **_OPTIONAL_**: For automatic publishing add your npm token to to your [github repo secrets](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets) with the name `NPM_TOKEN`.
## Why
I've created this template primarily for my work with remirror, to prevent from constantly reinventing the wheel when starting a new project. I've often had ideas and then delayed because the pain of starting from scratch is too high. This toolkit hopefully helps to reduce the friction.
This template repo comes with the following tools:
- [`pnpm`](https://pnpm.js.org/) monorepo.
- [`preconstruct`](https://preconstruct.tools/) - Automated builds and great support for JS tooling.
- [`TypeScript`](https://www.typescriptlang.org/) - For typesafe code, great editor support and simpler refactoring.
- [`eslint`](https://eslint.org/) - for code linting.
- [`prettier`](https://prettier.io/) - for code formatting.
- [`babel`](https://babeljs.io/) - used by preconstruct for the compilation of code and macros.
- [`vscode`](https://code.visualstudio.com/) - as the preferred editor integration with recommended plugins.
- [`codespaces`](https://github.com/features/codespaces) - with a dev container which is ready to use. You can launch this codebase as it is or configure as needed for your project.
- [`changesets`](https://github.com/atlassian/changesets) - for automating releases to GitHub and NPM.
- [`GitHub Actions`](https://github.com/features/actions) - as the primary continuous integration (deployment) tool.
- [`husky`](https://github.com/typicode/husky/tree/v4.3.7) - for git hooks.
- [`lint-staged`](https://github.com/okonet/lint-staged) - for automated precommit checks.
- Minimal files at the top level via symlinks to a directory in `support/root`.
## Contributing
Please read our [contribution guide] for details on our code of conduct, and the process for submitting pull requests. It also outlines the project structure so you can find help when navigating your way around the codebase.
In addition each folder in this codebase a readme describing why it exists.
You might also notice there are surprisingly few files in the root directory of this project. All the configuration files have been moved to the `support/root` directory and are symlinked to the root directory in a `preinstall` hook. For more information take a look at [folder](support/root) and [readme](support/root/readme.md).
## Versioning
This project uses [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/remirror/template/tags).
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
[contribution guide]: docs/contributing
[typescript]: https://github.com/microsoft/Typescript