Welcome to CSEC LearnerHub!
This project aims to bring exam questions into students' hands by providing an API for client applications to give quizzes and access resources.
To run this project locally, you will need:
- Node.js (v20.10.0)
- MySQL database
.env
file with your MySQL database URL (Refer to.env.example
)
- TypeScript
- Express.js
- Prisma
This project follows clean architecture principles with the following file structure:
src/
│
├── adapters/
│ ├── controllers/
│ └── repositories/
│
├── entities/
│
├── framework/
│
├── usecases/
│
└── services/
- Clone this repository.
- Install dependencies using
yarn install
. - Create a
.env
file with your MySQL database URL. - Run Prisma migrations and generate Prisma client:
npx prisma migrate dev npx prisma generate
- Build the project using
npm run build
. - Start the development server using
npm run dev
. - You can also start the server in production mode using
npm run start
.
We recommend using Yarn for managing dependencies and running scripts.
If you have any questions or need further assistance, feel free to contact us. Happy coding!