npx prisma init
This will create a new prisma/
folder with a schema.prisma
file inside, and also add a .env
file at the root of your project.
If you haven't installed Prisma yet, first install it with:
npm install prisma --save-dev
And if you also want the Prisma Client to query your database:
npm install @prisma/client
docker run --name my-postgres -e POSTGRES_USER=myuser -e POSTGRES_PASSWORD=mypassword -p 5432:5432 -d postgres
This is a IntelliLab designed to help developers practice coding challenges in multiple programming languages (JavaScript, Python, Java). The platform includes features such as:
- Dynamic Code Editor: Powered by Monaco Editor, allowing users to write and test code in real-time.
- Problem Descriptions: Detailed problem descriptions, examples, constraints, and hints.
- Test Cases: Predefined test cases for each problem to validate solutions.
- Multi-Language Support: Write solutions in JavaScript, Python, or Java.
- Submission Tracking: View submission history, memory usage, runtime, and status (Accepted, Wrong Answer, etc.).
- Responsive Design: Built with modern UI/UX principles for a seamless experience on all devices.
- Real-time syntax highlighting using the Monaco Editor.
- Supports JavaScript, Python, and Java.
- Users can submit input dynamically via
readline
or predefined test cases.
- Each problem includes:
- Description
- Examples with inputs, outputs, and explanations
- Constraints
- Editorial (hints and optimal solutions)
- Run code directly in the browser and get instant feedback.
- View execution results, including runtime, memory usage, and error messages.
- Secure login and registration for tracking user progress and submissions.
- Admins can add new problems, manage submissions.
- Frontend: React.js, Tailwind CSS, Monaco Editor
- Backend: Node.js, Express.js
- Database: PostgreSQL (or Prisma ORM)
- Authentication: JWT (JSON Web Tokens)
- Code Execution: Judge0 API (for running and validating code submissions)
- State Management: Zustand (React state management library)
- Version Control: Git, GitHub
- Node.js (v16 or higher)
- npm or yarn
- PostgreSQL database
- Judge0 API
-
Clone the Repository
git clone https://github.com/Aestheticsuraj234/chai-or-leetcode.git cd backend cd frontend
-
Install Dependencies
npm install
-
Set Up Environment Variables Create a
.env
file in the root directory and add the following variables:PORT = DATABASE_URL= JWT_SECRET= JUDGE0_API_URL=http://localhost:2358/
-
Run the Development Server
npm run dev