This is a development repository for Falcon backend (powered by Drupal) and frontend (powered by Next.js). For quick demo or quick start of using Falcon you can use our one-command-install project Falcon Starter Kit.
The usage documentation is available at https://falcon-platform.readthedocs.io/
You need to install Docker and Docker-compose. See https://docs.docker.com/install/ for details.
Open command line terminal, navigate to project root and run make install.
If you want to adjust local environment settings then first run make stop
and review the .env and .docker/docker-compose.override.yml files.
After that run make install.
Then you can stop your work by running make stop and continue by running
make up. To remove all the containers you can run make down.
If there were some changes in the upstream that render your local environment
settings out of date - you need to update the .env and
docker/docker-compose.override.yml files. There are 2 ways to do it - just
remove them and run any make command or review them manually and compare with
the sources:
.envfile comes from.env.default.docker/docker-compose.override.ymlcomes from.docker/docker-compose.override.default.yml.
Backend: http://admin.docker.localhost (credentials: admin / admin)
Demo frontend (work in progress): http://frontend.docker.localhost
🛠 Work in progress!
We are working on a scaffolding tool for production-ready project installations.
This is a monorepo repository that contains:
- Falcon backend in
falconfolder. Drupal-based distribution. - Falcon.js in
falconjs/packages/falconfolder. A complementary React library for integrating Next.js frontend apps with Falcon backend. - Demo frontend in
falconjs/templates/defaultfolder. Frontend boilerplate with demo of Falcon features.
New code is automatically released after merge in master.
Latest releases are available here:
Falcon backend: https://packagist.org/packages/systemseed/falcon Falcon.js: https://www.npmjs.com/package/@systemseed/falcon
In order to make automated releases work, commit
messages should follow default semantic-release message format: https://semantic-release.gitbook.io/semantic-release/#commit-message-format
We recommend to use a tool like commitizen or a plugin like Git Commit Template for preparing informative commit messages.
Commit message that triggers a major release, i.e. 1.4.3 → 2.0.0
feat(backend): change all API endpoints to use new format.
BREAKING CHANGE: All API endpoints now use new output format.
Note that there is a comment that starts with BREAKING CHANGE: ! The rest of commit message does not matter.
Commit message that triggers a MINOR release, i.e. 1.4.3 → 1.5.0
feat(frontend): add routing support.
Commit message that triggers a PATCH release, i.e. 1.4.3 → 1.4.4
fix(frontend): timeout issue in routing package on 404 pages.
Commit message that does not trigger a release
docs(frontend): add routing package documentation.
If you found a security issue, please immediately contact us at [email protected].