Installation
PatentFlow consists of the application (API), a PostgreSQL database, the web app for the firm, the disclosure form for clients and - optionally - a language model. A build script installs everything with Docker on a Linux server; the web app and the form are static files that any web server can deliver.
Steps
- Copy the configuration template
.env.exampleto.envand fill in the database password, the address of the web app and the e-mail address of the first administrator. - Run
./build.sh. It builds the images first and replaces the running containers only when that worked, starts database, API and backup container and checks that an administrator exists. - The administrator sets a password with "Forgot password" and invites the other users in the web app.
- Mail server, web app address, EPO access data and AI providers are set in the web app under Settings, not in the configuration file.
Demo mode
Everyone can switch the web app to example data with "Demo mode" in the sidebar – a fictitious firm with clients, files, AI drafts, deadlines, planning, office mail and invoices – to find their way around or try things out. The example data lives in a database of its own; the firm's files stay untouched. In demo mode no AI runs, no e-mail is sent and the firm's settings can't be changed. Administrators reset the demo with current dates; DEMO_MODE=false switches it off.
With or without AI
AI is optional in every form – a local language model is not required either. The firm chooses one of three variants; API, database and web app run on their own in each of them:
- With a local model (default): the model runs in a container on the same server, natively on the host, or on a separate server in the firm's network – for instance a GPU server for shorter response times. That server is started with
./build.sh llm-serverand entered inLLM_BASE_URLwith its IP address in the internal network; it only accepts requests carrying the configured key. - Without a local model (
LOCAL_LLM=false): no language model is installed. AI functions run only with the providers administrators connect in the web app – such as Claude or an own OpenAI-compatible server – and only for clients that allow the model. Without an explicit choice for the application, the client or as the firm default, no external model is used. - Without any AI (
AI_ENABLED=false): the light edition without any language model. Files, docket, planning, office mail, letters, fees and invoices work as usual, and every AI control is hidden.