Difference between revisions of "Gitbackend"

From Sugar Labs
Jump to navigation Jump to search
Line 24: Line 24:
  
 
The dia file of above workflow is present [https://drive.google.com/file/d/0B-LVD_AaEDFjSkZoMVgwT3VFSnM/view?usp=sharing here].
 
The dia file of above workflow is present [https://drive.google.com/file/d/0B-LVD_AaEDFjSkZoMVgwT3VFSnM/view?usp=sharing here].
==== '''Steps to move on this project:''' ====
+
 
 +
=== '''Steps to move on this project:''' ===
 
1. Code to use git as datastore
 
1. Code to use git as datastore
 
     Datastore should provide "CRUD" functionality.
 
     Datastore should provide "CRUD" functionality.
 
    We can use [https://developer.github.com/v3/git/ github API] need discussions(Why/Why not):
 
    API have certain limitations like the git API limits the support of blobs up to 100 megabytes in size [https://developer.github.com/v3/git/blobs/ proof], number of requests per hour are limited(60 requests for unauthenticated requests[https://developer.github.com/v3/#rate-limiting proof]. So it is better to build the datastore from scratch. 
 
  Desigin UI
 
    UI should allow user to perform following activies in database:
 
        * fork
 
        * clone
 
        * pull request
 
        * merge
 
        * versioning(see history)
 

Revision as of 05:00, 5 April 2015

Git Backend

Overview

The project is aimed to develop a git based backend for Journal.

Functional Requirements

Users(kids) should be able to:

  • Register a unique username
  • Login with his/her unique username
  • Start versioning their program
  • Look at history of their program
  • Clone others and their programs
  • Save new content to versioned programs
  • Look at difference between current state of program and versioned state
  • Create different branches
  • Merge branches
  • Fork others program
  • Make pull request to others program

User Workflow

User workflow image is share at http://gyazo.com/3c6e648727cecaa72f7531c12f48f01e%7Cuser workflow

The dia file of above workflow is present here.

Steps to move on this project:

1. Code to use git as datastore

   Datastore should provide "CRUD" functionality.