In 2013, Canonical was trying to raise funds for the release of the Ubuntu Edge smartphone . A feature of the product was to be the ability to transform a smartphone into a full-fledged PC. Alas, it was not possible to collect the necessary amount, so the dream of creating a universal device remained a dream.
For my part, I have long been looking for versatility on the part of software, not hardware. Today I can confidently say that I have found the necessary combination: Git and JavaScript.
Earlier, I have already described both the advantages of browser applications using the example of the nCKOB static site generator , and the advantages of replacing the next server from API to Git for communicating with the outside world using the example of the GitBudget spending accounting application . After the release of GitBudget, I spent the rest of 2020 on a system that allows you to create browser applications right in the browser. I named this system GitJS.
Gitjs
Git on the new system is used to:
- long-term data storage outside the device;
- communication with the outside world;
- delivery of the application to the device via HTTP.
, Git , (HTTP) . , : /, /.
Git FTP/rsync, SourceForge/GitHub/BitBucket/GitLab, FTP/rsync Isomorphic-Git.
JS ( HTML/CSS) :
- ;
- ;
- .
GitJS ( ):
GitJS , : , .
, HTML - Git .
GitJS №1: GitJS
:
1.1.
1.2. Git
: .
1.3.
1.4. LocalStorage/IndexedDB
1.5. LocalStorage/IndexedDB
GitJS №2:
:
2.1.
2.2.
2.3.
2.4.
GitJS .
1. CORS
Git CORS. Git, , Git.
2.
, . , , .. .
/. , , .. .
The previously mentioned nCKOB will become a GitJS application this year, allowing you to create static sites without leaving your browser. Let's see what happens.
PS: The first image is the painting "Bayan", written by Viktor Vasnetsov in 1910.