An open API service indexing awesome lists of open source software.

https://github.com/abilian/nua-sandbox


https://github.com/abilian/nua-sandbox

Last synced: 10 months ago
JSON representation

Awesome Lists containing this project

README

          

# About

Alternative implementation of `Nua` to explore the design space.

DON'T USE. Useful concepts will be merged into the main `Nua` project.

## Key ideas

- Purely declarative build system. (Actually: as declarative as possible.)
- Build profiles for ~10 major web technologies.

## Specific points

- What's called `nua-runtime` in Nua is called `nua-build-agent` here.
- Python sub-packages are called `nua_something` instead of `nua.something`.
- Main entry point for the project in the `tasks.py` file.
- Run `poetry shell && poetry install` first
- Then `invoke install`
- Then `invoke build-all`.
- Every time you edit something in `nua-build-agent`, you need to rebuild the base image
- (so either run `invoke build-all` or `invoke build-base` before building specific apps).
- Many apps are not building (yet). Sometimes it's not our fault.
- Debian (actually, Ubuntu) is used as the base image. This causes some issues (TBD).

## Developer experience

To work specifically on trying to build a specific app, you can run (from the root of _this_ project):

```bash
invoke build-all --only
```

(This will rebuild the base image each time, so any changes to `nua-build-agent` will be taken into account.)

## What's missing

No work (yet) on a runtime/orchestrator alternative.

We have to check, at some points, that the images produced are actually working in `nua-orchestrator`.

## TODO

see [TODO.md](./TODO.md)