• Stars
    star
    208
  • Rank 189,015 (Top 4 %)
  • Language
    CoffeeScript
  • License
    MIT License
  • Created over 10 years ago
  • Updated over 10 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Git-backed real time collaborative editor built with meteor.

jotgit

Git-backed real time collaborative editor built with meteor.

Here's a quick demo: http://youtu.be/z-_wSiGS18U

The current version of jotgit is a prototype that lets you collaboratively edit Markdown files in a local git repository. Then you can save the files (with an optional commit message), and they'll be committed to the repository.

Getting Started

This assumes that you're on Linux or Mac OS X.

First, you'll need to install node.js and meteorite, the package manager for meteor. The recommended way to do this is to first install the node version manager, following these directions. The command will be something like:

curl https://raw.githubusercontent.com/creationix/nvm/v0.11.2/install.sh | bash

Then, restart your terminal, and run

nvm install 0.10

to install node 0.10 (the latest stable release, at the time of writing).

Install meteorite globally (via the node package manager, npm) with

npm install -g meteorite

If you have not yet installed Meteor, do that:

curl https://install.meteor.com | /bin/sh

Clone this repository:

git clone https://github.com/jdleesmiller/jotgit.git

Start up meteor with meteorite:

cd jotgit # or wherever you cloned it
mrt

It should pull in all of the required dependencies. Make some tea.

Then visit localhost:3000 in your browser. Be sure to try with multiple windows!

By default, it loads up the test repository in tests/demo. To point it at another repository, you can either edit server/jotgit.coffee or use meteor settings to specify an alternative projectPath.

About

Jotgit ...

The code is structured in the usual way for a meteor app: the files in server run on the server, the files in client run on the client, and the files in lib run on both. There's also a jotgit-core package in packages/jotgit-core that contains most of the core classes (stuff that is not very meteor-specific).

Roadmap

  • allow remote pushes to the repository (mostly done, but still need to notify web clients after a push)

  • auto-saves

  • multiple projects

  • user accounts

  • some way of handling multiple commit authors (apparently not supported by git)

  • option to commit to github instead of a local git repo

  • file type handling (various text files, binary files)

  • file uploads

License

MIT --- see LICENSE file.

More Repositories

1

docker-chat-demo

Companion repo for my "Lessons from Building a Node App in Docker" article.
HTML
324
star
2

latex-course

An interactive introduction to LaTeX using Overleaf.
TeX
205
star
3

twenty48

Research code for solvers and models of the game of 2048
C++
53
star
4

metime

Time tracker used in my 'How a Technical Co-founder Spends his Time' blog post.
CoffeeScript
53
star
5

wedding

A simple rails app for distributing wedding information and managing the guest list.
Ruby
32
star
6

ds-docker-demo

Introduction to Docker for Digital Science Tech Forum
HTML
21
star
7

discrete_event

Event-based discrete event simulation in Ruby
Ruby
15
star
8

gratr

Import of GRATR (GRAph Theory in Ruby) (version 0.5.1; svn rev 38; 20080616) with some minor fixes for ruby 1.9.
Ruby
15
star
9

todo-demo

Companion repo for my "Testing with Node and Docker Compose" articles.
JavaScript
8
star
10

finite_mdp

Solve finite Markov Decision Process models.
Ruby
8
star
11

gemma

Generate helpful rake tasks from your gemspec.
Ruby
5
star
12

omniauth-figshare

An OmniAuth Strategy for the figshare API. You can use it to authenticate users against the figshare API in your ruby on rails / sinatra / other rack-based web application.
Ruby
5
star
13

rucas

(The beginnings of) a Computer Algebra System for Ruby
Ruby
4
star
14

relax4_ruby

The RELAX IV code for Minimum Cost Network Flow Problems.
C
4
star
15

cross_entropy

Ruby library for solving optimisation problems with the Cross Entropy Method.
Ruby
3
star
16

push_safety

Avoid accidentally pushing a private gem to rubygems.org (reduce paranoia).
Ruby
3
star
17

traffic_game

A game based on Martin Treiber's applet from www.traffic-simulation.de
Java
3
star
18

carnd-cloning

Train a driverless car to drive around a simulated race track using end-to-end deep learning β€” from camera images to steering commands. This is the code for my 'Zero to Driverless Race Car with Deep Learning' blog post and talk.
Python
3
star
19

track_jd

Java
2
star
20

syscalls_ruby

Constants for syscall numbers.
Ruby
2
star
21

jdleesmiller.github.io

My very basic website.
HTML
2
star
22

si_taxi

Simple taxi / personal rapid transit (PRT) model.
C++
1
star
23

event_state

Helper for implementing stateful protocols for EventMachine.
Ruby
1
star
24

block_supervisor

Run a block with control over syscalls, resources and file handles.
Ruby
1
star
25

compare_compressors

Evaluate different compression tools and their settings by running them on a sample of data.
Ruby
1
star