This is a kitchen timer app built using Expo and JavaScript. It allows users to set timers for different kitchen plates and keeps track of the countdowns on a kitchen counter interface. The app provides a user-friendly interface to control multiple timers simultaneously.
- Design & Concept: Kristoffer c:
Came up with the original idea and created the visual design and user interface of the app. - Coding: Beatrice Valdés Bretti : Developed the app functionality and implemented the features.
- Multiple Timer Support: Set individual timers for up to four different kitchen plates.
- Custom Timer Setup: Set custom hours, minutes, and seconds for each timer using a picker.
- Kitchen Counter: A kitchen counter screen showing the active timers and their countdowns.
- Alarm System: A section to display the timers for each plate (static, not counting down).
- Smooth Navigation: Easy navigation between the timer setup and the main kitchen counter screens.
- Expo Integration: Built using Expo for cross-platform compatibility (iOS and Android).
Follow these steps to get the app running locally on your device:
-
Clone the Repository:
git clone https://github.com/beatricebretti/PlateToppTimer cd PlateToppTimer
-
Install Dependencies:
Make sure you have Node.js installed. Then, run the following command:
npm install
-
Start the Expo Project:
Once the dependencies are installed, you can start the project using Expo:
npx expo start
-
Run on Device:
You can either run the app on an emulator (iOS or Android) or scan the QR code generated by Expo to run it directly on your device using the Expo Go app.
- Set a Timer: From the home screen, tap the "+" button for any plate, choose the desired time, and set it. The timer will start counting down on the kitchen counter screen.
- Pause/Reset: Each timer is displayed with its countdown, and you can pause/reset it as needed.
Here’s an overview of the key files and directories in the project:
├── App.js # Main entry point of the app
├── components/ # UI components (KitchenCounter, TimerButton, etc.)
├── contexts/ # TimerContext to handle timer logic
├── screens/ # Different screens (HomeScreen, SetTimerScreen, etc.)
├── assets/ # App assets (images, icons, etc.)
└── README.md # This readme file
Contributions are welcome! If you'd like to contribute to the project, please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature-name
). - Make your changes.
- Commit your changes (
git commit -m 'Add feature'
). - Push to the branch (
git push origin feature-name
). - Open a pull request.