Skip to content

cerne-io/platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Narrative Platform - Narrative Instrument

An interactive web application designed to facilitate and manage narrative instrument sessions for organizations using the Narrative Platform methodology.

Project Overview

Narrative Platform is a digital platform designed to facilitate rapid, participatory cultural transformation within organizations. By leveraging data-driven insights and structured collaborative processes, it enables teams to identify emerging patterns and implement actionable interventions.

Key Features

  • Pattern Recognition: Collects anonymous feedback to uncover cultural patterns while minimizing bias from traditional interviews or surveys.
  • Voice-to-Text Integration: Supports automated transcription of audio stories using OpenAI Whisper, enabling rapid analysis of spoken narratives.
  • Stakeholder Engagement: Brings diverse voices into the analysis and solution process, ensuring cultural change is co-owned and context-aware.
  • Actionable Insights: Converts collected data into concrete interventions within just one week.
  • Transparent Change Management: Ensures interventions are based entirely on real stakeholder experiences, not assumptions.

Getting Started

Prerequisites

  • Node.js (v18+)
  • A Supabase account (for backend services)
  • OpenAI API key (for AI assistant features)
  • Antropic API key (optional, for alternative AI model)
  • Perplexity API key (optional, for alternative AI model)

Installation

  1. Clone this repository:

    git clone https://github.com/cerne-io/platform.git
    cd narrative-platform
    
  2. Install dependencies:

    npm install
    
  3. Copy the environment example file and fill in your values:

    cp .env.example .env
    
  4. Configure your environment variables in the .env file:

    • Get your Supabase URL and anon key from your Supabase project dashboard
    • Obtain an OpenAI API key from OpenAI's platform
    • (Optional) Get a Perplexity and/or Anthropic API key if you want to use their AI services
  5. Start the development server:

    npm run dev
    

Supabase Edge Functions

This project uses Supabase Edge Functions for server-side operations. After setting up your Supabase project:

  1. Add your API keys to Supabase Edge Functions secrets:

     supabase secrets set OPENAI_API_KEY=your_openai_api_key_here
     supabase secrets set ANTHROPIC_API_KEY=your_anthropic_api_key_here
     supabase secrets set PERPLEXITY_API_KEY=your_perplexity_api_key_here
     supabase secrets set APP_NAME="Narrative Platform"
     supabase secrets set SUPPORT_EMAIL="contact@cerne.io"
     supabase secrets set EMAIL_PRIMARY_COLOR="#2563eb"
     supabase secrets set EMAIL_DANGER_COLOR="#dc2626"
    
  2. Deploy the edge functions:

    supabase functions deploy
    

Self-Hosting

For detailed instructions on setting up your own instance, refer to the Self-Hosting Guide.

Environment Variables

Variable Description Required
VITE_SUPABASE_URL Your Supabase project URL Yes
VITE_SUPABASE_ANON_KEY Your Supabase project anonymous key Yes
VITE_INITIAL_ADMIN_EMAIL Email of the first user to be promoted to SuperAdmin Yes (for setup)
VITE_ENABLE_DEBUG Enable debug mode (true/false) No
VITE_APP_NAME Custom platform name (Default: "Narrative Platform") No
VITE_SUPPORT_EMAIL Support contact shown in footer No
VITE_APP_LOGO_URL URL for an external logo image No
OPENAI_API_KEY OpenAI API key (for Edge Functions) For AI
ANTHROPIC_API_KEY Anthropic API key (for Edge Functions) Optional
PERPLEXITY_API_KEY Perplexity API key (for Edge Functions) Optional
APP_NAME Custom platform name (for Edge Functions) Optional
SUPPORT_EMAIL Support contact shown in emails (for Edge Functions) Optional
EMAIL_PRIMARY_COLOR Primary brand color for emails Optional
EMAIL_DANGER_COLOR Danger/Alert color for emails Optional

Development

  • Feature flag VITE_ENABLE_DEBUG=true can be enabled for additional debugging information
  • The project uses React, Vite, TailwindCSS, and shadcn/ui for the frontend
  • Supabase provides authentication, database, and serverless functions

Trademark Notice

"Cerne.io" is a trademark of Hosting Learning OU. "Narrative Platform" is the generic name for the self-hosted software. Self-hosting is permitted for legitimate Narrative Platform processes as defined in our Trademark Policy. Modified versions serving different purposes must be renamed.

License

Apache License Version 2.0 - read LICENSE.md

Acknowledgments

We would like to acknowledge the work on PNI (Participatory Narrative Inquiry) by Cynthia F. Kurtz (cfkurtz.com), her opus "Working with Stories" (workingwithstories.org), and the work (together with Paul D. Fernhout) on the open source NarraFirma™ application that you can find at github.com/pdfernhout/narrafirma.

Contact

contact@cerne.io

About

Open Source Narrative Platform for consultants and facilitators.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors