Skip to content

Commit a4d9162

Browse files
committed
updated readme
1 parent 786f84e commit a4d9162

File tree

1 file changed

+75
-3
lines changed

1 file changed

+75
-3
lines changed

README.md

Lines changed: 75 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,41 @@ Framework for supporting different programming languages in TMC.
22

33
TMC-langs provides an interface that encapsulates everything needed to support a new language in TMC. The framework provides CLI wrappers so that it's fairly convenient to call from other languages like Ruby.
44

5-
Currently a work in progress.
5+
## Documentation
66

7-
Documentation available at https://rage.github.io/tmc-langs-rust
7+
Documentation for the latest release is available at https://rage.github.io/tmc-langs-rust
88

9-
Supported targets:
9+
## Building
10+
11+
Install Rust according to https://www.rust-lang.org/tools/install
12+
13+
```bash
14+
git clone git@github.com:rage/tmc-langs-rust.git
15+
cd tmc-langs-rust
16+
cargo build
17+
```
18+
19+
## Testing
20+
21+
```bash
22+
cargo test
23+
```
24+
25+
## Running the CLI
26+
27+
```bash
28+
cargo run -p tmc-langs-cli help
29+
```
30+
31+
## Development
32+
33+
Format using `cargo fmt`, use `cargo clippy` for linting.
34+
35+
## Deployment
36+
37+
Documentation and binaries for the supported targets are built and deployed to Google Cloud when creating a GitHub release. Each binary uses the release tag as a version number in the filename, for example `tmc-langs-cli-x86_64-unknown-linux-gnu-0.1.5-alpha` for the release `0.1.5-alpha`.
38+
39+
### Supported targets
1040

1141
- Linux 64-bit (x86_64-unknown-linux-gnu)
1242
- Linux 32-bit (i686-unknown-linux-gnu)
@@ -15,3 +45,45 @@ Supported targets:
1545
- MacOS 64-bit (x86_64-apple-darwin)
1646
- ARM64 (aarch64-unknown-linux-gnu)
1747
- Armv7 (armv7-unknown-linux-gnueabihf)
48+
49+
## Included projects
50+
51+
### tmc-langs-abstraction
52+
53+
A library containing some common types.
54+
55+
### tmc-langs-cli
56+
57+
A binary CLI interface for TMC-langs for IDEs.
58+
59+
### tmc-langs-core
60+
61+
A library for communicating with the TMC server.
62+
63+
### tmc-langs-framework
64+
65+
A library for creating language plugins.
66+
67+
### tmc-langs-java
68+
69+
A TMC plugin for Java. Supports Maven and Ant.
70+
71+
### tmc-langs-make
72+
73+
A TMC plugin for Make.
74+
75+
### tmc-langs-notests
76+
77+
A TMC plugin for projects with no tests.
78+
79+
### tmc-langs-python3
80+
81+
A TMC plugin for Python 3.
82+
83+
### tmc-langs-r
84+
85+
A TMC plugin for R.
86+
87+
### tmc-langs-util
88+
89+
A library that provides a convenient interface abstracting over all available language plugins.

0 commit comments

Comments
 (0)