All Projects → Clay-Ferguson → Subnode.org

Clay-Ferguson / Subnode.org

SubNode: Social Media App

Programming Languages

javascript
184084 projects - #8 most used programming language
java
68154 projects - #9 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to Subnode.org

field-manual
The Offical User's Guide to OrbitDB
Stars: ✭ 178 (+612%)
Mutual labels:  ipfs, decentralized, distributed
Awesome Decentralized
🕶 Awesome list of distributed, decentralized, p2p apps and tools 👍
Stars: ✭ 358 (+1332%)
Mutual labels:  ipfs, distributed, decentralized
ipns-link
Expose local http-server (web-app) through IPNS
Stars: ✭ 18 (-28%)
Mutual labels:  ipfs, decentralized, distributed
Node
The core of Po.et
Stars: ✭ 192 (+668%)
Mutual labels:  blockchain, ipfs, decentralized
Dtube
📺 d.tube app. A full-featured video sharing website, decentralized.
Stars: ✭ 569 (+2176%)
Mutual labels:  blockchain, ipfs, decentralized
Sia
Blockchain-based marketplace for file storage. Project has moved to GitLab: https://gitlab.com/NebulousLabs/Sia
Stars: ✭ 2,731 (+10824%)
Mutual labels:  blockchain, distributed, decentralized
Production
Production app for D.Tube
Stars: ✭ 354 (+1316%)
Mutual labels:  blockchain, ipfs, decentralized
Blockstack.org
The Blockstack website
Stars: ✭ 132 (+428%)
Mutual labels:  blockchain, webpack, decentralized
Diffuse
A music player that connects to your cloud/distributed storage.
Stars: ✭ 517 (+1968%)
Mutual labels:  ipfs, distributed, decentralized
Sia Ui
A Graphical Frontend for Sia - https://sia.tech
Stars: ✭ 394 (+1476%)
Mutual labels:  blockchain, distributed, decentralized
Unstoppable Wallet Ios
A secure and decentralized Bitcoin and other cryptocurrency wallet for iPhone. Supports Bitcoin, Ethereum, EOS, Binance Chain, Bitcoin Cash, DASH, ...
Stars: ✭ 180 (+620%)
Mutual labels:  blockchain, ipfs, decentralized
Js Ipfs
IPFS implementation in JavaScript
Stars: ✭ 6,129 (+24416%)
Mutual labels:  ipfs, distributed, decentralized
Unstoppable Wallet Android
A secure and decentralized Bitcoin and other cryptocurrency wallet for Android phones. Supports Bitcoin, Ethereum, EOS, Binance Chain, Bitcoin Cash, DASH, ...
Stars: ✭ 165 (+560%)
Mutual labels:  blockchain, ipfs, decentralized
ipfs-chat
Real-time P2P messenger using go-ipfs pubsub. TUI. End-to-end encrypted texting & file-sharing. NAT traversal.
Stars: ✭ 84 (+236%)
Mutual labels:  ipfs, decentralized, distributed
Gym Fx
Forex trading simulator environment for OpenAI Gym, observations contain the order status, performance and timeseries loaded from a CSV file containing rates and indicators. Work In Progress
Stars: ✭ 151 (+504%)
Mutual labels:  blockchain, distributed, decentralized
Embark
Framework for serverless Decentralized Applications using Ethereum, IPFS and other platforms
Stars: ✭ 3,478 (+13812%)
Mutual labels:  blockchain, ipfs, decentralized
Dfile
[Python + Flask] DFile: A fancy S3-based file sharing mode
Stars: ✭ 79 (+216%)
Mutual labels:  blockchain, ipfs, decentralized
Cyb Archeology
🌎 Personal immortal robot for the The Great Web
Stars: ✭ 117 (+368%)
Mutual labels:  blockchain, ipfs, decentralized
Bigchaindb
Meet BigchainDB. The blockchain database.
Stars: ✭ 3,768 (+14972%)
Mutual labels:  blockchain, mongodb, decentralized
Springboot Starterkit
Starter Kit for Spring Boot based (REST APIs and WebMVC) micro services.
Stars: ✭ 596 (+2284%)
Mutual labels:  mongodb, spring-boot, bootstrap4

SubNode WebApp

SubNode is a content publishing/hosting platform where everything exists on a tree-structured database and each user owns a branch on this global tree which can be shared with other users. Each piece of data on the tree is called a "Node", and each node has it's own unique URL, and can markdown text (and/or images and arbitrary file attachments) and can be shared to specific other users or made public. A node can represent anything from a full document to just a paragraph, or even one sentence of content, and it's up to the user to create whatever they want and structure it as they want.

SubNode with IPFS

Experimental IPFS Connectivity is now working in SubNode (not at SubNode.org yet). As a minimal proof-of-concept there is already the ability go crawl the IPFS MerkleDAG starting at some root point and then browse from there. This makes SubNode able to become a fully functional "IPFS Browser". SubNode will also function as a "full text search" over any and all content it has "crawled" in the IPFS network, because SubNode caches all IPFS data it encounters into it's MongoDB and (this making data full-text searchable using the MongoDB/Lucene search technology). So SubNode instances across the distributed web will each independently be able to function as a search engine for any amount of IPFS data that they choose to "crawl".

Link to a live instance:

https://subnode.org/r/public/home

Sample Content (book): War and Peace

View this to see a demonstration of how browsing large structured documents works on the SubNode platform.

https://subnode.org/r/books/war-and-peace

Sample Plugin: Podcast Reader

A simple podcast reader built on the SubNode platform, implemented as a plugin.

https://subnode.org/r/rss

Tech-Stack Summary

Back-end (Server Side)

  • Java Language
  • Spring Boot Web App
  • Runs in embedded Tomcat
  • Dockerfile provided (Docker Supported)
  • REST-like Endpoint using ajax/JSON for all browser calls.
  • MongoDB data storage (via. Mongo for Docker)
  • IPFS File Access (via. GO-IPFS for Docker, experimental alpha, not much there)
  • File System Index/Search (via Lucene+Tika)

Browser (Client Side)

  • Single Page Application (SPA)
  • TypeScript Language: No hand-coded Javascript
  • Bootstrap4 for layout/styling
  • Webpack-generated single bundle JS file
  • ReactJS-based HTML generation. Template-free architecture used (with functional React components)
  • Ace Editor for Content Editing

How to Build the App

See /docs/getting-started.md, which has very detailed information on how to install prerequisistes and build the app.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].