Go to file
Joris Vink ea5b89d20b Move orbit functionality into kore directly.
Makes more sense and reads easier:

kore create myapp
kore build myapp
kore run myapp

Note that kore retains its cli options (if no command was given),
meaning you can still start kore in the traditional way as well.

The command options are simply to make development easier.
2014-08-01 13:59:47 +02:00
conf Add worker_rlimit_nofiles as a configurable option. 2014-07-31 09:14:03 +02:00
contrib Add glue to build task_curl example under osx 2014-07-18 16:09:15 +02:00
includes Move orbit functionality into kore directly. 2014-08-01 13:59:47 +02:00
src Move orbit functionality into kore directly. 2014-08-01 13:59:47 +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 Move orbit functionality into kore directly. 2014-08-01 13:59:47 +02:00
README.md Note the BENCHMARK option in README 2014-08-01 10:30:29 +02:00

README.md

Coverity Status 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
  • 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)
  • BENCHMARK=1 (compiles Kore without OpenSSL)
  • 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/