Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 

Repository files navigation

🧾 OrçaPlus

Professional PDF quotes in two minutes, straight from your phone.

orcaplus.app · coming soon to the App Store and Google Play

This repository is a showcase: the source code is private. What lives here is the product, the architecture and the reasoning behind it.


The problem

Painters, electricians, carpenters and installers send quotes as voice messages or photos of handwritten notes. They lose jobs to whoever sends a PDF with a logo on it, because that one looks like a company. The alternatives are a spreadsheet on a computer they don't have with them during the site visit, or construction ERP software that's far too big and expensive for one person.

This is: add the client, list the items, generate the PDF, send it over WhatsApp — while still standing in the client's living room.


What it does

  • Quotes with line items, quantity, unit price and discount
  • Company details and logo, applied to the PDF header
  • PDF generation and sharing through the native share sheet
  • Saved clients to reuse on the next quote
  • Duplicate a previous quote
  • Works with no internet and no account

Architecture

React Native (Expo)
  ├── UI  ──►  hooks  ──►  local storage
  ├── PDF generation (HTML → print)
  └── RevenueCat (anonymous id)

No backend, no remote database, no login. All data lives on the device.


Technical decisions

Zero backend, on purpose. The app doesn't need anything from a server to do its job, so there is no server. That removes fixed running costs, removes the sign-up step (the single biggest drop-off for this audience), keeps third-party personal data off any infrastructure of mine, and means nothing breaks when someone else's service goes down.

RevenueCat with an anonymous id from v1. Subscriptions without an account sounds contradictory, but RevenueCat ties the purchase to an anonymous user and restores it through the store account. People pay without ever creating a login — and the day logins do exist, the aliasing path is already there.

The brand goes in the PDF footer. Every quote produced lands in the hands of an end customer who might be the next subscriber. It's an acquisition channel built into the product itself, and it's the criterion that made this idea win over the alternatives.

Two architectural rules, no exceptions. A component never imports a service or storage module directly — always through a hook, which keeps a future swap from local to remote persistence contained in one layer. And styles always live in a separate file next to the component, never inline. These are the conventions that standardize the next apps in this series.


Built by Luccas Fraga

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors