Difference between revisions of "Gitbackend"

From Sugar Labs
Jump to navigation Jump to search
(added user workflow)
Line 1: Line 1:
 
== '''Git Backend''' ==
 
== '''Git Backend''' ==
  
'''Overview'''
+
=== '''Overview''' ===
 
 
 
The project is aimed to develop a git based backend for Journal.
 
The project is aimed to develop a git based backend for Journal.
  
Line 13: Line 12:
 
* Look at history of their program
 
* Look at history of their program
 
* Clone others and their programs
 
* 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  
 
* Create different branches  
 
* Merge branches
 
* Merge branches
 
* Fork others program
 
* Fork others program
 
* Make pull request to others program
 
* Make pull request to others program
 +
 +
=== User Workflow ===
 +
<gallery>file:///media/shaifali/New%20Volume/gsoc/sugar/userWorkflow.png
 +
</gallery>
 +
 +
The dia file of above workflow is
 
==== '''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
Line 22: Line 29:
  
 
     We can use [https://developer.github.com/v3/git/ github API] need discussions(Why/Why not):
 
     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.  
+
     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
+
  Desigin UI
 
     UI should allow user to perform following activies in database:
 
     UI should allow user to perform following activies in database:
 
         * fork
 
         * fork

Revision as of 05:38, 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

The dia file of above workflow is

Steps to move on this project:

1. Code to use git as datastore

   Datastore should provide "CRUD" functionality.
   We can use 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 proof, number of requests per hour are limited(60 requests for unauthenticated requestsproof. 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)