Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

CW-086 · A company with no IT installs Cwork itself

Open
#89 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
docker, postgresql, typescript

Research direction

Start with docker-compose.yml to understand the current services, then compare the proposed installer forms on real customer hardware and review the packaging and docs/ entry points. The scope depends on a future customer request and an owner decision about code signing. Done means a non-IT user follows the Thai guide on a clean machine to install, back up, restore, and update Cwork; document that run here.

Written by the indexing model from the issue text.

Description

P2

P2 · operations · L · after CW-080 and Pilots A and B; part of CW-077, not queued

Decided by the owner (2026-10-11, relayed from the Asuna Bot room): an
installer for a company with no IT is part of the free edition, in Cwork and
PaynEat alike: installing it yourself is free; having it installed for you is
what is paid (the remote installation, with ee/ and online support). CW-080
makes Cwork installable by someone else's IT; this ticket is for the office
with nobody to call. Both pilot companies run on a NAS, so neither needs it
yet, and the form is chosen when a real customer of this kind asks.

The installed copy keeps updating and backing up without a licence key. The
Editions section promises that a lapsed subscription leaves the free edition
fully working and that a change in the law reaches both editions at the same
time; for an office with no IT the installer's update button is the only way
those updates arrive, so it can never sit behind a key.

What the compose file runs today, and what makes this large: postgres
(pgvector/pgvector:pg16), api, migrate, web and clamav.

Scope, decided when a customer asks

  • The form: a native Windows installer (PostgreSQL with pgvector and
    ClamAV on Windows), a script over Docker Desktop (needs WSL2 and
    virtualisation switched on, and Docker Desktop's own licence terms for
    companies checked first), a ready-made VM image, or a small machine sold
    ready to run. Compare them on the customer's real hardware and on what can
    go wrong without IT.
  • Code signing: without a certificate Windows SmartScreen warns on the
    installer, which is what an office with no IT is least able to judge. The
    owner decides, with the yearly cost.

Acceptance

  • Backups run on their own and go somewhere off the machine (a disk that
    fails takes the payroll with it otherwise), with a restore someone without
    IT can follow.
  • One-click update that keeps working with no key or an expired one.
  • The machine is kept from sleeping while Cwork serves, and says so when it
    cannot be.
  • Other staff and the mobile app reach it over the office network, over HTTPS.
  • The guide asks for BitLocker (or the platform's disk encryption) and keeps
    FIELD_ENCRYPTION_KEY away from the data and the backups, readable only by
    the service.
  • Someone without IT, using only the installer and its Thai guide on a clean
    machine, reaches a working install, takes a backup, restores it and updates
    one version, and that run is written up here.

Files packaging and docs/ (new); docker-compose.yml as the reference


Generated by Claude Code

Dominant language
TypeScript
Stars
0
Forks
0
Avg merge
2d 16h
Merged PRs (30d)
6

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from SuruchBoss/Cwork

All issues in SuruchBoss/Cwork

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.