{"id":13344364,"url":"https://github.com/DanielCraciunGitHub/EduMentorMe","last_synced_at":"2025-03-12T07:32:51.446Z","repository":{"id":177699601,"uuid":"657177522","full_name":"DanielCraciunGitHub/EduMentorMe","owner":"DanielCraciunGitHub","description":"This project is a hub of many different features used to enhance your education. Each feature is unique and serves a common purpose, which is to boost the grades of all UK students in higher education.","archived":false,"fork":false,"pushed_at":"2023-09-22T14:50:53.000Z","size":2008,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-10-24T18:34:57.321Z","etag":null,"topics":["contentlayer","googleapis","nextjs","nextjs13","react-timer-hook","recaptcha-v3","shadcn-ui","supabase","zod","zustand"],"latest_commit_sha":null,"homepage":"https://cmt-xi.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DanielCraciunGitHub.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-22T13:38:28.000Z","updated_at":"2024-10-06T21:27:07.000Z","dependencies_parsed_at":null,"dependency_job_id":"e7e41600-543f-4b85-973d-79de901b5605","html_url":"https://github.com/DanielCraciunGitHub/EduMentorMe","commit_stats":null,"previous_names":["danielcraciungithub/danielcraciungithub.github.io","danielcraciungithub/emm","danielcraciungithub/edumentorme"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DanielCraciunGitHub%2FEduMentorMe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DanielCraciunGitHub%2FEduMentorMe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DanielCraciunGitHub%2FEduMentorMe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DanielCraciunGitHub%2FEduMentorMe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DanielCraciunGitHub","download_url":"https://codeload.github.com/DanielCraciunGitHub/EduMentorMe/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243178760,"owners_count":20249172,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["contentlayer","googleapis","nextjs","nextjs13","react-timer-hook","recaptcha-v3","shadcn-ui","supabase","zod","zustand"],"created_at":"2024-07-29T19:33:04.703Z","updated_at":"2025-03-12T07:32:51.437Z","avatar_url":"https://github.com/DanielCraciunGitHub.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EMM - EduMentorMe\n\nFramework: Next.js 13\n\n## About this project\n\nThis project is designed as a hub of many different features. Each feature is unique and serves a common purpose, which is to boost the grades of all UK students.\n\n## Features\n\n- Blazingly fast performance.\n- UI styled with `tailwind CSS`.\n- Fully accessible; contains screen reader support.\n- Optimized for SEO.\n- Dark mode using the `shadcn-ui` library.\n- Data validation using `zod`.\n- Payment handling using `stripe`.\n- Rate limiting API endpoints using `Upstash`.\n- Protected routes using `middleware`.\n- `Google Drive API` used to store and manage resources.\n- `MDX content` in the main page, about us page, and contact us page via `contentlayer`.\n- Website protected using `reCAPTCHA v3`.\n- Search feature with dynamic routing, using `ISR` for each resource page.\n- Todo feature uses `zustand` to manage the todos' state, and `Supabase` to sync these todos in a database.\n- Simple study timer feature that implements `react-timer-hook`.\n- Contact form uses `nodemailer` to receive user feedback.\n- Login and sign-up feature with email verification using `Supabase`.\n\n## Goals\n\n- [x] ~Use `CSS variables` to easily allow changes in global theme.~\n- [x] Add a `custom SMTP` provider when working with `Supabase`.\n- [x] Monetize website features using `Stripe`.\n- [ ] Implement the `OpenAI` API to create a custom chatbot.\n\n## Known issues\n\n- [x] Opengraph images don't work on `WhatsApp`\n- [x] ~Search form selections not registering properly on mobile.~\n- [x] Todos do not save after adding a todo then switching tab promptly.\n- [ ] Large bundle size for the `login`, `sign up` and `contact us` pages.\n\n## How to work on the repo yourself\n\n1. Install dependencies using pnpm:\n\n```sh\npnpm install\n```\n\n2. Copy `.env.example` to `.env.local` and update the variables.\n\n```sh\ncp .env.example .env.local\n```\n\n3. Start the development server:\n\n```sh\npnpm dev\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDanielCraciunGitHub%2FEduMentorMe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDanielCraciunGitHub%2FEduMentorMe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDanielCraciunGitHub%2FEduMentorMe/lists"}