Skip to content

Latest commit

 

History

History
111 lines (84 loc) · 3.95 KB

README.md

File metadata and controls

111 lines (84 loc) · 3.95 KB

Cristal

Wireframe of a Cristal 
Page

What's Cristal

  • A new xwiki.org project to provide a modern knowledge base front-end
  • A wiki UI to rule them all: Provide a UI that can be plugged onto various content backends (XWiki, local file system, GitHub, etc.)
  • Usable in various forms:
    • From a URL in your browser
    • Executable locally on your computer (Electron application).
    • Embeddable in backends. For example, the intent on the long run is to have Cristal be used by XWiki as its native UI
  • Ability to work offline, reconnect, and sync content.
Build Status TypeScript Prettier

Useful links

Project details

Project Setup

pnpm install

Starting the project

Starting on default port 9000.

pnpm run start

Starting on an arbitrary port (e.g., 9001)

HTTP_PORT=9001 pnpm run start

Starting an electron instance

pnpm run start:electron

Compile and Minify for Production

pnpm run build

Run Unit Tests with Vitest

pnpm run test

Run Functional Tests with Playwright

## Make sure to have the system dependencies and browsers up to date. By filtering
## on the web module we make sure the version of playwright that gets installed is
## the one specified in package.json
pnpm --filter ./web exec playwright install --with-deps

## Run the tests from the web module.
pnpm run --filter ./web test:e2e

## Or, if port 9000 is already used
HTTP_PORT=9001 pnpm run --filter ./web test:e2e

Lint

pnpm lint