Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/perryrh0dan/tmpo
Command line interface to create new workspaces based on templates
https://github.com/perryrh0dan/tmpo
cli project template workspace
Last synced: 3 months ago
JSON representation
Command line interface to create new workspaces based on templates
- Host: GitHub
- URL: https://github.com/perryrh0dan/tmpo
- Owner: perryrh0dan
- License: mit
- Created: 2020-03-09T18:45:06.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2023-02-17T21:21:50.000Z (almost 2 years ago)
- Last Synced: 2024-08-03T01:37:52.156Z (6 months ago)
- Topics: cli, project, template, workspace
- Language: Rust
- Homepage:
- Size: 53 MB
- Stars: 29
- Watchers: 1
- Forks: 2
- Open Issues: 7
-
Metadata Files:
- Readme: readme.md
- Changelog: changelog.md
- Contributing: contributing.md
- Code of conduct: code-of-conduct.md
Awesome Lists containing this project
- awesome-repositories - perryrh0dan/tmpo - Command line interface to create new workspaces based on templates (Rust)
README
Tmpo
Command line utility to quickly create new workspaces based on templates
## Description
Tmpo enables you to effectively create new workspaces based on predefined templates. To share templates across your team tmpo is using a git repository to manage your templates. Templates are automaticly fetched and merged on all clients.
Visit the [contributing guidelines](https://github.com/perryrh0dan/tmpo/blob/master/contributing.md) to learn more on how help developing tmpo.
Come over to [Gitter](https://gitter.im/perryrh0dantmpo/community?source=orgpage) or [Twitter](https://twitter.com/perryrh0dan1) to share your thoughts on the project.
## Highlights
- Setup complex workspaces in seconds
- Templates support inheritence, placeholders and transformation methods
- Simple, Lightweight & fast
- Cross-platform: Linux, Windows and mac are official supported
- Everything can be a template. Python, Rust, Typescript, latex, markdown,...
- Share templates across your team or community with git
- Configurable through `~/.tmpo/config.yaml`
- Self Updater## Contents
- [Description](#description)
- [Highlights](#highlights)
- [Contents](#contents)
- [Demo](#demo)
- [Install](#install)
- [Flight Manual](#flight-manual)
- [Configuration](#configuration)
- [Development](#development)
- [Team](#team)
- [License](#license)## Demo
## Install
1. Download the latest [release](https://github.com/perryrh0dan/tmpo/releases) for your platform.
2. Copy the binary to your `/bin` folder or point the path variable to it.A detailed description can be found [here](https://github.com/perryrh0dan/tmpo/blob/master/docs/installation.md).
## Flight Manual
### Quick Start
1. Add a [repository](#repositories) or use the [default repository](https://github.com/perryrh0dan/templates)
```bash
tmpo repository add
```2. Setup your first project
```bash
tmpo init
```### CLI
```
tmpo 1.5.3
Thomas P.
Cli to create new workspaces based on templatesUSAGE:
tmpo [SUBCOMMAND]FLAGS:
-h, --help Prints help information
-V, --version Prints version informationSUBCOMMANDS:
config View configuration
help Prints this message or the help of the given subcommand(s)
init Initialize new workspace [aliases: i]
repository Maintain repositories
template Maintain templates
update Update to the latest release
```### Repositories
A repository is a folder that contains up to n different templates. A repository can be connected with a remote git repository. Templates are then automaticly synced. Repositories are located in the 'template_dir'.
To add a new repository use the `repository subcommand` and follow the instructions on the screen.
```bash
tmpo repository add
```### Templates
Templates can be configured with a `meta.json` in the template root.
For a detailed description how to create and maintain templates have a look at the instructions in the default template repository [repository](https://github.com/perryrh0dan/templates)## Configuration
The configuration file should only be changed by experienced users.
To configure tmpo navigate to the ~/.tmpo/config.yaml file and modify any of the options to match your own preference. To reset back to the default values, simply delete the config file from your home directory.
The following illustrates all the available options with their respective default values.
```yaml
templates_dir: /home/thomas/.tmpo/templates
templates_repositories:
- name: default
description: this is the default template repository from tpoe
git_options:
enabled: true
provider: github
url: "https://github.com/perryrh0dan/templates"
branch: master
auth: none
token:
username: ~
password: ~
```## Development
More information regarding development and testing can be found [here](https://github.com/perryrh0dan/tmpo/blob/master/docs/development.md).
## Team
- Thomas Pöhlmann [(@perryrh0dan)](https://github.com/perryrh0dan)
## License
[MIT](https://github.com/perryrh0dan/tmpo/blob/master/license.md)