Skip to content
This repository has been archived by the owner on Sep 6, 2023. It is now read-only.

A command line-based parameterized contracting tool

License

Notifications You must be signed in to change notification settings

informalsystems/themis-contract

Repository files navigation

NOTE: This repository is no longer supported or updated by Informal Systems. If you wish to continue to develop this code yourself, we recommend you fork it.

Themis Contract 🖋

Overview

Themis Contract is a command line-based tool to help with legal contracting. It currently aims to:

  1. Make contracting modular (in a decentralized way).
  2. Make contracting more programmatic (and eventually executable) than is traditionally the case.
  3. Make managing contracts more like managing software (so we can leverage the value that software development processes offer, like version control, continuous integration, etc.).

Disclaimer

Themis Contract is considered alpha quality at present. No semantic versioning will be used just yet. Breaking changes can be released at any time. For the original NodeJS-based prototype of Themis Contract, please see the prototype/v1 branch.

🙋🏾‍♀️ Get Involved

  • Say hi in one of our chat rooms 💬
    • Register on Zulip, our chat platform
    • #introductions is a great place to start
    • #disco-tools is for discussing tooling for distributed co-op organizations (including themis-contract)

Installation

Packaged

MacOS

Use homebrew to Install from the informal.systems tap:

brew install informalsystems/pkgs/themis-contract

Manually

Requirements

In order to install Themis Contract locally, you will need:

Pre-built binaries

Once you have the requirements installed locally, you can simply download the latest release binary for your platform (right now we only build for Linux and MacOS) and put it somewhere in your path (e.g. /usr/local/bin/themis-contract).

From Source

To install from source:

git clone https://github.com/informalsystems/themis-contract.git
cd themis-contract
# once-off
make deps
# Optionally setting THEMIS_INSTALL_DIR to your desired location
# (default is to /usr/local/bin/)
THEMIS_INSTALL_DIR=~/.local/bin make install

Usage

See the following tutorials for details as to how to set up and use Themis Contract to get the most out of it:

More tutorials will be coming soon!

Uninstalling

Since Themis Contract is just a single standalone binary, uninstalling just involves deleting that binary:

rm /usr/local/bin/themis-contract

# Optional: to delete all Themis Contract-related data
rm -rf ~/.themis/contract

Contributing

See CONTRIBUTING.md.

License

Copyright 2020 Informal Systems Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.