Go to file
2014-07-03 22:58:04 +02:00
contrib Bring back pgsql_test.c 2014-07-03 22:40:03 +02:00
includes Normalize kore_*.h headers 2014-07-03 22:14:46 +02:00
src Check for pg version >= 90200 before using PGRES_SINGLE_TUPLE 2014-07-03 22:58:04 +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 Install kore headers under /usr/local/include/kore 2014-07-03 22:39:16 +02:00
README.md remove balsy text 2014-07-03 22:41:56 +02:00

About

Kore (https://kore.io) is a fast webserver written in C for web applications developed in C. It provides a small 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
  • 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
  • Event driven architecture with per CPU core worker processes
  • Modules can be reloaded on-the-fly, even while serving content

License

  • Kore is licensed under the ISC license

Platforms supported

  • Linux
  • OpenBSD
  • FreeBSD
  • OSX

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

Releases

Building Kore

Requirements

  • libz
  • openssl >= 1.0.1g

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)
  • KORE_PEDANTIC_MALLOC=1 (zero all allocated memory)

Example libraries

You can find example libraries under contrib/examples/.

The examples should be compiled using the supplied build.sh scripts and assume you have installed the header files using make install.

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/