- What is the project about?
- How can I set up the project?
- How can I run tests?
- Where can I find what was changed?
- Why did you decide to use XXX or do YYY in that way?
Main goal of the project is to provide a place for storing, processing and providing access to all UAP-related data obtained by automatic stations (like UFODAP). The second purpose is to create a community of researchers and investigators around those data and analyses. We believe that only hard data and it's scientific verification can get us closer of this fascinating and still not well known topic. For now the data of various character (videos, audio, radio frequency spectra et al.) can be uploaded manually using page (work in progress) or API. The API can be used in automatic stations software to upload their observations.
The preferred way of setting up the project is through Docker containers. To do that you need to have Docker and docker-compose installed locally. If you have do the following steps:
- Clone the repository locally.
git clone https://github.com/UFODATAcode/UFODATA_Project
- Go into the cloned repository directory.
cd UFODATA_Project
- Create local copy of
docker-compose.override.yaml
file.
cp docker-compose.override.yaml.dist docker-compose.override.yaml
- Start application containers in the background by executing the following command.
docker-compose up -d
After starting the containers need some time to execute all required set up actions (make migrations generate JWT keys and so on).
To check if the application is ready to handle connections you can look inside app
logs.
docker-compose logs -f app
If you see something like below as the last line of the log the app should be ready.
ufodata.app | [Tue Aug 09 19:27:04.463097 2022] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D FOREGROUND'
First set up the project. After that you can run the tests using the following command.
docker-compose exec app-test vendor/bin/codecept run api
Check out our changelog.
We want to make clear, supported by arguments decisions about the project. It doesn't matter if a decision is about project's architecture, chosen library or way to validate something. All of them will be documented according to the Markdown Any Decision Record standard. You can find our decisions here.