C
cloud-storage

  • talk2nIcK is a mobile-first messenger PWA built on Firebase and organised as a pnpm monorepo.

    The application provides six-language real-time translation, group chat, and media sharing. It is installable to the home screen and remains usable offline.

    Stack: React 19, TypeScript, Vite, and Tailwind CSS on the frontend; Cloud Functions (2nd gen, Node.js 22), Cloud Firestore, Realtime Database for presence and typing indicators, Cloud Storage for media, Firebase Authentication with the Google provider, and FCM Web Push on the backend. Translation is served through Cloud Translation API Advanced (v3), invoked from a Cloud Function so that credentials never reach the client and results can be cached. The landing page and admin console are an Astro static site published to GitLab Pages.

    Repository layout:

    apps/web — React PWA, the user-facing application apps/landing — Astro landing page and admin console functions — Cloud Functions packages/core — framework-agnostic domain logic and its unit tests packages/i18n — locale bundles (en, es, ja, ko, vi, zh) packages/shared — Firebase bootstrap and environment validation packages/ui — shared UI primitives and design tokens

    Continuous integration deploys each target independently: Firebase Hosting, GitLab Pages, Cloud Functions, and the Firestore and Cloud Storage security rules and indexes. Realtime Database rules are deployed by hand, because the CLI rules endpoint does not authorise service accounts. Deployment credentials are held as protected CI variables and are never committed.

    Web application: https://talk2nick.web.app Landing page and admin console: https://heroyik.gitlab.io/talk2nick/

    Architecture, security model, and operational procedures are documented under docs/. The product requirements and implementation plan, written in Korean, are in PLAN.md.

    Updated
    Updated
  • CryptaVault is a privacy-first, open-source cloud storage system built under the AGPL 3.0+ license that ensures users retain full ownership and control of their data. It uses end-to-end encryption, on-device key generation, compression, deduplication, and distributed storage to minimize storage usage while maximizing security. Designed for cross-device synchronization across mobile, desktop, and web, CryptaVault ensures that no server or third party can access user data in plaintext. Its goal is to make secure, zero-knowledge storage the global standard for personal and professional digital files. https://roxanneardary.com/cryptavault/

    Updated
    Updated