RT
Active ToDy95/razvan-todica-business-portfolio

Project intelligence

Răzvan Todică Business Portfolio & Automation OS

Portfolio platform / business automation workspace

A private-first portfolio and business operating layer that turns real engineering work into a clear public story, a controlled lead flow, and an approval-gated content engine.

Latest signal

Aug 26, 2026

Synced Aug 30, 2026

85

Commits · 365 days

63

Pull requests · 365 days

0

Issues · 365 days

0

Code reviews · 365 days

Public summary

Public summary

What this project is

This is a live personal portfolio, but it is deliberately more than a collection of pages. It is a private-first business operating layer for presenting engineering work, explaining product thinking, capturing qualified enquiries, managing editorial content, and distributing approved stories across the channels where the brand already exists.

The public site is the visible layer: it explains the work, services, experience, and active projects in a business-first way. The protected owner workspace is the control layer: it manages leads, editorial drafts, source material, approvals, integrations, delivery status, and operational follow-up. The goal is to make the system useful both as a portfolio and as a repeatable engine for trust, conversations, and future content.

What it brings to the business

  • A clearer public explanation of what is being built, why it matters, and what could come next.
  • A controlled way to turn private GitHub projects into sanitized public case studies without making the repositories public.
  • A single place to capture, review, qualify, and follow up on inbound opportunities.
  • A source-backed editorial workflow that can create drafts and distribution variants while keeping human approval in the loop.
  • A foundation for future video and social automation without pretending that an unverified provider integration is already production-ready.

Main capabilities

Public portfolio and project intelligence

The site contains the personal brand homepage, service pages, client/product work, contact flow, legal pages, and a live Currently Building area. The public project pages can show the business concept, current status, focus areas, roadmap, technology choices, selected links, recent activity, and a contribution-style graph.

Private GitHub repositories are never called directly by public visitors. The owner connects a read-only GitHub App, selects the repositories that are allowed into the portfolio, and adds an explicit .portfolio/allow file to each repository. The sync reads only the known public brief files and bounded GitHub metadata, sanitizes Markdown and URLs, and stores the public-safe result in Supabase. Removing the marker removes the cached project at the next successful sync.

The .portfolio contract keeps the project story next to the code:

  • config.json holds title, status, technology, links, focus areas, display settings, and roadmap items;
  • summary.md explains the idea, business value, current state, and future direction;
  • implementation-plan.md contains the intentionally published milestone view for this repository;
  • allow is the explicit publication switch.

Owner workspace, database, and security

Supabase provides the Postgres and Storage foundation. RLS policies keep owner data and editorial records behind the server-side boundary, while Supabase Auth protects the admin workspace. The service-side key is never sent to the browser. The architecture keeps public reads narrow and uses server routes for sensitive mutations.

Lead capture, mailing, and OpportunityOS

The contact form collects a structured enquiry with validation, consent handling, optional phone contact, attribution context, and abuse protection. A valid submission can be persisted as lead data and delivered through Resend as an owner notification plus a sender acknowledgement when the mail configuration is available. The owner can review leads in the private inbox, track their status, and open a direct reply flow without exposing the message to analytics.

The OpportunityOS integration is a protected, signed lead-delivery path. It can forward validated lead payloads to the external system when configured, records delivery attempts, and keeps failures visible for retry. It is not a public write endpoint and does not silently send unrelated visitor messages.

Chat and owner response

The homepage includes a session-scoped live chat launcher. Visitors can leave a bounded message and continue the same conversation during their session. The owner can set availability, read and answer messages from /admin/chat, and optionally receive Web Push notifications through the installed PWA. Chat data remains behind server routes and RLS-protected tables; it is not exposed as an anonymous Supabase browser channel.

The current chat is intentionally owner-replied. Automatic AI replies are not claimed as delivered; the next step is to decide whether an AI assistant should draft replies under the same owner review and privacy rules.

AI-assisted editorial automation

