Aquameta is a web development environment where instead of storing code as flat files in the file system, everything is stored in PostgreSQL as relational data, including source code, html, css, javascript, images and other resources, system configurations, database schema, permissions and more. It has a web-based IDE, and can be used to build web applications and much more. For more info, see blog.aquameta.com, espcially the introduction.
Aquameta is in early prototype stages, approaching version 0.2. Do not use it in a production, or untrusted environment.
Aquameta contains seven core PostgreSQL extensions, which together make up the web stack:
- meta - Writable system catalog for PostgreSQL
- bundle - A version control system similar to git but for database rows intead of files
- filesystem - A bi-directional file system integration system
- events - Pub/sub data change events API
- endpoint - Maps PostgreSQL permissions and data acccess to the web, as well as allowing resource hosting and a web socket event server
- widget - Modular web components that can be reused
- semantics - A metadata layer on top of the database schema, for binding columns and relations to widgets, decorating keys, etc.
Aquameta is most easily installed on a Ubuntu 18 or Debian 9 instance; its installer manages dependencies by as apt
packages.
To install, setup a clean Ubuntu 18 or Debian 9 instance. You can run on bare metal, or using a virtual machine such as VirtualBox on Mac OSX and Windows, or KVM on Linux.
Once your Linux machine is setup, acquire the Aquameta package by either downloading the latest release, or to try the bleeding edge version, clone the repository. Then run the install script:
git clone https://github.com/aquametalabs/aquameta.git
cd aquameta
./install.sh
From the installer, follow the instructions.
To begin development, first login as the superuser you created during install at http://{your_host}/login. The primary development interface lives at http://{your_ip}/dev. For more information, see the documentation.
- Source Code: github.com/aquametalabs/aquameta
- Issue Tracker: github.com/aquametalabs/aquameta/issues
- IRC: #aquameta on freenode.net
The project is licensed under the GPL 3.0.