No description
| app | ||
| backend | ||
| bin | ||
| cms | ||
| drops | ||
| font-ttf | ||
| shared | ||
| template | ||
| .env | ||
| .env.example | ||
| .gitignore | ||
| .nvmrc | ||
| BACKEND_GUIDE.md | ||
| package-lock.json | ||
| package.json | ||
| prettier.config.js | ||
| README.md | ||
Braindrops
Experiments in technology.
Structure
This repo contains several npm workspaces that all combine to create a system for easily creating and deploying web experiments.
The major pieces of this system are as follows:
- Drops: The workspace containing all of the experiments, each one being a standalone web app created from a template.
- CMS: The workspace containing the content management system for each experiment.
- App: The workspace containing the main application for viewing all of the experiments.
- Backend: Optional self-hosted backend server with REST API, WebSocket, and SQLite database support for drops.
Any files that need to be shared across workspaces are stored in the shared directory. This includes components, utilities, and styles that are the single source of truth for the system.
Backend Integration
Drops can optionally include a backend with:
- REST API endpoints
- WebSocket real-time communication
- SQLite database for data persistence
- Environment variables for external API keys
See BACKEND_GUIDE.md for complete documentation.
Quick start:
npm run dev:drops <drop-name>