Repository navigation
Releases: Tillertech/foundry
Releases · Tillertech/foundry
Release list
foundry v0.4.0
Summary
- Multi-currency: Support any currency, with dashboard totals and reports converted to your workspace currency.
- Billable expenses: Add unbilled client expenses to invoices, emails, and PDFs.
- Client communications: Business-branded emails and milestone-completion notifications.
- Portal access control: Set workspace defaults, customize permissions per client, and restrict users to specific projects. Suspensions and revocations take effect immediately.
- Security & isolation: Fixed cross-workspace data exposure, tightened client and project relationships, and secured uploaded files.
- Platform upgrades: Updated Angular, NestJS, Prisma, Nx, and other dependencies; migrated API tests to Vitest.
Details
Multi-currency support (#31)
- Replaced the fixed currency enum with ISO 4217 currency codes.
- Added client-specific currencies for project budgets, hourly rates, and portal displays.
- Dashboard totals, revenue charts, and reports convert amounts to the workspace currency; lists retain original amounts with converted estimates.
- Added internal project notes, hidden from clients.
- Added a CI workflow for tests.
Billable expenses & invoice emails (#29)
- Added a billable-expenses picker when creating invoices. Expenses can only be billed once, in the same currency, with amounts preserved at invoicing.
- Invoice emails, PDFs, and portal views now display billed expenses separately, with their own subtotal.
- Client emails use the workspace's business name and configured sending domain.
- Added milestone-completion emails and enhanced project-status notifications with progress, next milestones, and portal links.
- Fixed cancelled invoices being sent.
Workspace & client isolation (#30)
- Added explicit workspace ownership to expenses and documents, preventing cross-workspace exposure.
- Moving projects between clients now transfers associated expenses and documents and updates portal sharing atomically.
- Enforced matching client/project ownership for documents and client/invoice ownership for payments.
- Removed public upload serving and storage URL exposure; file downloads now require authorization.
- Blocked portal tokens from accessing the notification WebSocket gateway.
Client portal access control (#32)
- Added workspace-wide default permissions for projects, documents, quotes, and payments, with per-client overrides.
- Added per-user project restrictions, supporting access to all shared projects or selected projects only.
- Rebuilt portal access management for enabling access, sharing projects, managing permissions, and inviting or revoking users.
- User suspensions and revocations now take effect immediately.
- Existing custom client permissions are preserved during migration.
Platform upgrade (#33)
- Upgraded Angular 22, Nx 23.3, Prisma 7.10, TypeScript 6, Express 5, and related dependencies.
- Migrated API tests from Jest to Vitest.
- Removed the need for --legacy-peer-deps during installation and Docker builds.
- Removed unused template libraries from the original workspace.
- Added optional MAIL_TEMPLATES_DIR configuration for custom email templates (work in progress).
Full Changelog: v0.3.0...v0.4.0
foundry v0.3.0
Summary
Projects have delivery milestones - trackable, reorderable checkpoints with a status and due date - visible where a project shows
up: a new project workspace page for the team, and read-only on the client portal so clients can see progress without having to ask.
Details
Project milestones & a real project workspace page
- Projects have milestones including ability to reorder and add notes.
- Workspace projects dedicated page with overview and quick actions.
Client portal
- Clients can now see milestone progress for their own projects. They can view the progress of milestones as an overview.
Notifications
- Clients get notification on project status changes alongside existing in-app notifications.
- Notifications tab on workspace configuration.
foundry v0.2.0
Summary
- Clients can now log into their own portal to see their projects, invoices, quotes, payments, and documents.
- Fixes rate-limiting low limits and toast notifications
Breakdown
Client portal
- Each client's portal runs from its own slug. Covers dashboard, projects, invoices, quotes, payments, and documents.
- Workspace owners manage portal access for individual clients.
Bug fix: toast notifications
- Rendering toast notifications across admin.
- Increase limits on default rate limits.
foundry v0.1.1
No visible product changes for users. Groundwork for faster, safer releases going forward: every merge to main now produces testable staging build before anything reaches prod.
What's Changed
- New staging and release pipelines.
- Use
docker/build-push-actionwith GitHub Actions layer caching and parallel API/client builds.
foundry v0.1.0
What's Changed
- Client & project management - track clients and the projects tied to them.
- Quotes - Projects - Invoices - turn an accepted quote into a project and bill it with itemized, auto-numbered invoices.
- Get paid, and reconcile it - record payments against invoices and see what's outstanding.
- Expense tracking - log costs against projects.
- Document storage - upload and store files against clients/projects, backed by S3.
- Real-time notifications - users are notified in-app and via mail (invoice sent, invoice paid, reminders) with branded mail.
- Workspace branding - customize and white label the business workspace.
- API protection - rate limiting on the API to guard against abuse.