Skip to content

raymcdermott/reptile-tail

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 

REPtiLe server CLI

A Clojure CLI to the REPtiLe server to expose a shared PREPL

The CLI depends on the the server lib reptile-lib - a server that can be started in various contexts for example the dev env or the CLI.

I have a sister UI project reptile-tongue - a browser based client for REPtiLe.

Usage - standalone mode

In this mode, a PREPL socket server will be started as in process.

The command takes these run time parameters: http-port - a number above 1024, on which the web server will be exposed shared-secret - to hand out to clients so that they can connect

$ clojure -A:reptile 8888 warm-blooded-lizards-rock

Usage - connected mode

In this mode, another process is running a PREPL socket server and REPtiLe will connect to it.

The command takes these run time parameters: http-port - a number above 1024, on which the web server will be exposed shared-secret - to hand out to clients so that they can connect

socket-host - the host which is running the socket server socket-port - port number for socket server

$ clojure -A:reptile 8888 warm-blooded-lizards-rock localhost 9075

An example of an application that can be used as the other process in this mode is the add-lib-demo-app

Plan

The first version will be considered feature complete once the server provides

  • Shared REPL state
  • Shared view of edits in real-time
  • Shared REPL history
  • Authentication using shared secret
  • Dynamic addition of new libraries to the REPL
  • Documentation to explain client / server hosting options
  • Limit user count (2, 3, 4, etc...)
  • Limit users based on user names (jane, joe, mary, etc...)

Planned features

After the initial version these additional features are planned

  • Incremental feedback on long running REPL evaluations
  • Cancel long running REPL evaluations
  • Choice of Java / node runtime REPLs
  • Investigate GraalVM

License

Copyright © 2018 Ray McDermott

Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.

About

WS middleware server for REPtiLe - a shared REPL

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published