This guide walks you through cloning the repository, installing dependencies across all three package manifests, and booting the full-stack development environment. By the end you will have the Express API running on port 3001, the Vite dev server on port 5173, and a pre-seeded SQLite database ready to explore with the demo accounts.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/DincaAlex/unilink/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- Node.js 20 or later — the backend uses
node --watch, a built-in file-watcher introduced in Node 18 and stabilised in Node 20. Check your version withnode -v.
Steps
Install dependencies
The project has three independent Each command is isolated to its own directory and will not interfere with the others.
package.json files — one at the repo root (which provides concurrently), one for the backend, and one for the frontend. Install all three:Start the dev server
From the repo root, run the single dev script:Under the hood this uses
Both processes stream their logs to the same terminal, colour-coded blue for the backend and green for the frontend. The backend hot-reloads automatically whenever you save a file inside
concurrently to launch both processes at once:| Process | Command | URL |
|---|---|---|
| Backend (Express) | node --watch index.js | http://localhost:3001 |
| Frontend (Vite) | vite | http://localhost:5173 |
server/.Open the app
Once both processes report that they are ready, open your browser to:You should see the UniLink login screen.
Log in with a demo account
UniLink ships with two pre-seeded accounts. Head to Demo Accounts for credentials, or use the “Ver como estudiante” / “Ver como empresa” auto-fill buttons on the login screen.
Database seeding
On the very first run, the backend creates
server/data.sqlite (in WAL mode) and seeds it automatically. The initial dataset includes 14 job listings, one student profile, and one company profile, along with both demo user accounts. You do not need to run any migration or seed script manually.