Line 1: |
Line 1: |
| == '''Git Backend''' == | | == '''Git Backend''' == |
| + | |
| + | '''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. |
| | | |
| + | '''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 |
| + | * Create different branches |
| + | * Merge branches |
| + | * Fork others program |
| + | * Make pull request to others program |
| ==== '''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 8: |
Line 22: |
| | | |
| 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. |
− | 2. 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 |