Skip to content

Commit ec63690

Browse files
Update readme.md according to fork (and restoring citations)
1 parent df1e179 commit ec63690

File tree

1 file changed

+82
-5
lines changed

1 file changed

+82
-5
lines changed

readme.md

Lines changed: 82 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,74 @@
1-
# BrowserFS DOM Backends
1+
# @BrowserFS / DOM Backends - iontach
22

3-
[BrowserFS](https://github.com/browser-fs/core) backends for DOM APIs. DOM APIs are *only* available natively in browsers.
3+
[@BrowserFS](https://github.com/saoirse-iontach/browser-fs-core) backends for DOM APIs. \
4+
DOM APIs are *only* available natively in browsers.
45

5-
Please read the BrowserFS documentation!
6+
**BrowserFS** is an in-browser file system that emulates the [Node JS file system API](http://nodejs.org/api/fs.html) and supports storing and retrieving files from various backends. BrowserFS also integrates nicely with other tools.
7+
8+
> [!NOTE]
9+
> **@ZenFS** is an (breaking) update of **BrowserFS**, <ins>with a **node:fs** interface</ins>. <sub>_As of April 2024, it is still in development, that's to say instable and not properly working (expectially encodings, with bad tests). More over contributors are actually dismissed. And **citation of original academic papers was sadly discarded...**_</sub>
10+
>
11+
> **@BrowserFS** is [transient](//github.com/browser-fs/NOTICE) project <sub>_from **BrowserFS** towards **@ZenFS**, (illegitimacy?) claiming to be the next **BrowserFS** (in fact it is **@ZenFS** before rebranding)_</sub>
12+
> [!IMPORTANT]
13+
> <ins>**@BrowserFS-iontach**</ins> is a bugfixed fork of **@BrowserFS @1.0**.
14+
> | Project | author | timeline | links |
15+
> | -------------- | --------- | :---------------: | :---: |
16+
> | **BrowserFS** | John Vilk | 2014 - 2017 | [npm](//www.npmjs.com/package/browserfs) [github](//github.com/jvilk/BrowserFS) |
17+
> | **@BrowserFS** | dr-Vortex | 09/2023 - 03/2024 | [npm](//www.npmjs.com/org/browserfs) [github](//github.com/browser-fs) |
18+
> | **@ZenFS** | dr-Vortex | 03/2024 - ... | [npm](//www.npmjs.com/org/zenfs) [github](//github.com/zen-fs) |
19+
>
20+
> <sup>_dr-Vortext_ is an alias of _James P_</sup>
21+
### Citing
22+
23+
BrowserFS is a component of the [Doppio](http://doppiojvm.org/) and [Browsix](https://browsix.org/) research projects from the PLASMA lab at the University of Massachusetts Amherst. If you decide to use BrowserFS in a project that leads to a publication, please cite the academic papers on [Doppio](https://dl.acm.org/citation.cfm?doid=2594291.2594293) and [Browsix](https://dl.acm.org/citation.cfm?id=3037727).
24+
25+
<details><summary><i>citations</i></summary>
26+
27+
- > John Vilk and Emery D. Berger. Doppio: Breaking the Browser Language Barrier. In
28+
*Proceedings of the 35th ACM SIGPLAN Conference on Programming Language Design and Implementation*
29+
(2014), pp. 508–518.
30+
31+
<details><summary><i>references</i></summary>
32+
33+
```bibtex
34+
@inproceedings{VilkDoppio,
35+
author = {John Vilk and Emery D. Berger},
36+
title = {{Doppio: Breaking the Browser Language Barrier}},
37+
booktitle = {Proceedings of the 35th {ACM} {SIGPLAN} Conference
38+
on Programming Language Design and Implementation},
39+
pages = {508--518},
40+
year = {2014},
41+
url = {http://doi.acm.org/10.1145/2594291.2594293},
42+
doi = {10.1145/2594291.2594293}
43+
}
44+
```
45+
</details>
46+
47+
- > Bobby Powers, John Vilk, and Emery D. Berger. Browsix: Bridging the Gap Between Unix and the Browser.
48+
In *Proceedings of the Twenty-Second International Conference on Architectural Support
49+
for Programming Languages and Operating Systems* (2017), pp. 253–266.
50+
51+
<details><summary><i>references</i></summary>
52+
53+
```bibtex
54+
@inproceedings{PowersBrowsix,
55+
author = {Bobby Powers and John Vilk and Emery D. Berger},
56+
title = {{Browsix: Bridging the Gap Between Unix and the Browser}},
57+
booktitle = {Proceedings of the Twenty-Second International Conference
58+
on Architectural Support for Programming Languages and Operating Systems},
59+
pages = {253--266},
60+
year = {2017},
61+
url = {http://doi.acm.org/10.1145/3037697.3037727},
62+
doi = {10.1145/3037697.3037727}
63+
}
64+
```
65+
66+
</details>
67+
</details>
68+
69+
### License
70+
71+
**BrowserFS** and **ZenFS** are licensed under the MIT License. See [LICENSE](license.md) for details.
672
773
## Backends
874
@@ -11,14 +77,25 @@ Please read the BrowserFS documentation!
1177
- `IndexedDB`: Stores files into an `IndexedDB` object database.
1278
- `WorkerFS`: Lets you mount the BrowserFS file system configured in the main thread in a WebWorker, or the other way around!
1379
14-
For more information, see the [API documentation](https://browser-fs.github.io/fs-dom).
80+
For more information, see the [API documentation](https://saoirse-iontach.github.io/browser-fs-dom).
1581
1682
## Installing
1783
1884
```sh
19-
npm install @browserfs/fs-dom
85+
npm install saoirse-iontach/browser-fs-dom # @browserfs/fs-dom
2086
```
2187

88+
#### Building
89+
90+
- Make sure you have Node and NPM installed. You must have Node v18 or newer.
91+
- Install dependencies with `npm install`
92+
- Build using `npm run build`
93+
- You can find the built code in `dist`.
94+
95+
#### Testing
96+
97+
Run unit tests with `npm test`.
98+
2299
## Usage
23100

24101
> 🛈 The examples are written in ESM. If you are using CJS, you can `require` the package. If running in a browser you can add a script tag to your HTML pointing to the `browser.min.js` and use BrowserFS DOM via the global `BrowserFS_DOM` object.

0 commit comments

Comments
 (0)