Skip to content

aether is a modern file storage platform that implements a state-of-the-art Merkle tree structure to store multiple files.

License

Notifications You must be signed in to change notification settings

kieranroneill/aether

Repository files navigation

Aether icon - rounded edges

aether

Journey into the aether where storage defies conventional bounds.

aether is a modern file storage platform that implements a state-of-the-art Merkle tree structure to store multiple files.

GitHub release GitHub release date - published at

GitHub license

Table of contents

🗂️ 1. Overview

1.1. Project structure

The project structure is loosely based on the layout outlined in golang-standards/project-layout. The exceptions are:

Back to top ^

🛠️ 2. Development

2.1. Requirements

Back to top ^

2.2. Setting up environment variables (optional)

  1. Create the .env.* files for each application to the .config/ directory:
make setup
  1. Go to the .config/ directory and edit each .env.* file.

Back to top ^

2.3. Running locally

  1. Simply run:
make

⚠️ NOTE: The make command will run/re-run make setup, but will not overwrite any .env.* that may have been edited in section 1.2.

  1. Navigate to http://localhost:8080 to access the web portal.

Back to top ^

📑 3. Appendix

3.1. Useful commands

Command Description
make Installs dependencies, setups the basic configuration and runs the Docker Compose configuration. Intended for development purposes only.
make build-core Builds the core app into a binary to the .build/ directory.
make build-web Builds the web app to the .next/ directory.
make dev-core Runs the core app using go run. Intended for development purposes only.
make dev-web Runs the web app using next dev. Intended for development purposes only.
make clean Deletes the build directory.
make install Installs the yarn and golang dependencies.
make run Checks if the apps are correctly configured and runs Docker Compose. Intended for development purposes only.
make setup Creates .env.* files in the .config/ directory.

Back to top ^

3.2. Docker Compose service directory

Here is a list of all the localhost port mappings for each of the apps

Port URL Docker Compose Service
3000 http://localhost:3000 core_app
8080 http://localhost:8080 web_app

Back to top ^

👏 4. How To Contribute

Please read the Contributing Guide to learn about the development process.

Back to top ^

📄 5. License

Please refer to the COPYING file.

Back to top ^

About

aether is a modern file storage platform that implements a state-of-the-art Merkle tree structure to store multiple files.

Topics

Resources

License

Stars

Watchers

Forks