This assignment involves enhancing a Chrome extension developed by one of the Top 3 winners of the MCIT hackathon. The project provides hands-on experience in web development, API integration, and collaborative coding.
Original project: Nara
Nara is a Chrome extension that helps users manage their tasks and reminders efficiently. Your task is to enhance this extension by implementing new features.
Choose one of the following enhancements to implement:
- Speech Bubble Encouragement: Implement a feature where, whenever the user checks off a task, a speech or thought bubble appears near the deer with a short, encouraging message (e.g., “Great job!”, “You’re making progress!”, “Keep going!”).
- Daily Gratitude Log: Implement a small text area where users can note one thing they’re grateful for each day. Over time, they can revisit a dedicated “gratitude log” to see their positive moments. Provide an interesting method to save these entries and display them on a separate screen so users can easily access their past entries.
- Mood Selection Prompt: Implement a simple mood selection feature(e.g., happy, stressed, neutral) with a small icon or emoji. This allows users to log their emotional state quickly each day.
- Rotating Weekly Challenge: Implement a weekly challenge system—such as “Drink 8 glasses of water each day” or “Take a 10-minute walk daily.” Users can check off these mini-challenges alongside their normal tasks for extra motivation.
- Inspirational Quote Overlay: Implement a short inspirational quote or positive affirmation that appears on each new tab, displayed in a subtle text overlay.
- Implement a History Feature: Maintain a log of all tasks and reminders created by the user, allowing them to revisit past items and track progress over time.
- Custom Feature: Propose a unique feature (requires instructor/TA approval).
- Assign a team member as the Product Manager (PM) for Nara.
- Ensure this PM is different from the one assigned to the Lunch Lotto project.
The PM should fork the repository:
- Navigate to the
nara-extension-starter
repository on GitHub. - Click the Fork button to create a copy under their account.
Once the PM has forked the repository, team members should clone it locally:
git clone https://github.com/<PM-username>/nara-extension-starter.git
- Open the project in a text editor (e.g., Visual Studio Code recommended).
- Make changes to the codebase.
- Use the following commands to commit and push your changes:
git add .
git commit -m "feat: [feature name] added"
git push
- As team members contribute, collaborate using Pull Requests (PRs) on GitHub.
- Regularly sync your local repository with the latest changes:
git pull
- Resolve merge conflicts as needed and ensure smooth integration.
- Submit the final version of your project as per course guidelines.
- Include a brief write-up of your implemented features and any challenges faced.
Happy coding, and good luck with Nara! 🦌