Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/GuillermoNavarro/Proyecto_comunidades/llms.txt

Use this file to discover all available pages before exploring further.

Comunidades Vecinos is a comprehensive web application that gives Spanish residential homeowners communities a single, self-managed hub for every administrative task they face day to day. From issuing fee receipts and tracking community finances to publishing notices and sharing documents, the platform replaces scattered spreadsheets and paper-based processes with a structured, role-aware interface accessible from any browser.

Problems it solves

Managing a comunidad de propietarios involves coordinating fees, expenses, communications, and resident records across people with very different levels of technical confidence. Comunidades Vecinos addresses this by:
  • Automating fee and receipt management — community quotas are created once and individual receipts are generated for every resident automatically, with real-time payment-status tracking.
  • Centralising financial records — income and expense movements are recorded against each community, giving presidents and treasurers an up-to-date ledger without a separate accounting tool.
  • Providing a resident portal — ordinary residents can check their own receipts, download community documents, and read announcements without contacting the administrator.
  • Enforcing data isolation — every community’s data is scoped by design; a user belonging to one community never sees data from another.
  • Eliminating paper distribution — official documents (meeting minutes, regulations, certificates) are uploaded once and available instantly to all authorised members.
  • Streamlining incident reporting — residents can raise issues or announcements, which administrators can moderate and resolve within the same interface.

Key features

Communities

Create and manage multiple homeowners communities, each with its own address, residents, finances, and documents.

Users & Roles

Fine-grained access control with three roles: resident (USER), community administrator (ADMIN), and platform operator (SUPER_ADMIN).

Fees & Receipts

Define ordinary, extraordinary, or individual quotas and issue individual receipts to residents, with PENDIENTE / PAGADO status tracking.

Finances

Record income and expense movements per community, linked to receipts where applicable, for a full financial audit trail.

Documents

Upload and manage community documents (PDFs, meeting minutes, regulations) with per-file descriptions and timestamps.

Announcements

Post news items and incident reports (NOTICIA / INCIDENCIA) with optional images, moderation flags, and resolution dates.

User roles

The platform models three distinct roles, defined in the Rol enum on the backend:
RoleSpanish equivalentPermissions
USERVecino (resident)View own receipts, community documents, announcements, and personal profile.
ADMINPresidente / TesoreroAll USER permissions plus full management of residents, quotas, receipts, finances, and publications within their community.
SUPER_ADMINGestor de plataformaAll ADMIN permissions across every community plus the ability to create new communities and assign ADMIN users.
Role enforcement happens at both the API layer (Spring Security method-level annotations with @EnableMethodSecurity) and the frontend React Router layer, where protected routes check the decoded JWT role before rendering.
A special ROLE_PRE_AUTH authority is granted to any user whose cambiarPass flag is true. Users in this state are forced to change their password before they can access the application. See the Security model section for details.

Tech stack

Backend

ComponentTechnology
LanguageJava 21
FrameworkSpring Boot 4.0.5
PersistenceSpring Data JPA + Hibernate (MariaDB dialect)
DatabaseMariaDB / MySQL (comunidad_vecinos schema)
SecuritySpring Security 6 — stateless JWT filter chain
JWT libraryJJWT 0.11.5 (jjwt-api / jjwt-impl / jjwt-jackson)
API docsSpringDoc OpenAPI 2.3.0 (Swagger UI)
MailSpring Boot Mail (configurable SMTP)
Build toolMaven (Spring Boot Maven Plugin)

Frontend

ComponentTechnology
UI libraryReact 19
Build toolVite 8
StylingBootstrap 5.3 + Bootstrap Icons 1.13
RoutingReact Router DOM 7
HTTP clientAxios 1.13
Auth statejwt-decode 4 (client-side token decoding)
The interactive API reference is available at /swagger-ui/index.html on a running backend instance (e.g. http://localhost:8081/swagger-ui/index.html). All endpoints are documented there, including request/response schemas and authentication requirements.

Build docs developers (and LLMs) love