@portfoliablejs/portfoliable
v2.4.15
Published
Template-first portfolio engine powered by valence web components
Downloads
2,442
Readme
Portfoliable
Portfoliable is a template-first portfolio engine powered by valence web components.
Important boundary:
- This repository ships template/sample content only.
- Real production content should live in your consumer application repository (for example, portfolio).
Commands
npm run devnpm run buildnpm run previewnpm run validate:contentnpm run scaffold:consumernpm run scaffold:casenpm run verify:integrationnpm run smoke:homeview
Create a new portfolio app
Use the initializer package to scaffold a consumer app in an empty folder:
Important:
- Run
npm create portfoliable@latest ..., notnpm run create portfoliable@latest ....
npm create portfoliable@latest my-portfolio
cd my-portfolio
npm run portfoliableVersion note:
[email protected]is deprecated. Use latest (>=0.1.1).
Runtime prerequisite:
- The generated app installs
@portfoliablejs/portfoliablefrom npm. - If npm returns
404 Not Foundfor@portfoliablejs/portfoliable(or@portfoliablejs/valence), publish those runtime packages first. The initializer itself is published, but consumer installs require the runtime packages to be publicly available too.
The generated app includes:
npm run portfoliablenpm run portfoliable-buildnpm run build-portfoliablenpm run portfoliable-previewnpm run preview-portfoliablenpm run portfoliable-scaffold-datanpm run scaffold-data-portfoliablenpm run portfoliable-scaffold-casenpm run scaffold-case-portfoliable
The generated scripts call the Portfoliable CLI directly, so you can also run:
npx @portfoliablejs/portfoliable dev
npx @portfoliablejs/portfoliable build
npx @portfoliablejs/portfoliable preview
npx @portfoliablejs/portfoliable scaffold-case --name "My New Case"Optional flags:
npm create portfoliable@latest my-portfolio -- --no-install
npm create portfoliable@latest my-portfolio -- --forceScaffold a consumer data starter
Generate a starter cases file in your current folder:
npx @portfoliablejs/portfoliable scaffold
npx @portfoliablejs/portfoliable scaffold-case --name "My New Case"Or with npm script in this repo:
npm run scaffold:consumer -- --out ./portfolio/src/portfolio-cases.template.jsUse --force to overwrite an existing file.
Content model
Case markdown files in this repo are examples under src/content/cases/.
Validation runs before dev, build, and preview.
If validation fails, fix fields in frontmatter or language sections first.
Integration verification
Run full local integration checks for template plus consumer:
npm run verify:integrationThis command validates markdown content, builds portfoliable, then builds the sibling portfolio consumer when available.
Use --skip-consumer to check only portfoliable:
npm run verify:integration -- --skip-consumerHomeView smoke check
Run a lightweight smoke gate for HomeView and gallery wiring:
npm run smoke:homeviewThis command rebuilds portfoliable and verifies:
ds-home-viewis present in the main bundle- template gallery case titles are present
- thumbnail frame fallback asset is generated
Release readiness
Recommended release checks before tagging:
npm run validate:content
npm run smoke:homeview
npm run verify:integrationFor local parity against in-progress valence changes, this repo may point to a local dependency during development. Before publishing, ensure dependency references match your intended release source.
