Någon krydda
Somespai är en P2P-marknadsplats för utrymmen i Barcelona och Katalonien som förbinder människor som behöver ett utrymme med dem som har ett tillgängligt. Projektet föds med en mycket tydlig filosofi: radikal minimalism, prioriterad geolokalisering, mobil-först-orientering och friheten att avsluta ekonomiska avtal externt.
Plattformen omfattar alla typer av utrymmen: förråd för lagring, arbetsstudier, trädgårdar, repetitionsrum, flerfunktionella utrymmen för evenemang, parkeringsplatser, bland annat.
Utveckling och arkitektur
När det gäller den tekniska stacken är Somespai helt utvecklad i öppen källkod med moderna och effektiva teknologier:
- Next.js 15 (App Router, RSC): Generering av statiska vägar (SSG) för städer (förbättrad SEO) och serverkomponenter för att erbjuda höga prestanda och snabb inläsning.
- Supabase: Som backend-as-a-service. Den använder PostgreSQL-databas med tillägget PostGIS för att utföra exakta geolokaliserade frågor (
nearby_spaces), samt för att hantera autentisering (Magic Links), lagring av foton och strikta RLS-säkerhetsprinciper. - MapLibre GL JS: System för öppen källkodskartor för att garantera en smidig upplevelse.
- Internationalisering (i18n): Fullständigt översatt gränssnitt till tre språk: katalanska (standard), spanska och engelska (med rutkomponent
/[locale]). - Eget designsystem: Användningen av Tailwind eller CSS-in-JS har undvikits till förmån för inbyggd CSS med
@layer-grupper, uppbyggd baserat på eget komponentdesign (tillgängligt från det dolda avsnittet/design-system).
Delta och bidra
Projektet finns på GitHub: xarop/app.somespai.
Alla är välkomna inte bara att testa det —om du har något litet rum eller ett tomt förråd som du vill annonsera och hyra ut, tar det bara ungefär två minuter att registrera och publicera ditt utrymme— utan också att bidra till källkoden.
Om du är utvecklare och vill hjälpa till att växa och förbättra plattformen, ta en titt på dokumentet CONTRIBUTING.md i repositoriet samt på DESIGN.md och AGENTS.md för att förstå arkitektur- och designkonventionerna och föreslå dina Pull Requests.