# Project pack: Ghostfolio @ f144c72 Facts about **Ghostfolio** for an AI following the [BespokeAI handover guide](https://handoff.bespokeai.software/guide/v4.md). Pinned to one version; never changes after publication. > Ghostfolio tracks your investments. Add what you buy and sell across different brokers and accounts, and it shows how your portfolio is doing, what it is made of and where the risks are. It suits people who invest for the long term and want a clear picture without spreadsheets. You can run it on your own computer or server, or pay for the official hosted version. ## Setup path (checked 2026-11-03) - **Needs Docker.** Tell the person before any setup work; no light non-Docker route is documented upstream. Docker Desktop on Windows may need a computer restart and an admin-only Windows feature (virtualisation); say so and let the person decide. - Verdict source: https://raw.githubusercontent.com/ghostfolio/ghostfolio/HEAD/README.md - You may be unable to download source archives or run commands in this session. The person downloads and runs things; if you cannot fetch something, give any changed file in full in chat with its path. ## Version and source - Repository: https://github.com/ghostfolio/ghostfolio - Pinned commit: `f144c723f471ef04d4b4c1e2571db428b53dfbc3`. Use exactly this version. - Zip the person can download in a browser: https://github.com/ghostfolio/ghostfolio/archive/f144c723f471ef04d4b4c1e2571db428b53dfbc3.zip - Fresh checkout (only if you have a shell and git): use the commands below in an empty folder. If this exact source is already checked out, keep your branch and use the development command; do not clone again or reset local changes. - Official docs: https://ghostfol.io/en/faq - Live demo: https://ghostfol.io/en/demo. Official live demo with an example portfolio, read-only. No login needed. - Licence: **AGPL-3.0-only**. Free to use and change. If you run a changed version that other people use over the internet (not just you or your household), you must offer them your source code under the same licence. Private use has no extra obligations. ## Commands from the pinned source - Developer commands (they may use Docker): ```sh git clone https://github.com/ghostfolio/ghostfolio bespoke-ghostfolio cd bespoke-ghostfolio git checkout --detach f144c723f471ef04d4b4c1e2571db428b53dfbc3 # Prepare development requirements and local configuration first. # Setup notes: then in another terminal: npm run start:client (https://localhost:4200/en) cp .env.dev .env && npm install && docker compose -f docker/docker-compose.dev.yml up -d && npm run database:setup && npm run start:server ``` - Separate trial of the current upstream release (not your changes; sample data and a separate data directory only): ```sh git clone https://github.com/ghostfolio/ghostfolio && cd ghostfolio cp .env.example .env # fill in REDIS_PASSWORD, POSTGRES_PASSWORD, ACCESS_TOKEN_SALT and JWT_SECRET_KEY in .env docker compose -f docker/docker-compose.yml up -d # open http://localhost:3333 and create the first user via Get Started (it becomes the admin) ``` - Tools these commands use: Docker with Docker Compose, or for development Node.js 22.18+ and Docker for PostgreSQL and Redis - Develop: `cp .env.dev .env && npm install && docker compose -f docker/docker-compose.dev.yml up -d && npm run database:setup && npm run start:server # then in another terminal: npm run start:client (https://localhost:4200/en)` - Test: `npm test` - Check/lint: `npm run lint` - Build: `npm run build:production` - Stack: typescript, html, scss (Nx, NestJS, Prisma, Angular, Angular Material, Bootstrap). Difficulty for a non-developer with an AI: **advanced**. A TypeScript monorepo (Nx) with a NestJS API, an Angular client, Prisma and PostgreSQL plus Redis. Most personal changes are settings or API scripts; screen changes need Angular knowledge and a full rebuild. - The project's own AI instructions, in the repository: `DEVELOPMENT.md`. Personal data: **yes**. Stored in: PostgreSQL (the postgres Docker volume); Redis is only a cache. Secrets are entered by the person, never in chat. --- Later, only when a step needs it: [reference.md](https://handoff.bespokeai.software/p/ghostfolio/f144c72/r3/reference.md) (customisation points, must-keep-working, data and costs, coding conventions) · [hosting.md](https://handoff.bespokeai.software/p/ghostfolio/f144c72/r3/hosting.md) (long-term hosting; hosts are paid third parties) · [bespoke.yaml](https://handoff.bespokeai.software/p/ghostfolio/f144c72/r3/bespoke.yaml) · [SKILL.md](https://handoff.bespokeai.software/p/ghostfolio/f144c72/r3/SKILL.md)