Project Info
Inspiration
As the new year unfolds, our team found inspiration to develop a website dedicated to assisting UCSC students in unlocking their full academic potential.
What it does
Maomorize, our dynamic and user-friendly website, utilizes the effective blurting study method to enhance memorization. We put in a lot of thought into our front end and made it efficient and fun for the user to use. We believe that our loading page is especially extravagant in the different elements we incorporate in it. Additionally, Maomorize incorporates AI functionality that provides valuable suggestions to improve users' notes. Users can easily log in or sign up through Google, upload their notes, and receive AI-generated suggestions for note enhancement. After the review, the notes are saved and marked as studied on a separate page. The upcoming study dates are seamlessly integrated for enhanced user convenience.
How we built it
The website's dynamic UI was crafted using HTML, CSS, JavaScript, and React. The back-end logic and functionality were implemented with JavaScript and React to ensure smooth navigation and user flow. We established a custom domain using Netlify, where each git commit triggered a deploy and website update. Firebase was employed as our main method of data storage for our project. Additionally, it was used for handling the user experience of creating and saving user login information. The Open AI API was used to give note recommendations and suggestion study materials for the user. This integration allows users to schedule and receive timely reminders for revisiting specific topics or tasks, optimizing the learning process.
Challenges we ran into
During development, we faced Git merge conflicts that inadvertently deleted some of the new edits in our files. To resolve this issue, we referred to past commits containing functional code. We also had difficulty using OAuth2.0 to authenticate users to access their calendars.
Accomplishments we're proud of
We take pride in creating this unique website, aiming to help UCSC students achieve their academic goals in 2024. Our hack works as we expected it to and we achieved the goals that we set out to accomplish. However, this is always room for improvement and we recognize that many features can still be improvised upon in the future.
What we learned
Our experience taught us how to have efficient time management through the breakdown of large tasks into more manageable components. Furthermore, the incorporation of a project manager allowed us to organize all tasks, ideas, and goals on a Google Doc. This allowed us to visualize objectives and allocate them seamlessly to each team member. This optimized approach contributed significantly to our project's success. Applicability Our project applies well to the Education, SlugHacks, and UI/UX projects. We believe our creativity allowed us to branch into multiple topics and made our project even more unique.
What's next
We plan to implement additional features in the future using different APIs. One example would be highlighting sections of text for each AI suggestion so users can clearly tell where they need to improve. Another example would be an actual integration with Google Calendar to remind users to study no matter where they are.
React + Vite
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
Currently, two official plugins are available:
- @vitejs/plugin-react uses Babel for Fast Refresh
- @vitejs/plugin-react-swc uses SWC for Fast Refresh
Analysis
View
Metric
- 66
- 42
- 6
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- FirebaseIn code
- HTMLIn code
- JavaScriptIn code
- OpenAIIn code
- ReactIn code
- Node.jsClaimed
6 of 7 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
180 KB
Source files
38
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
SimonZhao7/Maomorize
66 files · 6.5 MB · @ 933f18d
Structure
Interface
9 files · 14%Screens, components and styles rendered to the user.
API & routing
20 files · 30%Request entry points: routes, handlers and controllers.
Application logic
11 files · 17%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript85%
- CSS14%
- HTML0%
- Markdown0%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
package.json
npm · 17- date-fns
- dotenv
- firebase
- openai
- react
- react-dom
- react-icons
- react-router-dom
- +9 more
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.