Documentatie
Laatst bijgewerkt:
Welkom bij de documentatie van SM Supports. In deze uitgebreide gids lees je meer over ons ontwikkelproces, onze technologiestack, API-integraties en best practices voor het werken met onze diensten.
Aan de slag
Volg deze stappen om aan de slag te gaan met de diensten en projecten van SM Supports.
Eerste adviesgesprek
Plan een gratis adviesgesprek om je projectwensen, doelen en planning te bespreken.
Plan een gesprekProjectplanning
We stellen een gedetailleerd projectplan op met scope, mijlpalen, deliverables en planning. Je ontvangt een uitgebreid projectvoorstel waarin alle aspecten van het project zijn beschreven.
Ontwikkeling & samenwerking
Ons team start met de ontwikkeling, met regelmatige check-ins en updates. Je krijgt toegang tot stagingomgevingen om de voortgang te bekijken en gedurende het hele proces feedback te geven.
Lancering & support
Na grondige tests en je goedkeuring lanceren we je project. We bieden doorlopende support, onderhoud en documentatie voor succes op de lange termijn.
Technologiestack
We gebruiken moderne, toonaangevende technologieën om schaalbare en snelle applicaties te bouwen.
Frontendontwikkeling
- Next.js 15 – React-framework met App Router
- React 18 – Componentgebaseerde UI-bibliotheek
- TypeScript – Typeveilig JavaScript
- Tailwind CSS – Utility-first CSS-framework
- Framer Motion – Animatiebibliotheek
Backend & API's
- Node.js – JavaScript-runtime
- Next.js API Routes – Serverless functies
- REST API's – RESTful architectuur
- Cloudflare Workers – Edge computing
- Resend – Dienst voor e-mailbezorging
Database & opslag
- Cloudflare D1 – Serverless SQLite
- PostgreSQL – Relationele database
- MongoDB – NoSQL-database
- Redis – In-memory caching
Platforms & tools
- Wix – Platform om websites te bouwen
- Velo (Wix Code) – Functionaliteit op maat
- Git & GitHub – Versiebeheer
- Vercel – Deploymentplatform
API-referentie
Documentatie van onze API-endpoints en integratiediensten.
POST /api/contact
Een aanvraag via het contactformulier versturen
Body van het verzoek:
{
"name": "string",
"email": "string",
"subject": "string",
"message": "string"
}Antwoord (200):
{
"success": true,
"message": "Message sent successfully"
}POST /api/schedule
Een adviesgesprek plannen
Body van het verzoek:
{
"name": "string",
"email": "string",
"company": "string",
"date": "string",
"time": "string",
"timezone": "string",
"projectType": "string",
"description": "string"
}GET /api/timeslots
Beschikbare tijdsloten voor een afspraak ophalen
Queryparameters:
?date=2025-10-02&timezone=America/New_York
Antwoord (200):
{
"availableSlots": ["09:00", "10:00", "14:00"],
"bookedSlots": ["11:00", "15:00"]
}Deployment & hosting
We zetten applicaties live op toonaangevende platforms voor optimale prestaties en betrouwbaarheid.
Vercel (primair platform)
Ons primaire deploymentplatform voor Next.js-applicaties, met automatische CI/CD, edge functions en een wereldwijd CDN.
- Automatische deployments vanuit Git
- Preview-deployments voor pull requests
- Edgenetwerk met meer dan 100 locaties
- Ingebouwde analyse en monitoring
Cloudflare Pages & Workers
Platform voor edge computing, met serverless functies, de D1-database en hosting van statische sites.
- Serverless D1 SQLite-database
- Workers voor edge computing
- R2-objectopslag
- DDoS-bescherming en beveiliging
Hosting op maat
Afhankelijk van de projectvereisten werken we ook met diverse andere hostingproviders.
- AWS (EC2, S3, CloudFront, Lambda)
- DigitalOcean (Droplets, App Platform)
- Netlify (statische sites, edge functions)
- Heroku (containerdeployments)
Best practices
Richtlijnen en aanbevelingen voor het werken aan projecten van SM Supports.
Codekwaliteit
- Gebruik TypeScript voor typeveiligheid en een prettigere ontwikkelervaring
- Volg de ESLint- en Prettier-configuraties voor een consistente codestijl
- Schrijf duidelijke commitberichten volgens Conventional Commits
- Houd componenten klein, gericht en herbruikbaar
- Documenteer complexe logica en API-interfaces
Prestatieoptimalisatie
- Optimaliseer afbeeldingen met de Image-component van Next.js
- Gebruik lazy loading voor content onder de vouw
- Gebruik waar mogelijk React Server Components
- Beperk de bundlegrootte met code splitting en tree shaking
- Cache API-responses en statische assets op de juiste manier
Beveiliging
- Commit nooit gevoelige gegevens of API-sleutels naar versiebeheer
- Gebruik omgevingsvariabelen voor configuratie
- Zorg voor goede validatie en opschoning van invoer
- Gebruik HTTPS voor alle productiedeployments
- Houd dependencies up-to-date om beveiligingslekken te dichten
Toegankelijkheid (A11y)
- Gebruik semantische HTML-elementen (nav, main, article enz.)
- Geef alle afbeeldingen een alt-tekst
- Zorg voor voldoende kleurcontrast
- Maak interactieve elementen bedienbaar met het toetsenbord
- Test met schermlezers en toegankelijkheidstools
Probleemoplossing
Veelvoorkomende problemen en hun oplossingen.
Buildfouten
Probleem: de build mislukt door TypeScript- of ESLint-fouten
Oplossing:
- Voer
npm run lintuit om de problemen te vinden - Controleer of er dependencies ontbreken in package.json
- Zorg dat alle imports correct getypeerd zijn
- Leeg de map
.nexten voer de build opnieuw uit
Problemen met de API-verbinding
Probleem: API-endpoints geven fouten of lopen tegen een time-out aan
Oplossing:
- Controleer of de omgevingsvariabelen correct zijn ingesteld
- Controleer de rate limits en quota van de API
- Bekijk de CORS-instellingen voor cross-origin requests
- Houd het tabblad Netwerk in de DevTools van je browser in de gaten
Prestatieproblemen
Probleem: trage laadtijden of lage Lighthouse-scores
Oplossing:
- Optimaliseer afbeeldingen (gebruik het WebP-formaat en de juiste afmetingen)
- Schakel lazy loading in voor afbeeldingen en componenten
- Beperk de grootte van de JavaScript-bundle
- Gebruik edge caching voor API-responses
- Zorg voor duidelijke laadstatussen
Meer hulp nodig?
Kun je niet vinden wat je zoekt? Ons team helpt je graag met al je vragen en met technische support.
- E-mail:
- [email protected]
- Telefoon:
- (+880) 13013-60818
- Kantoortijden:
- ma–vr, 9:00–18:00 (tijd in Bangladesh, BST)