Search by

coretsia / skeleton

velhbxtyrj

Coretsia application skeleton for new projects

Package info

github.com/coretsia/skeleton

Homepage

Issues

Type:project

pkg:composer/coretsia/skeleton

Statistics

Installs: 2

Dependents: 0

Suggesters: 0

Stars: 0

v0.7.0 2026-09-19 11:11 UTC

This package is auto-updated.

Last update: 2026-09-19 16:43:03 UTC


README

Coretsia Application

This is a Coretsia application created from the coretsia/skeleton project template.

The project starts with Composer-managed runtime dependencies, application configuration, app targets, environment configuration, and mutable runtime state under var/.

Adapt it as the application evolves.

Application root

The project directory is the application root.

Installed Coretsia packages operate within this application context.

Dependencies

The application baseline requires:

PHP ^8.4
coretsia/framework

coretsia/framework installs the baseline Coretsia runtime dependencies.

Install additional Coretsia packages and capabilities through Composer; they become requirements of this project's composer.json.

The project composer.json defines the application's runtime and application-specific dependencies.

Composer records the resolved dependency graph in composer.lock and installs dependencies under vendor/.

Project structure

The initial project structure is:

./
├── composer.json
├── .env.example
├── .gitignore
├── README.md
│
├── config/
│   └── app.php
│
├── apps/
│   └── web/
│       ├── config/
│       └── public/
│
└── var/
    ├── cache-data/
    ├── cache/
    ├── etl/
    ├── locks/
    ├── logs/
    ├── maintenance/
    ├── quarantine/
    ├── sessions/
    └── tmp/

App targets

Each app target lives under:

apps/<appTarget>/

The initial project includes a web app target:

apps/web/
├── config/
└── public/

apps/web/config/ contains configuration specific to the web app target.

apps/web/public/ is the public directory for the web app target.

Add additional app targets under apps/ as the application requires.

Configuration

Application configuration contains project-specific overrides.

Default values are provided by the installed Coretsia packages.

Only add overrides that the application actually needs. Coretsia combines package defaults with the application's configuration during bootstrap.

Bootstrap configuration

The application provides:

config/app.php

This file contains application settings required during early bootstrap.

The initial file returns an empty array:

return [];

An empty initial config means the application uses the defaults provided by installed Coretsia packages until project-specific bootstrap settings are added.

Application-wide configuration

Application-wide configuration belongs under:

config/

Environment-specific application-wide configuration can live under:

config/environments/<appEnv>/

Only create configuration files for overrides the application actually needs.

App-target configuration

App-target-specific configuration belongs under:

apps/<appTarget>/config/

Environment-specific app-target configuration can live under:

apps/<appTarget>/config/environments/<appEnv>/

The initial apps/web/config/ directory is empty until the application requires an app-target-specific override.

Runtime directories

var/ contains mutable application runtime state such as caches, logs, locks, sessions, temporary data, and generated runtime artifacts.

Mutable contents under var/ are ignored by Git, while tracked .gitkeep files preserve the initial directory structure.

Environment configuration

The application includes:

.env.example

The initial file contains no KEY=VALUE entries because no environment key is currently required by every Coretsia application.

Create a local .env file when environment-specific overrides are required.

The local .env file is ignored by Git.

Coretsia loads environment configuration during application bootstrap.

Version control

The project .gitignore excludes local environment files, generated dependencies under vendor/, and mutable runtime contents under var/.

Keep .env.example, tracked .gitkeep files, and composer.lock under version control.

Extending the application

The initial project is intentionally small. Add these areas when the application needs them:

modules/
resources/
tests/
config/modes/

Application modules are part of the project codebase and are separate from installed Coretsia packages.

Observability

Logging, metrics, tracing, and other observability capabilities are provided by installed Coretsia packages and configured through the application's configuration files.

Security

Keep secrets, credentials, and other sensitive application data out of source control.

Use .env.example only for documentation-safe examples, never for production credentials or private environment values.

Keep committed configuration under config/ and apps/*/config/ free of secrets and private environment values.

For documentation and guides, see coretsia.dev.