--- /dev/null
+Zstandard library : usage examples
+==================================
+
+- [Simple compression](simple_compression.c) :
+ Compress a single file.
+ Introduces usage of : `ZSTD_compress()`
+
+- [Simple decompression](simple_decompression.c) :
+ Decompress a single file.
+ Only compatible with simple compression.
+ Result remains in memory.
+ Introduces usage of : `ZSTD_decompress()`
+
+- [Multiple simple compression](multiple_simple_compression.c) :
+ Compress multiple files (in simple mode) in a single command line.
+ Demonstrates memory preservation technique that
+ minimizes malloc()/free() calls by re-using existing resources.
+ Introduces usage of : `ZSTD_compressCCtx()`
+
+- [Streaming memory usage](streaming_memory_usage.c) :
+ Provides amount of memory used by streaming context.
+ Introduces usage of : `ZSTD_sizeof_CStream()`
+
+- [Streaming compression](streaming_compression.c) :
+ Compress a single file.
+ Introduces usage of : `ZSTD_compressStream()`
+
+- [Multiple Streaming compression](multiple_streaming_compression.c) :
+ Compress multiple files (in streaming mode) in a single command line.
+ Introduces memory usage preservation technique,
+ reducing impact of malloc()/free() and memset() by re-using existing resources.
+
+- [Streaming decompression](streaming_decompression.c) :
+ Decompress a single file compressed by zstd.
+ Compatible with both simple and streaming compression.
+ Result is sent to stdout.
+ Introduces usage of : `ZSTD_decompressStream()`
+
+- [Dictionary compression](dictionary_compression.c) :
+ Compress multiple files using the same dictionary.
+ Introduces usage of : `ZSTD_createCDict()` and `ZSTD_compress_usingCDict()`
+
+- [Dictionary decompression](dictionary_decompression.c) :
+ Decompress multiple files using the same dictionary.
+ Result remains in memory.
+ Introduces usage of : `ZSTD_createDDict()` and `ZSTD_decompress_usingDDict()`