+
Skip to content
/ qhub Public

QHub is a question and answer application. It gives user ability to post problem on any topic using markdown, svg, latex, html, css, text, audio, and vedio.

Notifications You must be signed in to change notification settings

groupsvkg/qhub

Repository files navigation

QHub is a question and answer application. It gives user ability to post problem on any topic using markdown, svg, latex, html, css, text, audio, and vedio.

Application url - QHub,

https://qhub.vercel.app

Pages

Home Page

Problems Page

Problem Details Page

Post Page

Activity Page

Activity Details Page

Leaderboard Page

Profile Page

Tasks

Loading Page

  • Implement loading page ✔️
    • TODO: improve loading UI using Skeleton

Home Page

  • Implement home page ⏳

Problems Page

  • Implement problem details page. ⏳

Post Page

  • Implement post page. ✔️
  • Implement server action to create problem. ✔️
  • Implement `problem`` service. ✔️
  • Implement activity service. ✔️

Activity Page

Leaderboard Page

Users Page

Profile Page

  • Display profile image and full name ✔️

Data Model

  • Identify entities involved ✔️
  • Update entities and relationship in schema.prisma ✔️
  • Generate and push the changes. ✔️

TODO

  • Update clerk endpoint for production deployment.

Setup

  • Add shadcn/ui using npx shadcn-ui@latest init
  • Testing
    • Jest
      • npm install -D jest jest-environment-jsdom @testing-library/react @testing-library/jest-dom
      • npm init jest@latest
      • npm install -D ts-node
      • npm install --save-dev @jest/globals
  • Authentication
    • Install clerk using npm install @clerk/nextjs
  • Database setup
    • Install prisma using npm install -D prisma
    • Install prisma client using npm install @prisma/client
    • Init prisma npx prisma init
    • Use npx prisma db push to push new changes followed by npx prisma generate
    • Use npx prisma studio to view data
  • ngrok
    • ngrok http --domain=amoeba-suited-basically.ngrok-free.app 3000
  • Webhooks
    • Install svix using npm install svix

Getting Started

First, run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.

This project uses next/font to automatically optimize and load Inter, a custom Google Font.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.

About

QHub is a question and answer application. It gives user ability to post problem on any topic using markdown, svg, latex, html, css, text, audio, and vedio.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载