Refactor high-complexity React components in Dify frontend. Use when `pnpm analyze-component...
npx skills add MaeRiz/LC-MDF-skillmatch
Or install specific skill: npx add-skill https://github.com/MaeRiz/LC-MDF-skillmatch
# README.md
SkillMatch
SkillMatch est une API Rest développée avec Express / TypeScript permettant de mettre en relation des freelances et des entreprises autour de projets, en fonction des compétences et du TJM.
📌 Prérequis
Avant de lancer le projet, assure-toi d'avoir installé :
- Node.js ≥ 18.x
- npm ≥ 9.x
📦 Modules installés
- express
- dotenv
- @prisma/client
- typescript
- nodemon
- ts-node-dev
- prisma
⚙️ Installation du projet
- Cloner le dépôt
git clone https://github.com/MaeRiz/LC-MDF-skillmatch.git
cd skillmatch
- Installer les dépendances
npm install
- Créer un fichier
.env
DATABASE_URL="postgresql://user:password@localhost:5432/skillmatch"
🗄️ Base de données (Prisma)
Lancer PostgreSql (conteneur)
docker compose up
Générer le client Prisma
npx prisma generate
Appliquer les migrations
npx prisma deploy
▶️ Lancer le serveur
npm start
Le serveur sera accessible à l’adresse :
http://localhost:8000
📡 Endpoints API
Freelances
➕ Créer un freelance
POST /freelances
{
"nom": "Johnatan Bayer",
"email": "[email protected]",
"skills": ["Python", "React", "Postman", "Angular"],
"tjm": 130
}
📄 Lister tous les freelances
GET /freelances
🖲️ Lister tous les freelances filtrer avec une compétence
GET /freelances?skill=react
🔍 Récupérer un freelance par ID
GET /freelances/{id}
🤝 Trouver des projets disponible pour un freelance
GET /freelances/{id}/projets-compatibles
📩 Postuler à un projet
POST /freelances/{freelanceId}/postuler/{projectId}
Entreprises
➕ Créer une entreprise
POST /entreprises
{
"nom": "Microsoft",
"secteur": "IT"
}
📄 Lister toutes les entreprises
GET /entreprises
🔍 Récupérer une entreprise par ID
GET /entreprises/{id}
Projets
➕ Créer un projet pour une entreprise
POST /entreprises/{entrepriseId}/projets
{
"titre": "SoftTunes",
"description": "Application opensource pour écouter de la musique gratuitement.",
"skillsRequis": ["Python", "React", "Postman"],
"budgetMaxTjm": 125,
"entrepriseId": 1
}
📄 Lister les projets d’une entreprise
GET /entreprises/{entrepriseId}/projets
🎯 Lister les candidats compatibles pour un projet
GET /entreprises/{entrepriseId}/projets/{projectId}/candidats-compatibles
🔓 Lister tous les projets ouverts (sans freelance)
GET /projets/ouvert
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.