|
1 |
| - <img src="/src/components/sensebox_logo.svg?raw=true" height="128" alt="senseBox Logo"/> |
2 |
| - |
3 | 1 | # React Ardublockly
|
4 | 2 |
|
5 |
| -This repository contains the source code and documentation of [sensebox-ardublockly](https://sensebox-ardublockly.netlify.app/). |
| 3 | +<div align="center"> |
| 4 | +<img src="/src/components/sensebox_logo.svg?raw=true" height="128" alt="senseBox Logo"/> |
| 5 | +</div> |
| 6 | + |
| 7 | +[](https://app.netlify.com/sites/sensebox-ardublockly/deploys) |
| 8 | +[](https://github.com/sensebox/React-Ardublockly/blob/master/LICENSE) |
| 9 | + |
| 10 | +A modern, React-based version of the [senseBox](https://sensebox.de) Ardublockly environment. This project is the continuation of [blockly.sensebox.de](https://blockly.sensebox.de/ardublockly/?lang=de&board=sensebox-mcu) and offers an improved user interface and new features. |
| 11 | + |
| 12 | +## 🚀 Features |
| 13 | + |
| 14 | +- 📱 Modern, responsive user interface |
| 15 | +- 🧩 Visual programming with Blockly |
| 16 | +- 💾 Automatic project saving |
| 17 | +- 🔄 Easy code export |
| 18 | +- 📊 Support for various senseBox boards |
| 19 | +- 🌍 Multilingual interface (German/English) |
| 20 | +- 📱 Integration with senseBox Connect App |
| 21 | + |
| 22 | +## 🛠 Installation |
| 23 | + |
| 24 | +### Prerequisites |
| 25 | + |
| 26 | +- [Node.js](https://nodejs.org/en/) (Version 10.x or higher) |
| 27 | +- npm (comes with Node.js) |
| 28 | +- Git (optional, for version control) |
| 29 | + |
| 30 | +### Setting up the Development Environment |
| 31 | + |
| 32 | +1. Clone or download repository: |
| 33 | + |
| 34 | + ```bash |
| 35 | + git clone https://github.com/sensebox/React-Ardublockly.git |
| 36 | + # or |
| 37 | + # Direct download: https://github.com/sensebox/React-Ardublockly/archive/master.zip |
| 38 | + ``` |
| 39 | + |
| 40 | +2. Change to project directory: |
| 41 | + |
| 42 | + ```bash |
| 43 | + cd React-Ardublockly |
| 44 | + ``` |
| 45 | + |
| 46 | +3. Install dependencies: |
| 47 | + |
| 48 | + ```bash |
| 49 | + npm ci # Recommended for reproducible builds |
| 50 | + # or |
| 51 | + npm install # Alternative |
| 52 | + ``` |
| 53 | + |
| 54 | +4. Start development server: |
| 55 | + |
| 56 | + ```bash |
| 57 | + npm start |
| 58 | + ``` |
| 59 | + |
| 60 | +5. Open browser and navigate to [http://localhost:3000](http://localhost:3000) |
| 61 | + |
| 62 | +## 🔧 Configuration |
| 63 | + |
| 64 | +### Board Selection |
| 65 | + |
| 66 | +- **senseBox MCU**: Standard board with Arduino compatibility |
| 67 | +- **senseBox MCU-S2**: ESP32-based board with extended functionality |
| 68 | + |
| 69 | +### Compiler Settings |
| 70 | + |
| 71 | +The compiler URL can be configured in the `.env` file: |
| 72 | + |
| 73 | +``` |
| 74 | +REACT_APP_COMPILER_URL=https://compiler.sensebox.de |
| 75 | +``` |
| 76 | + |
| 77 | +## 📝 Development Guidelines |
| 78 | + |
| 79 | +### Code Style |
| 80 | + |
| 81 | +- We use [Prettier](https://prettier.io) for consistent formatting |
| 82 | +- Configuration in `.prettierrc.json` |
| 83 | +- ESLint for JavaScript/React best practices |
6 | 84 |
|
7 |
| -This project was created with [Create React App](https://github.com/facebook/create-react-app) and represents the continuation or improvement of [blockly.sensebox.de](https://blockly.sensebox.de/ardublockly/?lang=de&board=sensebox-mcu). |
| 85 | +### Branching Strategy |
| 86 | +If you want to contribute **please use the development branch** ! The main branch is only used for production and may be outdated! |
| 87 | +- `main`: Production branch |
| 88 | +- `development`: Development branch |
| 89 | +- Feature branches: `feature/name-of-feature` |
| 90 | +- Bugfix branches: `bugfix/name-of-bug` |
8 | 91 |
|
9 |
| -## Getting Started |
| 92 | +## 🤝 Contributing |
10 | 93 |
|
11 |
| -1. [Download](https://github.com/sensebox/React-Ardublockly/archive/master.zip) or clone the GitHub Repository `git clone https://github.com/sensebox/React-Ardublockly` and checkout to branch `master`. |
| 94 | +1. Create a fork |
| 95 | +2. Create feature branch (`git checkout -b feature/AmazingFeature`) |
| 96 | +3. Commit changes (`git commit -m '[Area] Add amazing feature'`) |
| 97 | +4. Push branch (`git push origin feature/AmazingFeature`) |
| 98 | +5. Create Pull Request |
12 | 99 |
|
13 |
| -2. install [Node.js v10.xx](https://nodejs.org/en/) on your local machine |
| 100 | +## 🐛 Known Issues |
14 | 101 |
|
15 |
| -3. open shell and navigate inside folder `React-Ardublockly` |
| 102 | +- Redux DevTools must be installed or the corresponding line in `store.js` must be commented out |
| 103 | +- Some boards require special drivers for USB connection |
16 | 104 |
|
17 |
| - - run `npm ci` |
18 |
| - - run `npm start` |
| 105 | +## 📚 Documentation |
19 | 106 |
|
20 |
| -4. open [localhost:3000](http://localhost:3000) |
| 107 | +- [User Manual](https://docs.sensebox.de/docs/category/blockly-2) |
| 108 | +- [Hardware-Glossar](https://docs.sensebox.de/docs/category/glossar) |
21 | 109 |
|
22 |
| -## Troubleshoot |
| 110 | +## 🌐 Demo |
23 | 111 |
|
24 |
| -Ensure that line 14 in [store.js](https://github.com/sensebox/React-Ardublockly/blob/master/src/store.js#L14) is commented out or otherwise you have installed [Redux DevTools Extension](http://extension.remotedev.io/). |
| 112 | +A live demo of the current version can be found at [https://blockly.sensebox.de/](https://blockly.sensebox.de/) |
25 | 113 |
|
26 |
| -## Demo |
| 114 | +## 📄 License |
27 | 115 |
|
28 |
| -A demo of the current status of the master branch can be accessed via [https://blockly-react.netlify.app/](https://blockly-react.netlify.app/) :rocket:. |
| 116 | +This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. |
29 | 117 |
|
30 |
| -## Coding Guidelines |
| 118 | +## 🙏 Acknowledgments |
31 | 119 |
|
32 |
| -We use the code formatter [prettier](https://prettier.io) for consistancy. The coresponding formatting settings can be found in the `.prettierrc.json` file. Possible options can be found [here](https://prettier.io/docs/en/options) but should only be changed if necessary. |
| 120 | +- [Blockly](https://developers.google.com/blockly) - Google's visual programming language |
| 121 | +- [Create React App](https://github.com/facebook/create-react-app) - React project template |
| 122 | +- [Material-UI](https://material-ui.com/) - React UI Framework |
0 commit comments