Skip to content
MARCEL RICART

Simple Apps

Família d'aplicacions petites per resoldre problemes concrets de negoci, compartint una base comuna.

Menys software. Més negoci.

Simple Apps és una suite d’eines de gestió petites, específiques i fàcils d’utilitzar per a negocis petits, amb necessitats específiques i sense temps per aprendre a fer funcionar un monstre.

La idea neix d’una cosa que he vist repetidament treballant amb petits negocis: moltes vegades el software acaba sent més complicat que el problema que havia de resoldre.

Simple Apps va en la direcció contrària.

Aplicacions independents, amb una funció clara, que poden treballar soles o formar part d’un mateix ecosistema.

Què estic construint

Simple Apps no és una única aplicació.

És una plataforma sobre la qual vaig construint diferents productes.

Cada targeta és un producte viu de la família. Comencen amb poca cosa i creixen quan hi ha una necessitat real darrere.

Aquests són només els primers mòduls.

La base comuna està pensada perquè un mateix negoci pugui tenir diversos productes contractats, compartir identitat, organització, subscripcions i facturació, i gestionar-los des d’un mateix espai.

Tot això és la direcció arquitectònica actual del projecte. No tot està igual de polit en cada peça — algunes parts ja funcionen, unes altres encara s’estan construint, i algunes estan esperant el moment correcte per existir.

La filosofia

Intento aplicar una regla bastant simple:

Construir primer el camí principal que aporta valor i afegir complexitat només quan existeix un problema real que la justifica.

Això significa prioritzar:

  • funcionalitats petites i ben delimitades;
  • desplegaments incrementals;
  • arquitectura modular;
  • pocs acoblaments entre productes;
  • comportaments explícits en lloc de màgia;
  • tests sobre les regles importants del negoci;
  • una especial obsessió per poder evolucionar el sistema sense haver-lo de reescriure cada dos anys.

No intento anticipar tots els casos possibles.

Intento construir una base prou sòlida perquè els casos nous es puguin incorporar quan apareguin.

Tecnologia

El projecte està construït principalment amb:

Backend

Python · Django · PostgreSQL

Frontend

Django Templates · HTMX · Alpine.js · Bulma

Infraestructura

Linux · Docker · Nginx · Cloudflare

Pagaments

Stripe

La major part de la plataforma segueix deliberadament una arquitectura de monòlit modular.

No hi ha microserveis perquè sí.

Django gestiona el domini principal i cada producte manté els seus propis models, regles i interfícies, compartint només les peces que realment són comunes: organitzacions, usuaris, permisos, billing i activació de productes.

Arquitectura multi-producte

Una de les parts més interessants del projecte no són les aplicacions individuals, sinó la plataforma que hi ha al darrere.

El model gira al voltant d’una Organization.

Una organització pot tenir diferents usuaris, rols i productes contractats. A partir d’aquí, cada aplicació implementa el seu propi runtime però utilitza una base comuna per determinar què té contractat el client, què està configurat i què pot utilitzar.

Això permet construir productes independents sense acabar mantenint una plataforma completament diferent per a cadascun.

model conceptual

Organization
│
├── Simple Bookings
├── Simple Menu
├── Simple POS
├── Simple Web
└── Simple CRM
 
shared:
identity · permissions · billing · subscriptions

Build in public

Simple Apps està en desenvolupament actiu.

Vaig publicant decisions d’arquitectura, experiments, errors, canvis de direcció i parts del procés de construcció.

M’interessa especialment documentar les decisions que normalment desapareixen darrere del producte final:

per què una funcionalitat existeix, per què una altra s’ha descartat, quan una abstracció és útil i quan només estem complicant el sistema.

L’objectiu no és construir el sistema més sofisticat possible.

És construir software que pugui continuar sent simple quan el projecte deixi de ser petit.

Build small.
Ship often.
Keep it understandable.