├── .babelrc ├── .gitignore ├── README.md ├── package-lock.json ├── package.json ├── public ├── assets │ ├── map-dark.png │ ├── map-light.png │ ├── photo.png │ ├── podcast-cover.png │ ├── wallpaper-dark.jpg │ └── wallpaper-light.jpg ├── og.png └── screenshot.png ├── src ├── icons │ ├── folder.jsx │ ├── iphone.jsx │ ├── list.jsx │ ├── podcasts.jsx │ └── weather.jsx ├── index.html ├── index.js ├── widgets.jsx └── widgets │ ├── battery.jsx │ ├── calendar.jsx │ ├── maps.jsx │ ├── notes.jsx │ ├── photos.jsx │ ├── podcasts.jsx │ ├── reminders.jsx │ └── weather.jsx ├── vercel.json └── webpack.config.js /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["@babel/preset-env", "@babel/preset-react"], 3 | "plugins": ["styled-jsx/babel"] 4 | } 5 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /build 3 | .DS_Store 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # iOS 14 Widgets 2 | 3 | iOS 14 Widgets designs implemented in React.js 4 | 5 | ### Getting Started 6 | 7 | ```sh 8 | $ npm install 9 | $ npm start 10 | ``` 11 | 12 | Then head over to [localhost:3000](http://localhost:3000) to see it live! 13 | 14 | The page will reload if you make edits. 15 | 16 |  17 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ios14-widgets", 3 | "description": "iOS 14 Widgets designs implemented in React.js", 4 | "version": "1.0.0", 5 | "author": "Ofek Ashery", 6 | "license": "MIT", 7 | "scripts": { 8 | "start": "webpack-dev-server --open --hot --mode development", 9 | "build": "webpack --mode production" 10 | }, 11 | "dependencies": { 12 | "react": "^16.13.1", 13 | "react-dom": "^16.13.1", 14 | "styled-jsx": "^3.3.0" 15 | }, 16 | "devDependencies": { 17 | "@babel/core": "^7.10.4", 18 | "@babel/preset-env": "^7.10.4", 19 | "@babel/preset-react": "^7.10.4", 20 | "babel-loader": "^8.1.0", 21 | "copy-webpack-plugin": "^6.0.3", 22 | "html-webpack-plugin": "^4.3.0", 23 | "webpack": "^4.43.0", 24 | "webpack-cli": "^3.3.12", 25 | "webpack-dev-server": "^3.11.0" 26 | }, 27 | "repository": { 28 | "type": "git", 29 | "url": "https://github.com/ofekashery/ios14-widgets.git" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /public/assets/map-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ofekashery/ios14-widgets/d6097433e4ddfeb2e2b4e6926631054e39465b06/public/assets/map-dark.png -------------------------------------------------------------------------------- /public/assets/map-light.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ofekashery/ios14-widgets/d6097433e4ddfeb2e2b4e6926631054e39465b06/public/assets/map-light.png -------------------------------------------------------------------------------- /public/assets/photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ofekashery/ios14-widgets/d6097433e4ddfeb2e2b4e6926631054e39465b06/public/assets/photo.png -------------------------------------------------------------------------------- /public/assets/podcast-cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ofekashery/ios14-widgets/d6097433e4ddfeb2e2b4e6926631054e39465b06/public/assets/podcast-cover.png -------------------------------------------------------------------------------- /public/assets/wallpaper-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ofekashery/ios14-widgets/d6097433e4ddfeb2e2b4e6926631054e39465b06/public/assets/wallpaper-dark.jpg -------------------------------------------------------------------------------- /public/assets/wallpaper-light.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ofekashery/ios14-widgets/d6097433e4ddfeb2e2b4e6926631054e39465b06/public/assets/wallpaper-light.jpg -------------------------------------------------------------------------------- /public/og.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ofekashery/ios14-widgets/d6097433e4ddfeb2e2b4e6926631054e39465b06/public/og.png -------------------------------------------------------------------------------- /public/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ofekashery/ios14-widgets/d6097433e4ddfeb2e2b4e6926631054e39465b06/public/screenshot.png -------------------------------------------------------------------------------- /src/icons/folder.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const FolderIcon = ({ size = 24, color = 'var(--foreground)', ...props }) => { 4 | return ( 5 | 11 | ); 12 | }; 13 | 14 | export default FolderIcon; 15 | -------------------------------------------------------------------------------- /src/icons/iphone.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const iPhoneIcon = ({ size = 24, color = 'var(--foreground)', ...props }) => { 4 | return ( 5 | 22 | ); 23 | }; 24 | 25 | export default iPhoneIcon; 26 | -------------------------------------------------------------------------------- /src/icons/list.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const ListIcon = ({ size = 24, color = 'var(--foreground)', ...props }) => { 4 | return ( 5 | 11 | ); 12 | }; 13 | 14 | export default ListIcon; 15 | -------------------------------------------------------------------------------- /src/icons/podcasts.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const PodcastsIcon = ({ size = 24, color = 'var(--foreground)', ...props }) => { 4 | return ( 5 | 11 | ); 12 | }; 13 | 14 | export default PodcastsIcon; 15 | -------------------------------------------------------------------------------- /src/icons/weather.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const WeatherIcon = ({ size = 24, color = 'var(--foreground)', ...props }) => { 4 | return ( 5 | 15 | ); 16 | }; 17 | 18 | export default WeatherIcon; 19 | -------------------------------------------------------------------------------- /src/index.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 |Online
19 | 09:00 - 11:30 20 |ETA 08:53
9 |6 Notes
14 |28 Notes
18 |NOW PLAYING
12 |
13 | Partly Cloudy
14 |
15 | H: 25° L: 21°
16 |