The editorial pipeline uses a curated source registry instead of unrestricted scraping. It normalizes and deduplicates source items, ranks relevant material, creates an article brief and original draft, produces one shared short social variant, and prepares a vertical-video brief. When the server-side OpenAI configuration is available, it can also generate a structured editorial package and an optional cover image. Provider failures fall back to a deterministic source-backed draft and leave the cover ready for explicit review rather than making a false claim.

The owner can edit, approve, schedule, publish, retry, or reject. Automatic publishing is gated by an explicit owner policy, a complete package, a source trail, and idempotent delivery records. The system keeps a run ID, step status, error state, retry path, and audit trail so an automation failure does not become an invisible business failure.

Social and content distribution

The distribution workspace reuses one approved short post and its approved cover rather than asking the AI to invent a separate story for every network. The current connector surface includes:

  • LinkedIn personal profile publishing;
  • Facebook Page publishing and a separately audited Page Story follow-up;
  • X publishing, including mechanical thread splitting when needed;
  • Instagram professional feed publishing with a native Share to Story handoff;
  • Threads and Bluesky publishing;
  • Pinterest Business and Personal connector paths with separate account authorization and Board selection.

Every delivery is approval-gated, provider-specific, retryable, and protected against duplicate publishing. Pinterest Business still has external developer setup/approval follow-up, and Pinterest Personal requires its separate owner authorization. YouTube Shorts and TikTok currently receive reviewable briefs and manual posting support, not claimed automatic video publishing.

What is still coming soon

The next product step is an end-to-end video pipeline:

  1. take an approved article or live-post concept;
  2. generate a vertical video with a controlled visual language, voice/captions, and safe asset provenance;
  3. keep the video as a reviewable asset in the private workspace;
  4. publish only after owner approval to Instagram Reels, Facebook Reels, TikTok, and YouTube Shorts;
  5. record a provider-specific delivery result, permalink, retry state, and duplicate guard.

This is intentionally marked Coming soon. The repository already produces editorial video briefs, but automatic video generation and automatic Reels/Shorts/TikTok publishing are not yet implemented as a complete production flow.

Current activity

The portfolio sync can show the last 365 days of repository activity, including commits, pull requests, issues, and reviews. This project also exposes a public GitHub profile card for ToDy95. The profile card uses public GitHub statistics and, when selected portfolio repositories are synchronized, a privacy-safe aggregate of their activity. Private repository details and the owner's global private GitHub contribution total are not copied into the public portfolio.

Guardrails

The project is designed around private-by-default integrations, explicit opt-in, server-only secrets, RLS, consent-aware analytics, source attribution, human review before external publishing, idempotent retries, and honest status labels. It is a portfolio, but it is also a small operating system for turning engineering work into evidence, conversations, and durable business assets.

Contribution graph

The work behind the work.

Commits, PRs, issues and reviews

All available activity

LessMore
Sep
Oct
Nov
Dec
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug

Recent activity

