Go to file
Joris Vink 693a07250f bump copyright years 2014-10-14 16:18:23 +02:00
conf Add PUT/DELETE/HEAD methods (finally). 2014-10-08 11:03:14 +02:00
examples Add PUT/DELETE/HEAD methods (finally). 2014-10-08 11:03:14 +02:00
includes Add PUT/DELETE/HEAD methods (finally). 2014-10-08 11:03:14 +02:00
src bump copyright years 2014-10-14 16:18:23 +02:00
.gitignore Ignore DSYM on osx 2014-04-12 18:49:32 +02:00
LICENSE Keep on hackin' Keep on hackin' 2014-04-24 11:18:40 +02:00
Makefile Allow kore to build with openssl from osx brew. 2014-10-13 11:53:56 +02:00
README.md Bump 2014-10-14 16:16:06 +02:00

README.md

About

Kore (https://kore.io) is an ultra fast web server / framework for web applications developed in C. It provides a set of API functions you can use to build a dynamic library which is loaded into Kore directly.

Kore is an ideal candidate for developing robust, fast and safe web applications.

Features

  • Supports SNI
  • Supports SPDY/3.1
  • Supports HTTP/1.1
  • Lightweight background tasks
  • Built-in parameter validation
  • Only HTTPS connections allowed
  • Multiple modules can be loaded at once
  • Built-in asynchronous PostgreSQL support
  • Load your web application as a precompiled C library
  • Modules can be reloaded on-the-fly, even while serving content
  • Event driven (epoll/kqueue) architecture with per CPU core worker processes

License

  • Kore is licensed under the ISC license

Platforms supported

  • Linux
  • OpenBSD
  • FreeBSD
  • OSX

See https://kore.io/doc/#requirements for more information.

Releases

Building Kore

Requirements

  • libz
  • openssl >= 1.0.1i

Requirements for background tasks

  • pthreads

Requirements for pgsql

  • libpq

Normal compilation and installation:

# git clone https://github.com/jorisvink/kore.git
# cd kore
# make
# make install

If you would like to build a specific flavor, you can enable those by setting a shell environment variable before running make.

  • TASKS=1 (compiles in task support)
  • PGSQL=1 (compiles in pgsql support)
  • DEBUG=1 (enables use of -d for debug)
  • BENCHMARK=1 (compiles Kore without OpenSSL)
  • KORE_PEDANTIC_MALLOC=1 (zero all allocated memory)

Example libraries

You can find example libraries under examples/.

The examples contain a README file with instructions on how to build or use them.

I apologize for unclear examples or documentation, I am working on improving those.

Bugs, contributions and more

If you run into any bugs, have suggestions or patches please contact me at joris@coders.se.

More information can be found on https://kore.io/