React and TypeScript web applications

Abstract teal diagram of interface, API, and data layers

Web applications where the React interface, API, data, access control, and operations form one maintainable system.

Discuss this scopeContact form

Tell me the goal, stack constraints, and timeline — I reply on Telegram.

I build web applications where the interface cannot be separated from business rules, data, and operations: admin panels, internal workspaces, reports, APIs, and integration services. I typically use React and TypeScript on the client, Node.js on the server, and PostgreSQL or SQLite for storage. Astro remains my choice for content sites; products centred on long sessions, complex forms, and state need an application interface rather than a marketing page.

When operators still live in Excel, PDF packs, and folders of scans, I add a Python (or Node) file contour so data reaches the dashboard or ERP without copy-paste. Examples: GDCExcelWorker, PDFImageMerger, PDFPagesManager.

Work starts with the critical journey and data sources. Who creates an entity, who may change it, what happens when a request is repeated, and how does an operator see a failure? These answers shape the data model, API, and roles before a table library does. For an existing product, I first inspect dependencies, builds, migrations, and the release path. A rewrite is proposed only when its value can be demonstrated.

The scope is the software product: interface, backend, authentication, agreed integrations, tests for important paths, and run documentation. Market research, brand identity, and 24/7 support are not included by default. Acceptance is scenario-based: the right role can sign in and save data, unavailable services produce a useful error, and the team can start the project from its documentation.

If an established CRM, BI platform, or admin module covers the process, configuring it is more responsible than replacing it. Custom code makes sense for unusual workflows, permissions, integrations, or interfaces that materially affect daily work. For a public-facing site without a complex session, see marketing websites.

Acceptance criteria

Done when

  • Critical user journeys work end-to-end in staging
  • Roles and permissions match the agreed matrix
  • Repeated actions do not create duplicate entities

Deliverables

  • Source repo + deploy notes
  • Admin / operator access credentials
  • Short handoff checklist

Out of scope

  • Content writing and legal copy
  • 24/7 ops / on-call unless agreed

The final acceptance checklist is confirmed in the brief or contract; the list above is a scope alignment guide.

Selected portfolio work

All projects
employment_cal

employment_cal

Employment_cal is a dynamic calendar application designed to streamline scheduling and employment management, featuring interactive day, list, and time views. Utilizing robust libraries like FullCalendar and Bootstrap, i…

Details
ankiGenAddon

ankiGenAddon

Developed an advanced Python-based Anki addon for automated flashcard generation, featuring support for code snippets (with syntax highlighting), markdown, and JSX. Implemented custom UI dialogs, progress tracking, and m…

Details
PDFImageMerger

PDFImageMerger

PDFImageMerger is a Python tool designed to merge images into a single PDF file, specifically targeting folders named 'Passport'. It supports various image formats, automatically detects image orientation, and excludes s…

Details
dashBoard

dashBoard

dashBoard is a dynamic and interactive web application developed using TypeScript that offers a seamless user experience. It features responsive design elements and real-time data visualization, making it an ideal soluti…

Details
speaking-cards

speaking-cards

Expo/React Native app for speaking practice with Jest and Testing Library, Husky and lint-staged for quality gates. Targets mobile UX and iterative card-based learning flows.

Details
PDFPagesManager

PDFPagesManager

PDFPagesManager is a streamlined tool for automatically processing and modifying PDF files by removing specific pages based on their page count, ensuring efficient document management. It creates modified copies of PDF f…

Details

How I work

Request

You describe the goal, constraints, timeline, budget, and infrastructure.

Clarify

I ask questions, review existing code or a brief when needed, and lock scope.

Plan

I propose stages, priorities, and a timeline range; we agree on reporting.

Build

Iterations with intermediate results: commits, demos, and feedback.

Handoff & support

Deploy and docs as needed; we agree on maintenance or targeted follow-ups.

FAQ

Tap a question to expand the answer.

What stack do you typically use?

TypeScript across the stack: React or Astro for UI, Node.js for APIs, PostgreSQL or SQLite for persistence, plus REST integrations as needed.

How long does a typical project take?

Depends on scope. Focused tools often reach a usable MVP in 4–8 weeks with iterative vertical slices rather than a big-bang launch.

Do you write automated tests?

Yes where they pay off: critical user flows, API contracts, and data transforms—not blanket coverage for its own sake.

Can our team maintain the code after handoff?

That is the goal: explicit types, pragmatic architecture, short handoff notes, and optional pairing during transition.

What kinds of products do you build most often?

Admin panels, internal tools, dashboards, calculators, and content products where correctness and performance matter.

Discuss this scopeContact form

Tell me the goal, stack constraints, and timeline — I reply on Telegram.