Skip to content

celluloid-camp/EspeCelluloid

Repository files navigation

Espect@tor

License: MIT Docker Build Gitter chat

What is this?

Espect@tor is a collaborative video annotation application designed for educational purposes.

Find a PeerTube video, choose an educational objective, annotate the video, share it with your students, collect their answers, answer their questions.

✨ Demo

Head to https://especellu.huma-num.fr/, create an account and click where you think you should!

We'd appreciate your feedback about the application UX and design, as well as bug reports - don't hesitate to report an issue!

Who's behind it?

Espect@tor was born from a research project lead by CHANTRAINE Cécile (cecile.chantraine_braillon@univ-lr.fr), a professor at La Rochelle Université. Their work focus on educational science and digital humanities.

Espect@tor is maintained by LARBI Maya, and we are actively looking for contributors and maintainers. Don't hesitate to drop us a line on gitter!

Setup

Prerequisites

Environment

Espect@tor was designed to run on a Linux server.

To deploy and install Espect@tor, knowing your way around the command-line is required. Using an OSX or Linux workstation is highly recommended.

Tools

  • install the latest and greatest version of git (obviously)
  • install the latest version of nodejs
  • install the latest version of Yarn and use it instead of NPM. The project is organized as a monorepo so it needs yarn to leverage Yarn workspace

📦 Database

You'll need a working PostgreSQL server, version 9.6 or later.

For development purpose, you can use the provided Docker Compose docker compose file and run the command:

docker-compose up -d

Then:

  1. create a user for Espect@tor
  2. create a database owned by this user. You can follow this tutorial to get setup quickly.

Emails

A working SMTP server is required to send account confirmation emails.

For development purpose, you could use your email account SMTP credentials, for instance gmail, or a dedicated service, such as mailtrap

Installation from source

First steps

Fire up a terminal and run the following commands:

git clone https://github.com/celluloid-camp/EspeCelluloid
cd EspeCelluloid/
yarn

Configuration

In a terminal, at the root of the repository, run

cp sample.env .env

Open the newly created .env file with your favorite text editor and set the values that'll work for you.

Docker container

For a quick run use the docker command line :

docker container run --rm --name especulloid \
-e CELLULOID_PG_HOST='localhost' \
-e CELLULOID_PG_PORT=5432  \
-e CELLULOID_PG_DATABASE='celluloid' \
-e CELLULOID_PG_USER='postgres' \
-e CELLULOID_PG_PASSWORD='root' \
-e CELLULOID_COOKIE_SECRET='XXX' \
--net=host \
ghcr.io/celluloid-camp/especulloid :v1

Running the app in development mode

At the root of your repository, run

yarn dev

This will trigger an interactive build, open up the app in a browser window while continuously watching the source files for modifications.

that's it! if everything worked without errors, you should be all set. If not, please carefully review the instructions above.

Building and starting the app in production mode

At the root of your repository, run

yarn build
yarn start

You should be able to access your app at http://localhost:3001

Building and starting the app as a docker container

Open a terminal at the root of your repository, then run

docker compose -f Dockerfile

(make sure Docker is properly installed beforehand!)

Contributing

We are actively looking for motivated contributors!.

Do not hesitate to open a pull request, contact us on gitter or report a bug!

Roadmap

  • Administration GUI: content curation and moderation, user administration
  • Real-time annotation and comment updating using Websockets or SSE

Technical Stack

Before contributing to the development of Espect@tor, you should get familiar with some of the following technologies:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages