New
Apps 1,895Makers 1,890This week 1,690
Promote your app−30%
0views in
the last 30 days

GuestCraft

Open-source property management system for hotels and vacation rentals

Built with Claude Code

by spinny03 · Unclaimed · from ITItaly · added Oct 29, 2026
no ratings0 comments

GuestCraft

An open-source property management system for hotels and vacation rentals, built on Channex.

CodeQL Line coverage Core mutation score OpenSSF Scorecard Licence: AGPL-3.0-only SDK licence: MIT Conventional Commits

Status: pre-alpha. An instance can be installed and used for the daily front desk of a property:

  • rooms and room types;
  • direct reservations with guests;
  • per-room rate plans, nightly prices and restrictions, and reservation quotes;
  • the planning and the Today screen;
  • check-in and check-out;
  • housekeeping status;
  • dated room blocks and maintenance tickets;
  • reservation folios, extras, manual payments and refunds, with balance-aware check-out (a credit never blocks it) and a printable non-fiscal statement.

All of it works in Italian or English. Workspaces connect their own Channex account and can import supported OTA bookings after mapping properties and room types. Local rates and quotes and guarded ARI publication are available after explicit takeover. Property performance reports include occupancy, ADR, RevPAR and booked room revenue. Folios and manual payments are partial: taxes are not computed until a country module is installed, and there are no fiscal documents or online payment providers. Country-specific compliance modules are planned.

See the product status for what is implemented, partial and planned.

Product preview

Planning grid: browse dates, open a stay, and change its room

The animation uses fictitious demo data. A room change is made in the stay's assignment dialog; dragging an existing stay bar is not supported. See the Italian product presentation and the showcase capture guide for more screens.

Deploy in one click

Private repository installation is available now. The owner can import this private repository at vercel.com/new/import from their own Vercel account. An invited collaborator cannot import a repository owned by another personal GitHub account directly into Vercel; they can import a private fork they own if private forking is allowed, or clone the repository and upload it with the Vercel CLI. In either case, set the project root to apps/web, use Node.js 24 and the Next.js framework, attach a Neon or Supabase PostgreSQL Marketplace integration, and set AUTH_SECRET, GUESTCRAFT_DATABASE_ROLE_SECRET, ENCRYPTION_KEYS and CRON_SECRET for production. Generate the values and setup code in the offline browser page, then deploy to production and open /setup. The step-by-step guide covers both private paths, database regions and CLI commands.

Deploy Buttons below are available when the repository is public. Their secret-generator link also needs the documentation site, which the docs workflow publishes to GitHub Pages from main. Until then, open the generator HTML file locally; no secret leaves the browser.

Database Default region Europe (Frankfurt)
Neon Deploy GuestCraft with Neon on Vercel Deploy GuestCraft with Neon on Vercel in Frankfurt
Supabase Deploy GuestCraft with Supabase on Vercel Deploy GuestCraft with Supabase on Vercel in Frankfurt

Choose a database in the same region as the app (fra1 for an EU button), paste the four generated values into Vercel, then open /setup on the deployed site and enter the generated setup code. Production migrations run during the build; previews never migrate. A disposable CLI-upload installation with free Neon in Frankfurt was verified on 27 October 2026, including setup, sign-in, property, rooms, reservation and check-in; the public buttons remain untested while the repository is private. See the one-click deployment guide for prerequisites, updating, schedules and recovery.

Run locally

Use Node.js 24 (see .node-version), pnpm 12.15 through Corepack, and Docker Compose.

  1. Copy .env.example to .env.

  2. Generate separate values with openssl rand -hex 32 for AUTH_SECRET, POSTGRES_PASSWORD and the independent integration key. Put them in .env, with ENCRYPTION_KEYS=1:<integration-key>.

  3. Build this checkout and start the instance:

    docker compose -f docker-compose.yml -f docker-compose.build.yml up --build
    

    After the first release, docker compose up alone runs the published images of the version in docker-compose.yml (installation guide).

Open http://localhost:3000/setup. The migration service prints the private setup code. Setup creates the first operator, company and production workspace once; public sign-up stays closed. Sign in, then enter your Channex production API key in /onboarding, or complete that step later.

See the installation guide for configuration, local development and hosted deployments. Connection validation works locally and in previews. Booking acknowledgements and webhook registration require the owning production instance. See booking import for the supported workflow and limits.

Developer documentation

On a running instance, /docs is the documentation hub, /api/v1/docs is the interactive API reference, and /api/v1/openapi.json serves the specification. The checked-in contract is openapi/v1.json.

The API uses signed session cookies. GuestCraft bearer API keys are not implemented. The SDK uses native fetch and the same session; it is not published to npm.

Contribute

corepack enable
pnpm install
pnpm test            # fast tests, no Docker
pnpm test:coverage   # includes PostgreSQL integration tests; needs Docker
pnpm quality         # all CI checks

Report bugs and propose features in GitHub issues; SUPPORT.md says where each kind of question goes, and vulnerabilities follow SECURITY.md. CONTRIBUTING.md explains the workflow and conventions. The repository guide describes package boundaries and the target architecture; ADRs record decisions. ADR 0021 describes the implemented Channex onboarding flow. The original technical analysis, in Italian, also includes planned capabilities.

License

The core and applications use AGPL-3.0-only; client libraries, the SDK and the OpenAPI contract use MIT. Documentation uses CC-BY-4.0. File notices and REUSE.toml define the license of each file; see ADR 0004.

GuestCraft is not affiliated with Channex.

Guarded ARI publication adds rate-plan mapping, numbered property leases, booking barriers, shared pacing and health/resync with explicit takeover. Historical reconciliation and remote drift repair remain partial. See the ARI workflow.

Description taken from the repository README.

Ratings

–
0 ratings
5 0
4 0
3 0
2 0
1 0

Rate this app

Sign in to rate

Comments 0

Sign in to comment

No comments yet.

Related apps

#hotel · #property-management · #booking