Skip to content

nodelogicau/coucal

Repository files navigation

Coucal - Let's Collaborate

Table of Contents

  1. Introduction - What is Coucal?
  2. Purpose - Why would you use Coucal?
  3. Design - How does Coucal work?
  4. Documentation - Where can I learn more about Coucal?

Introduction

Coucal is a platform for semantic linking and publishing of events, actions and resources. Coucal is based on open standards for interoperability, and prioritised information exchange with other tools and platforms.

Content Type Description
Events Resource scheduling, availability and event planning are key functions of Coucal.
Actions Tasks and action tracking
Resources Contacts, resources and groups
Annotations Journaling and annotations

What Coucal is not

Coucal is not intended to be a repository of (non-temporal) data itself, but rather to provide links to the data residing in other tools and platforms. Coucal is primarily focused on temporal and location-sensitive data such as events, annotations, availability, actions, etc.

Coucal is not a direct replacement for any other tool. It works WITH your existing toolchain to provide greater visibility and tracking of your existing business processes.

Purpose

Coucal is the missing link required to bring your existing toolchain together. Instead of pasting URLs into comment fields, tracking work and approvals via email, and too many meeting conflicts, Coucal provides structure and linking between all work processes across different tools.

Check availability of people and resources

Find out where and when team members and resources are available, before scheduling meetings, etc. Build a leave register or booking system easily with Coucal.

Manage cross-team requests and approvals

TBD.

Track initiatives, objectives, tasks and links in one place

TBD.

Design

design.mmd.svg

The Core

The Core module implements persistence and management of user content and system data. The Coucal data model is based on utilizing standard formats such as iCalendar and vCard to represent both system and user data.

API

The API is the primary interface for Coucal, supporting authenticated access to content and system management functions. The API consists of RESTful controllers, Channel callbacks and other API-related concerns (e.g. serialization, authentication, etc.).

Channels

The Channels module supports integration with external channels for sending and receiving data. Channels are configurable, and may include multiple simultaneous options for publish and ingestion of data.

Workflows

The Workflow module provides reactive stream subscribers that respond to specific notifications with predefined and configurable actions.

Handlers use dependency injection to discover and subscribe to relevant streams.

Some handlers may act as both a subscriber and publisher of stream data, whereby they implement a transformation of data for consumption of other stream handlers.

Commands

The Command module provides encapsulated actions invoked by Stream Handlers in response to stream activity. Commands may be used to interact with channels directly or update content.

Coucal defines a default collection of commands, however is designed to be extensible for customization of workflows.

Documentation

See the complete user guide for more detailed documentation on Coucal.

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages