Skip to content
@unikraft

Unikraft

A Unikernel Development Kit. Extreme Specialization for Security and Performance.
Unikraft logo

The fast, secure and open-source
Unikernel Development Kit

Unikraft powers the next-generation of cloud native, containerless applications by enabling you to radically customize and build custom OS/kernels; unlocking best-in-class performance, security primitives and efficiency savings.

Homepage · Documentation · Report Bug · Feature Request · Join Our Discord · X.com



Features

  • Instantaneous Cold-boots

    • While Linux-based systems might take tens of seconds to boot, Unikraft will be up in milliseconds.
  • Modular Design 🧩

    • Unikraft boasts a modular design approach, allowing developers to include only necessary components, resulting in leaner and more efficient operating system configurations.
  • Optimized for Performance 🚀

    • Built for performance, Unikraft minimizes overheads and leverages platform-specific optimizations, ensuring applications achieve peak performance levels.
  • Flexible Architecture Support 💻

    • With support for multiple hardware architectures including x86, ARM, (and soon RISC-V), Unikraft offers flexibility in deployment across diverse hardware platforms.
  • Broad Language and Application Support 📚

    • Unikraft offers extensive support for multiple programming languages and hardware architectures, providing developers with the flexibility to choose the tools and platforms that best suit your needs.
  • Cloud and Edge Compatibility ☁️

    • Designed for cloud and edge computing environments, Unikraft enables seamless deployment of applications across distributed computing infrastructures.
  • Reduced Attack Surface 🛡️

    • By selectively including only necessary components, Unikraft reduces the attack surface, enhancing security in deployment scenarios. Unikraft also includes many [additional modern security features][unikraft-security-features].
  • Developer Friendly 🛠️

    • Unikraft's intuitive toolchain and user-friendly interface simplify the development process, allowing developers to focus on building innovative solutions.
  • Efficient Resource Utilization 🪶

    • Unikraft optimizes resource utilization, leading to smaller footprints (meaning higher server saturation) and improved efficiency in resource-constrained environments.
  • Community-Driven Development 👥

    • Unikraft is an open-source project driven by a vibrant community of over 100 developers, fostering collaboration and innovation from industry and academia.

Quick Start

Install the companion command-line client [kraft][kraft]:

# Install on macOS, Linux, and Windows:
curl -sSfL https://get.kraftkit.sh | sh

See [additional installation instructions][unikraft-cli-install].

Run your first ultra-lightweight unikernel virtual machine:

kraft run unikraft.org/helloworld:latest

View its status and manage multiple instances:

kraft ps --all

View the community image catalog in your CLI for more apps:

kraft pkg ls --update --apps

Or browse through one of the many [starter example projects][unikraft-catalog-examples].

Get Started

Getting started with Unikraft is easy. Yet, there are so many things to learn and explore! We recommend to choose a focus area first to get started:

Community

Looking to get involved? Contributions are welcome! There are weekly communitiy meetings on our Discord server which follow on-going projects. There are also unclaimed projects, open issues, and opportunities for bachelors and masters theses.

Affiliation

Unikraft is a member of the Linux Foundation and is a Xen Project Incubator Project. The Unikraft name, logo and its mascot are trademark of Unikraft GmbH.


LinuxFoundation logo     XenProject logo

Pinned Loading

  1. unikraft unikraft Public

    A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.

    C 2.9k 1.5k

  2. kraftkit kraftkit Public

    Build and use highly customized and ultra-lightweight unikernel VMs.

    Go 254 66

  3. meeting-notes meeting-notes Public

    Archive of Unikraft Technical Meetings.

    4 19

  4. catalog catalog Public

    Unikraft Applications & Examples Catalog

    C 42 42

Repositories

Showing 10 of 166 repositories
  • catalog-core Public

    Catalog of applications using first principles tools

    unikraft/catalog-core’s past year of commit activity
    Shell 4 12 12 2 Updated Dec 26, 2024
  • fork-glibc Public Forked from bminor/glibc

    Unofficial mirror of sourceware glibc repository. Updated daily.

    unikraft/fork-glibc’s past year of commit activity
    C 0 GPL-2.0 406 0 0 Updated Dec 25, 2024
  • kraftkit Public

    Build and use highly customized and ultra-lightweight unikernel VMs.

    unikraft/kraftkit’s past year of commit activity
    Go 254 BSD-3-Clause 66 70 42 Updated Dec 22, 2024
  • docs Public

    The front page and documentation for the Unikraft Open-Source Project.

    unikraft/docs’s past year of commit activity
    MDX 34 86 37 (4 issues need help) 27 Updated Dec 21, 2024
  • lib-sqlite Public

    Unikraft port of SQLite

    unikraft/lib-sqlite’s past year of commit activity
    C 0 7 1 1 Updated Dec 20, 2024
  • lib-compiler-rt Public

    Unikraft port of compiler-rt, a runtime library

    unikraft/lib-compiler-rt’s past year of commit activity
    C 0 11 4 3 Updated Dec 20, 2024
  • lib-libuuid Public

    Unikraft port of the libuuid library

    unikraft/lib-libuuid’s past year of commit activity
    C 0 5 0 0 Updated Dec 20, 2024
  • lib-zlib Public

    Unikraft port of the zlib compression library

    unikraft/lib-zlib’s past year of commit activity
    0 12 1 4 Updated Dec 20, 2024
  • lib-lua Public

    Unikraft port of the Lua language

    unikraft/lib-lua’s past year of commit activity
    C 2 8 1 0 Updated Dec 20, 2024
  • lib-redis Public

    Unikraft port of Redis in-memory data structure store

    unikraft/lib-redis’s past year of commit activity
    C 3 12 2 0 Updated Dec 20, 2024