d20 is a React Native and Expo application made as a demo for the mobile development learnathon track at Blueprint 2025.
assets/
- All icons and static images are stored in this foldercomponents/
- Stores reusable React components which are not screenspages/
- Stores all of the screens for the application (in this case just one)app.json
- Stores metadata for mobile applicationpackage.json
- Tracks dependencies used in application
React Native and Expo uses Node.js as the underlying JavaScript runtime. Install Node.js version 23.8.0 from the official site.
To run the application, first install dependencies then start it:
npm install
npx expo start
- Easy: Don't play dice roll sound effect when there are no dice.
- Easy: Show the expected value of a roll given some set of dice.
- Easy: Show the formula of dice in standard notation (e.g. 2d6+1d20).
- Easy: Add another screen which allows you to customize settings (e.g. turn sound on/off, change color of dice, etc.).
- Hard: Animate rolling dice using 3D animation.
d20 is licensed under MIT. You may use and distribute this source code as long as it follows the guidelines set by the license.