All Projects → joyboxapp → joybox

joyboxapp / joybox

Licence: other
A pinboard for audiovisual media.

Programming Languages

javascript
184084 projects - #8 most used programming language
Svelte
593 projects
EJS
674 projects
CSS
56736 projects

Projects that are alternatives of or similar to joybox

launchlet
Make the web yours.
Stars: ✭ 34 (+61.9%)
Mutual labels:  offline-first, unhosted, remotestorage, fission, local-first, 0data
awesome-0data
Resources around owning your data 100%
Stars: ✭ 41 (+95.24%)
Mutual labels:  unhosted, remotestorage, fission, 0data
hyperdraft
Turn your notes into a website.
Stars: ✭ 59 (+180.95%)
Mutual labels:  unhosted, remotestorage, local-first, 0data
0data
Own your data, all of it.
Stars: ✭ 53 (+152.38%)
Mutual labels:  unhosted, remotestorage, fission, 0data
Remotestorage.js
⬡ JavaScript client library for integrating remoteStorage in apps
Stars: ✭ 2,155 (+10161.9%)
Mutual labels:  offline-first, unhosted, remotestorage
remotestorage-widget
⬡ Connect widget for remoteStorage.js
Stars: ✭ 23 (+9.52%)
Mutual labels:  offline-first, unhosted, remotestorage
webmarks
remoteStorage-enabled bookmarking app
Stars: ✭ 65 (+209.52%)
Mutual labels:  unhosted, remotestorage
hyperchannel
Kosmos Chat for the Web
Stars: ✭ 17 (-19.05%)
Mutual labels:  unhosted, remotestorage
grouptabs
Mobile Web App to organize payments in dynamic groups of people.
Stars: ✭ 40 (+90.48%)
Mutual labels:  offline-first, remotestorage
state
A Redux-based state container for local-first software, offering seamless synchronization using Automerge CRDTs. (Formerly known as 🐟 Cevitxe).
Stars: ✭ 126 (+500%)
Mutual labels:  offline-first, local-first
sharesome
Share files quickly from your remote storage
Stars: ✭ 21 (+0%)
Mutual labels:  unhosted, remotestorage
keda-connectors
Generic connectors for Keda which can be used as worker images as part of scaleTargetRef.
Stars: ✭ 22 (+4.76%)
Mutual labels:  fission
Redwood
A highly-configurable, distributed, realtime database that manages a state tree shared among many peers.
Stars: ✭ 218 (+938.1%)
Mutual labels:  offline-first
Tagspaces
TagSpaces is an offline, open source, document manager with tagging support
Stars: ✭ 2,451 (+11571.43%)
Mutual labels:  offline-first
Offlinenotepad
An offline-first, secure, private notepad. 📔 ✏️
Stars: ✭ 190 (+804.76%)
Mutual labels:  offline-first
hoodie-notes
A Markdown notebook built with React and Hoodie
Stars: ✭ 17 (-19.05%)
Mutual labels:  offline-first
shopping-list-vuejs-pouchdb
Shopping List is an Offline First demo Progressive Web App built using Vue.js and PouchDB.
Stars: ✭ 81 (+285.71%)
Mutual labels:  offline-first
Gun
An open source cybersecurity protocol for syncing decentralized graph data.
Stars: ✭ 15,172 (+72147.62%)
Mutual labels:  offline-first
Sormas Project
SORMAS (Surveillance, Outbreak Response Management and Analysis System) is an early warning and management system to fight the spread of infectious diseases.
Stars: ✭ 183 (+771.43%)
Mutual labels:  offline-first
Apollo Offline
An offline toolkit for the Apollo client
Stars: ✭ 186 (+785.71%)
Mutual labels:  offline-first

Project logo

Joybox

A pinboard for audiovisual media

Joybox makes it simple to play media from multiple platforms in the same place. Read the guide for more details.

Open app

Architecture

The project follows a Universal folder structure and is a large collection of mostly small modules or functions that are put together using Svelte and Rollup. With the exception of a few 'global' or 'magic' things such as the localization function OLSKLocalized, most resources used by a module should be in the same folder or referenced by path name.

Routing, rendering markdown content, and serving pages is done via a Node.js server (usually configured in the controller.js files).

Development Setup

(For a deeper dive, watch the tutorial).

Install Node.js and npm, then:

npm run setup

This should create an .env file if there is none. If you encounter errors referring to this file, you can find missing variables in .env-sample.

Running

Start the Rollup process to build and reload automatically

npm run watch

Start the Node.js server to view in the browser

npm start

It should be accessible at http://localhost:3000.

Testing

See Testing logic and interfaces for a tutorial.

Run logic tests

npm test 

Run interface tests

npm test ui

To filter interface test paths by string:

npm test ui match=detail

To filter interface test paths by JavaScript regular expressions:

npm test ui match='/(vitrine|guide)/'

❤️

Help me keep creating projects that are public, accessible for free, and open-source.

Become a backer

License

The code is released under a Hippocratic License, modified to exclude its use for surveillance capitalism and also to require large for-profit entities to purchase a paid license.

Questions

Feel free to reach out on Mastodon or Twitter.

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].