Skip to content

Commit 25a729b

Browse files
committed
update README.md
1 parent ede6582 commit 25a729b

File tree

1 file changed

+23
-5
lines changed

1 file changed

+23
-5
lines changed

README.md

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,24 @@ TranscodingStreams.jl
99

1010
![TranscodingStream](/docs/src/assets/transcodingstream.png)
1111

12-
TranscodingStreams.jl is a package for transcoding data streams. There are two
13-
kinds of APIs:
12+
TranscodingStreams.jl is a package for transcoding data streams, which is:
13+
- **fast**: small overhead and specialized methods,
14+
- **consistent**: basic I/O operations you already know will work as you expect,
15+
- **generic**: support any I/O objects like files, buffers, pipes, etc., and
16+
- **extensible**: you can define a new codec to transcode data.
17+
18+
## Installation
19+
20+
```julia
21+
Pkg.add("TranscodingStreams")
22+
```
23+
24+
Installing a [codec package](#codec-packages) will install
25+
TranscodingStreams.jl as well, and so in general you don't need to explicitly
26+
install it.
27+
28+
## Usage
29+
1430
```julia
1531
using TranscodingStreams, CodecZlib
1632

@@ -40,10 +56,12 @@ array = transcode(GzipDecompression(), array)
4056
@assert text == String(array)
4157
```
4258

43-
Each codec has an alias for its transcoding stream type. For example,
44-
`GzipCompressionStream{S} = TranscodingStream{GzipCompression,S} where S<:IO`.
59+
Each codec has an alias to its transcoding stream type for ease of use. For
60+
example, `GzipCompressionStream{S} = TranscodingStream{GzipCompression,S} where
61+
S<:IO`.
62+
63+
## Codec packages
4564

46-
The following packages support the interfaces of TranscodingStreams.jl:
4765
- [CodecZlib.jl](https://github.com/bicycle1885/CodecZlib.jl)
4866
- [CodecBzip2.jl](https://github.com/bicycle1885/CodecBzip2.jl)
4967
- [CodecXz.jl](https://github.com/bicycle1885/CodecXz.jl)

0 commit comments

Comments
 (0)