Installation

Apollux needs you to install the dependencies defined in all package.json files inside the different packages.

You can check which directories are considered as package in the pnpm-workspace.yaml configuration file.

Install Node.js dependencies

To do so, use the following command:

This will create a node_module folder in each package containing the dependencies.

You may need to remove them if you update the dependencies, you can use find unix command to do so:

Start the development server

Now you can start the project using the following command:

You should see the Apollux Welcome page, see how to build your first page guide to replace it.

Running this command will start the development server from the .app folder and open the frontend in your browser. You can now start editing the files and see the changes in real time.

Once you are done, you can stop the development server by pressing Ctrl + C (or ⌘ + C on macOS) in your terminal. To deploy the project for production, use the pnpm build command. This will build the project in the .app/dist folder.

App structure

The base structure of the Apollux starter is an empty Nuxt app that only extends from the Apollux layer.

Here is the structure of the .app folder:

You can find more information about the app structure in the Nuxt and Layer guide.

Useful resources:

The source of the main demo is separated from the Apollux source, allowing you to simply remove it if not needed, in order to start from a clean project.

Demo project structure

The Apollux demo is split into differents layers:

Start the demo development server

To start the project from the demo instead of the app folder, run this command:

Check the scripts section of the package.json file to know what you can run with pnpm.

Optional demo features

By default the documentation layer is not enabled, it's a heavy layer due to usage of the nuxt-component-meta module that generates up to date components documentation directly from the source code.

You can copy the .demo/.env.example to .demo/.env to enable it, as other additionnal features described in the file. Note that this architecture can be used to create kill switch feature flag