Skip to content

blakemcbride/Kiss

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,320 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KISS Web Application Full Stack Framework

The KISS Framework is a Java-based, full-stack application development framework for developing web-based business applications. KISS can also be used to build command-line utilities, and, in conjunction with Electron, desktop applications that are portable to Windows, macOS, and Linux.

This project is in full release status (not a beta) and is used in production. Visit kissweb.org for more details, or browse the source at github.com/blakemcbride/Kiss.

Public discussion and support is available at Kiss Support.

Quick Start

Presuming you have the Java JDK (tested with Java 17, 21, 25), GIT, and an Internet connection, you can run the following commands to download, install, configure, and run Kiss, tomcat, and the required JAR files:

Be sure the JAVA_HOME and JRE_HOME environment variables are set correctly!

Linux, macOS, BSD, etc.

git clone https://github.com/blakemcbride/Kiss.git
cd Kiss
./bld -v develop

Windows

git clone https://github.com/blakemcbride/Kiss.git
cd Kiss
bld -v develop

In either environment, you can then go to http://localhost:8000 within your browser to use the system. After that, both the front-end and the back-end code can be changed while the system is running. No need for additional compiles or deploys.

Integrations

In addition to enabling the rapid development of web and desktop applications, KISS also provides the following integrations with external systems.

Integrating with External Systems

  • REST Client — make HTTP calls out to third-party APIs.
  • REST Server — accept inbound HTTP calls from external systems and webhooks.

LLM Integrations

  • LLM Providers — built-in support for OpenAI, Anthropic, and Ollama.
  • MCP Server — expose application tools to AI assistants via the Model Context Protocol.
  • MCP Client — consume tools from a remote MCP server, with optional OAuth 2.1 authentication.
  • Embeddings Database — vector storage for retrieval-augmented generation (RAG).

Security

  • OAuth 2.1 Resource Server — validate bearer tokens from any OAuth 2.1 / OpenID Connect authorization server (Auth0, Okta, Keycloak, etc.); MCP servers are automatically protected when configured. See OAuth.md.
  • OAuth 2.1 Authorization Server — issue tokens to MCP clients (or any OAuth client) directly from Kiss: authorization endpoint with PKCE, token endpoint with refresh-token rotation, dynamic client registration (RFC 7591), and the RFC 8414 / JWKS discovery endpoints. Persists keys, clients, and refresh tokens to a private SQLite database independent of the application's main database — no shared schema or operator setup required. See OAuth.md.
  • OAuth 2.1 Client — consume a remote OAuth 2.1-protected server from Kiss: drives the authorization-code + PKCE flow, with automatic server discovery (RFC 9728 / RFC 8414), dynamic client registration when needed, a built-in redirect callback, and transparent access-token refresh with rotation. Supports multiple remote providers configured in application.ini, and shares the authorization server's SQLite database. See OAuth.md.

Training Videos

A 6-part training series on KISS is at:

Documentation

The back-end JavaDoc must be built by you. This can be done by typing:

./bld javadoc               [Linux, macOS, BSD, etc.]
    -or-
bld javadoc                 [Windows]

You then get: work/javadoc/index.html

Support

Commercial support is available from blake@mcbridemail.com

Please help fund this project at https://www.gofundme.com/kissweb

About

Kiss Web Development Framework & LLM interaction

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

 
 
 

Contributors