Add an introductory section to README.md. Fixes #16.

This commit is contained in:
Sönke Ludwig 2017-06-12 13:56:19 +02:00
parent 8eece82992
commit b5952208bc
No known key found for this signature in database
GPG key ID: D95E8DB493EE314C

View file

@ -1,5 +1,27 @@
vibe.d core module
==================
[![vibe.d](https://vibed.org/images/logo-and-title.png)](https://vibed.org)
vibe.d core package
===================
The core package provides the low level I/O and concurrency primitives that are used to implement the higher level systems:
- Event loop management
- Fiber based lightweight tasks, including task local storage and `std.concurrency` integration
- Files, sockets, timers
- Stream type definitions (used for files, sockets and higher level stream types)
- Synchronization primitives (mutexes, condition variables, semaphores, cross task/cross thread events)
- Logging facilities
- Command line argument parsing
- Various smaller utilities
The fundamental building block is the fiber based task concept, together with the event based asynchronous I/O model. The enables developing highly scalable I/O concurrent applications without running into the complexities and design implications that asynchronous I/O programming models usually impose. See the [features page](https://vibed.org/features) for a more detailed explanation.
[![DUB Package](https://img.shields.io/dub/v/vibe-core.svg)](https://code.dlang.org/packages/vibe-core)
[![Posix Build Status](https://travis-ci.org/vibe-d/vibe-core.svg?branch=master)](https://travis-ci.org/vibe-d/vibe-core)
[![Windows Build status](https://ci.appveyor.com/api/projects/status/eexephyroa7ag3xr/branch/master?svg=true)](https://ci.appveyor.com/project/s-ludwig/vibe-core/branch/master)
Separation of the former `vibe-d:core` package
----------------------------------------------
This is the designated successor of the `vibe-d:core` sub package of [vibe.d 0.7.x](https://github.com/rejectedsoftware/vibe.d.git). The API is mostly compatible from a library user point of view, but the whole library has received some heavy lifting under the surface, close to a rewrite. Most classes have been replaced by reference counting structs and `@safe nothrow` attributes are now used throughout the library, whenever possible. Adding `@nogc` on the other hand could only be done in a very limited context due to its viral nature and the lack of an `@trusted` equivalent.
@ -9,10 +31,6 @@ Finally, the stream design has received two big changes. Streams can now either
The implementation is mostly finished, except for final production testing.
[![DUB Package](https://img.shields.io/dub/v/vibe-core.svg)](https://code.dlang.org/packages/vibe-core)
[![Posix Build Status](https://travis-ci.org/vibe-d/vibe-core.svg?branch=master)](https://travis-ci.org/vibe-d/vibe-core)
[![Windows Build status](https://ci.appveyor.com/api/projects/status/eexephyroa7ag3xr/branch/master?svg=true)](https://ci.appveyor.com/project/s-ludwig/vibe-core/branch/master)
Supported compilers
-------------------