• Stars
    star
    120
  • Rank 289,694 (Top 6 %)
  • Language
    JavaScript
  • Created over 6 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

in browser file manager for IPFS

IPFS Drive

A static, serverless web app to manage files and folders in IPFS.

Works on any existing IPFS folder.

Features in the latest release

  • visit any existing IPFS folder
  • navigate inside folders and up the parent directory
  • add stuff to any folder, including things already on IPFS or plaintext
  • copy URL for any file or folder
  • create folders
  • delete, move, rename, copy files and folders
  • view and download files on click
  • clear button to quickly start from empty
  • picks up where you left off
  • undo/redo using back/forward browser buttons. Changes the URL every time you make a modification

Try it

This is the latest development build with known issues.

Check it out

See the CHANGELOG.md file for information about features and known issues in the latest build.

Known Issues

This is what's currently known as broken in master.

  • some javascript errors outputted by ipfs in the browser console
  • sluggish interface in huge folders
  • wonky file/folder detection

Next Release

This is stuff I'd like to implement next.

  • "upload" local files
  • improve performance in huge folders somehow
  • report progress in the most detailed way possibile during IPFS operations
  • handle errors as much as possible

Additional feature wishlist

This is what I'd like to work on next, in no particular order:

  • write tests
  • configurable download strategy (streaming via js or http via gateway)
  • IPNS support, of course the underlying ipfs implementation must support it
  • splitting the JS to avoid 6MB brick and maybe to better share code between versions. It should incrementally load the app
  • offline support with service workers
  • some way to check for updates reliably, probably an OrbitDB Feed
  • show bitswap stats and maybe some kind of controls over IPFS
  • load google static assets stuff (fonts) locally or from ipfs links
  • show file information like an icon based on extension, file size etc
  • show network stats on files, like availability
  • if a folder has an index.html, then it's a website/app and the index should open on click. Read the metadata to load name, description and icon for PWAs
  • basic or configurable integration with other IPFS static apps to open files: for example open md file in a markdown renderer
  • multiple file/folder delete, move, copy
  • pinning. It should start a "background job" that notifies the user when done, of course the underlying ipfs implementation must support it
  • download folder as archive if possible
  • some way to guarantee and check availability
  • simple search

Long term

These are longer term ideas that imply a change in scope for the project.

  • Feeds: feeds will be a way to share stuff. Other users will be able to subscribe to your feed with a link and they'll see what you publish. This would turn Drive into a bit of a social media platform, or it could just be a way to publish dynamic content.
    • create, delete, post to your feeds
    • advertise feeds and also check for feeds being advertised right now
    • seed/pin feeds
  • real time file managing with other people
  • integrated content viewing and editing, for example playing videos
  • manage orbit-db databases
  • turn this into a complete IPFS Web UI

More Repositories

1

ipfs-boards

a truly distributed social platform for the browser with no backend and no external applications required
JavaScript
219
star
2

telecommander

user friendly command line client for Telegram
JavaScript
32
star
3

AIrium

the easy to use artificial life simulation environment
Java
16
star
4

orbit-db-discussion-board

OrbitDB Store to post and comment on a discussion board
JavaScript
16
star
5

ipfs-sync

Directory synchronization daemon using ipfs+ipns
JavaScript
9
star
6

LC2.js

in development emulator and debugger for the LC2 computer
JavaScript
6
star
7

aDemonsMaze

Small roguelike game entirely playable in the browser
CoffeeScript
5
star
8

homework

reactive and responsive Homework management web-app
CoffeeScript
5
star
9

ipfs-bookmark-manager

a web app to manage ipfs bookmarks
JavaScript
3
star
10

tesina

HTML
3
star
11

markcloud

write a document in markdown then share it with the world with a permanent link
CoffeeScript
3
star
12

ipfs-video-mirror

simple experiment that mirrors YouTube videos to IPFS
JavaScript
3
star
13

nochain

simple password manager that doesn't save anything anywhere
CSS
2
star
14

example-autocomplete

Example autocomplete input with Vue.js
Vue
2
star
15

meteor-brototype

Bro, do you even Meteor?
JavaScript
2
star
16

WebLC2

a Web based LC-2 programming environment
JavaScript
2
star
17

pbs

web app for working with Project Breakdown Structures
CoffeeScript
2
star
18

2D-Universe

A simple game like program aimed at simulating a 2D universe.
Java
1
star
19

minilang

an exercise to learn rust: built an interpreter of a very simple programming language
Rust
1
star
20

slotmachine.js

small client side web app as a school project. nothing exceptional
JavaScript
1
star
21

fazo96.github.io

my personal website
HTML
1
star
22

trippy-pizza

Collection of self hosted applications for my personal cloud
Shell
1
star
23

calendar

calendar as a web service (school project)
JavaScript
1
star
24

LionChat

experimental chat system built as a learning project
Java
1
star
25

rails_typescript_types

experimental generator of typescript type definitions by parsing rails schemas
JavaScript
1
star
26

spacegame

small game resembling Space Invaders, made as a C learning exercise.
C
1
star
27

foodiepad

simple web shopping list
TypeScript
1
star