Code Monkey home page Code Monkey logo

kitty's Introduction


Kitty is a simple webserver, it allows you to easily host static websites, with minimal configuration and ease of use.




Installing

Development

You can either run it directly in the repo like so:

$ git clone https://github.com/keysmash-studios/kitty

$ cd kitty

$ make start

Executable

You can just download a build from the Releases page for a more stable build. Or compile the upstream version:

$ git clone https://github.com/keysmash-studios/kitty

$ cd kitty

$ make compile

# then run your platform's executable
$ build/kitty-[linux|macos|.exe]
# preferably rename them or something

You can also simply run make install if you're on Linux.




Kitty is...

  • Not a replacement to nginx, apache, or alike

  • Not a full on replacement for any web server

  • Supposed to make it easy to host static files

  • Supposed to make it easy to host multiple sites




Tracking Progress

All progress, bugs, issues and alike is tracked through git-bug, with it installed, simply create and identity (for first time use) and use the webui or termui, or cli if you're into that.

$ git bug user create

$ git bug webui
# Or
$ git bug termui

However feel free to use the GitHub issues as well for reporting bugs, as anybody can do that without credentials.




History of the name

It's quite simple funny enough, when "learning" about webservers in IT class we were being told to use WampServer to host a Wordpress site.

I then questioned "Why don't you just use caddy", I then got told "Kitty, make our own, and name it kitty"

Thanks Caddy for the inspiration to our name.

kitty's People

Contributors

kiruporuno avatar

kitty's Issues

Basic authentication

Purpose: To provide a simple way of password protecting sites/directories

Whether it's compatible with htpasswd is something to be considered here. But preferably use some hash library, give the user the ability to generate their hashes, and choose the hash algorithm, (SHA128/256/512, MD5 etc) or just plaintext.

Preferably set it up like a htpasswd, (user:password) where password is the hashed or plaintext password, then you tell the config to use a certain hash algorithm, and it'll then convert it when checking the passwords.

Basic hosting

Purpose: To actually host a specific folder

More or less the most basic parts of kitty aka opening up a port hosting a HTTP server on a folder.

Config

Purpose: To configure sites and kitty itself

Either a simple json config or commandline arguments. Like below:

$ kitty --site <path>
{
    "enabled_sites": [
        "cool site",
    ],
    "sites": [
        {
            "name": "cool site",
            "path": "/path/to/site",
        }
    ]
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.