GithubHelp home page GithubHelp logo

c2vi / mize Goto Github PK

View Code? Open in Web Editor NEW
4.0 1.0 0.0 445 KB

A strongly typed "filesystem" for the age of connectivity, or a modern plan9.

License: GNU General Public License v3.0

Nix 3.76% Rust 96.24%

mize's Introduction

MiZe

  • An implementation of how I think data should be handled.
  • Slogan: Elevate the unix file Philosophy into the age of connectivity.

Why I'm doing this.

  • What annoyes me about Software these days is things are done in so many different ways.

    • e.g: Different Cloud Apps for syncing data (Google-Cloud, Onedrive, Dropbox)
    • e.g: Every App stores the Data it deals with in it's own way (the way that the developer thought is best for this particular app)
  • Back when Unix came out EVERYTHING was stored in one place: the file system of the computer.

    • (just as simple bytestreams/files, organized by a folder-structure)
    • and NO program stored and synced any data around in unpredictable ways.
  • This Philosophy is still used in every Unix/Linux machine, on a local level, but completely abstracted away (especially on mobile phones) from the user (by every App).

  • I would say: The Unix File system just hasn't evolved into the age of connectivity. It is still completely the same. And I think it shouldn't be.

  • miZe aims to bring that idea of storing all data

    • in one place
    • in one predictable and simple way
    • and programms only taking data from there and not storing it everywhere in messy ways
  • back ... into the age of connectivity.

  • That's why the slogan is going to be: Elevate the unix file Philosophy into the age of connectivity.

How I'm going to do this.

  • Is not yet completely clear, but what I know so far:
    • Using what I call "Items" instead of Files
      • With "Items" being a key-value store of strings/bytestreams
      • Those "Items" have types, that give meaning to the key-value pairs.
    • A Server Written in Rust that stores those "Items".
    • A way to mount "Items"(or parts of them) into a regular filesystem.
    • Webcomponents to show/render the contents of Items in a Browser (or electron style apps).
    • Server middleware to connect external apis (emails, youtube, google account) to this ecosystem.
    • The Server is one binary without any external requirements (that should run on any POSIX system)
      • to make it simpler to deploy
      • I've previously experimented with using MongoDB to store items, but then there has to be a MongoDB instance running that the server can connect to. And the connection can fail ... and lots of other things can go wrong.
      • I want a binary that you just start and it's a working server.

mize's People

Contributors

c2vi avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.