Skip to content

Releases: Tillertech/foundry

foundry v0.4.0

Choose a tag to compare

@MarvinKweyu MarvinKweyu released this 29 Oct 09:24
a818227

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

Choose a tag to compare

@MarvinKweyu MarvinKweyu released this 23 Sep 10:26
3264647

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

Choose a tag to compare

@MarvinKweyu MarvinKweyu released this 22 Sep 15:46
4a52c0b

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

Choose a tag to compare

@MarvinKweyu MarvinKweyu released this 16 Sep 10:25
b5d2155

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-action with GitHub Actions layer caching and parallel API/client builds.

foundry v0.1.0

Choose a tag to compare

@MarvinKweyu MarvinKweyu released this 14 Sep 18:50
6bc4d1a

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.