What is moving now.

  1. [TOD-068] Make OpenAI editorial generation durablePull request - merged · Aug 28, 2026
  2. [TOD-068]fix(editorial): make OpenAI generation durableCommit · Aug 28, 2026
  3. [TOD-067] Add safe social distribution and socials hubPull request - merged · Aug 27, 2026
  4. [TOD-067]feat(social): add distribution safeguards and socials hubCommit · Aug 27, 2026
  5. [TOD-067] Add safe social distribution and socials hubPull request - closed · Aug 27, 2026
  6. [TOD-065] Complete activity filtering and repository documentationPull request - merged · Aug 26, 2026
  7. [TOD-065]feat(projects): complete activity filtering and repository documentationCommit · Aug 26, 2026
  8. [TOD-064]docs(plan): record main toolchain mergeCommit · Aug 26, 2026
  9. [TOD-064]build: merge LTS-compatible toolchainCommit · Aug 26, 2026
  10. [TOD-064]docs(plan): finalize toolchain milestoneCommit · Aug 26, 2026
  11. [TOD-064]build: refresh LTS-compatible application toolchainCommit · Aug 26, 2026
  12. [TOD-063]docs(plan): merge GitHub milestone finalizationCommit · Aug 26, 2026
  13. [TOD-063]docs(plan): finalize GitHub activity milestoneCommit · Aug 26, 2026
  14. [TOD-063]fix(github): merge connection diagnosticsCommit · Aug 26, 2026
  15. [TOD-063]fix(github): log existing installation failuresCommit · Aug 26, 2026
  16. [TOD-063]feat(github): merge connection repair and project activityCommit · Aug 26, 2026
  17. [TOD-063]fix(github): reconnect existing app and aggregate project activityCommit · Aug 26, 2026
  18. [TOD-062]feat(portfolio): merge GitHub project publishing into mainCommit · Aug 26, 2026
  19. [TOD-062]docs(plan): record integration layout milestoneCommit · Aug 26, 2026
  20. [TOD-062]fix(admin): move GitHub to other connectionsCommit · Aug 26, 2026

Published roadmap

What is shipped and what comes next

This roadmap is intentionally public. It describes the product direction without exposing secrets, private messages, credentials, internal logs, or confidential client information.

Delivered

  • [done] Public personal portfolio with service positioning, client/product work, contact flow, legal pages, responsive navigation, and SEO discovery routes.
  • [done] Supabase Postgres and Storage foundation with generated types, RLS policies, server-only access, and owner authentication for the admin workspace.
  • [done] Structured lead capture with validation, consent, attribution, rate protection, idempotent retries, Resend notification/acknowledgement support, private lead inbox, and status tracking.
  • [done] Signed OpportunityOS lead delivery path with audit records and protected retry behavior.
  • [done] Owner-replied live chat, owner presence, private chat persistence, PWA support, and optional Web Push notification flow. A real owner-device push check remains operational follow-up.
  • [done] Curated editorial source registry, deduplication, source-backed drafts, citations, SEO fields, review states, and private editorial run history.
  • [done] Optional OpenAI editorial package and cover generation with deterministic fallbacks and owner review before publishing.
  • [done] Approval-gated distribution workspace with shared social copy, platform variants, delivery status, idempotency keys, and manual copy/download support.
  • [done] LinkedIn personal, Facebook Page, X, Instagram feed, Threads, and Bluesky delivery paths; Facebook Page Story follow-up; separate Pinterest Business and Personal connector paths.
  • [done] Private GitHub App project discovery with owner selection, .portfolio/allow opt-in, sanitized Markdown/config, cached project activity, and public project pages.

Operationally pending

  • [in-progress] Complete the authenticated GitHub connection in the admin workspace, refresh the repository list, select the desired repositories, add their public .portfolio briefs, and run a controlled sync.
  • [in-progress] Finish external Pinterest Business developer approval and the separate Pinterest Personal authorization if those destinations are needed.
  • [in-progress] Run a controlled production Web Push test on the owner's device.
  • [in-progress] Confirm each enabled social account and feature flag in production before enabling unattended publishing.

Coming soon

  • [planned] Generate production-safe vertical videos from approved articles and live-post concepts, including captions, asset provenance, reviewable files, and cost/usage tracking.
  • [planned] Add approval-gated automatic publishing to Instagram Reels, Facebook Reels, TikTok, and YouTube Shorts with provider-specific status, retry, permalink, and duplicate protection.
  • [planned] Evaluate an AI chat assistant that drafts visitor replies for owner approval. Automatic AI replies are intentionally not enabled today.
  • [planned] Expand analytics and reporting around approved content, leads, and distribution outcomes without collecting sensitive lead fields in event properties.

Product rule

Every automated action should be observable, retryable, idempotent, and reviewable. A connector is not considered complete merely because an OAuth button exists; the provider account, permissions, asset format, delivery result, and failure path must be verified before it is described as live.

Back to live projects