Skip to content

OpenLoft Collaborative Editor featuring Chat, Video Calling, Collaborative Drawing, Writing and Theater

License

Notifications You must be signed in to change notification settings

mixflame/openloft.cr

Repository files navigation

openloft.cr

Amber Framework Donate

This is OpenLoft Collaborative Editor with call reconnection, using Amber/Crystal. Originally written in Ruby on Rails with ActionCable and ported to Crystal for speed. Featuring: HTML Chat, WebRTC Video/Audio, Collaborative Canvas, Collaborative Text Editor, Shared Video Player.

Help: irc.libera.chat #openloft

Getting Started

These instructions will get a copy of this project running on your machine for development and testing purposes.

Please see deployment for notes on deploying the project in production.

Prerequisites

This project requires Crystal (installation guide).

Development

To start your Amber server:

  1. Install dependencies with shards install
  2. Build executables with shards build
  3. Create and migrate your database with bin/amber db create migrate. Also see creating the database.
  4. Start Amber server with bin/amber watch
  5. Run redis-server

Now you can visit http://localhost:3000/ from your browser.

Getting an error message you need help decoding? Check the Amber troubleshooting guide, post a tagged message on Stack Overflow, or visit Amber on Gitter.

Using Docker? Please check Amber Docker guides.

Tests

To run the test suite:

crystal spec

Contributing

  1. Fork it ( https://github.com/mixflame/openloft.cr/fork )
  2. Create your feature branch ( git checkout -b my-new-feature )
  3. Commit your changes ( git commit -am 'Add some feature' )
  4. Push to the branch ( git push origin my-new-feature )
  5. Create a new Pull Request

Contributors

  • mixflame Jonathan Silverman - creator, maintainer