HelpR is an open-source mentorship queue software built by TAMUhack. It allows for two basic functionalities:
- Participants can submit tickets to a central queue. These tickets contain information about the issue, the participant location, and contact information.
- Mentors can claim tickets that they have are comfortable handling. With HelpR, they can easily locate the participant and provide assistance.
Our goal was to keep the software as easy to use as possible for both participants and mentors.
Home | Mentor View |
---|---|
![]() |
![]() |
- Frontend: Next.js, TailwindCSS
- Database: PostgresSQL, Prisma
- Auth: NextAuth, Google Auth
Deploy to Vercel with only a few clicks. Vercel will ask for information about the necessary environment variables.
Note for TAMUhack devs: Pushing to the staging branch allows for Vercel previews to work with Next Auth. Normal branches with random links do not have permission from Google auth to sign users in.
Getting HelpR up and running locally is pretty easy!
First, clone/fork the repo and install the dependencies:
$ git clone https://github.com/tamuhack-org/helpr.git
$ cd helpr
$ yarn
Then, create a .env
file in the root of the project and add the following:
NEXT_URL=
NEXTAUTH_SECRET=
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
DATABASE_PRISMA_URL=
See more information about these variables below.
Finally, run the development server:
$ yarn dev
Obtained by using the URL of the locally hosted site,
appended with /api/auth
. Learn more from the NextAuth Docs.
Example: NEXT_URL="http://localhost:3000/api/auth"
A random string used to hash tokens, sign/encrypt cookies and generate cryptographic keys. Learn more from the NextAuth Docs.
Generate with openssl in the terminal:
$ openssl rand -base64 32
Example: NEXTAUTH_SECRET=aBh15h3KSq/I5tH3C00135t/CY6UMGun=
Follow these steps to obtain this information:
- Create a new Google Cloud Project.
- Create credentials for a new OAuth 2.0 Client ID.
- Set the Application Type as Web Application and choose any name.
- Add
http://localhost:3000
as an Authorized JavaScript origin. - Add
http://localhost:3000/api/auth/callback/google
as an Authorized redirect URI. - Save the configuration. Once created, you can view the Client ID and Client Secret.
Follow the above steps ๐
The PostgreSQL database URL. A PostgreSQL database can be hosted on many platforms, including Heroku, AWS, and Vercel. We recommend Vercel because it's free and easy to set up.
Example: DATABASE_PRISMA_URL="postgresql://postgres:password@localhost:5432/vercel?pgbouncer=true&connect_timeout=15"