Skip to content
This repository has been archived by the owner on Jun 30, 2020. It is now read-only.

Commit

Permalink
First commit
Browse files Browse the repository at this point in the history
  • Loading branch information
uint42 committed Sep 22, 2019
0 parents commit 8117d54
Show file tree
Hide file tree
Showing 100 changed files with 12,517 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/node_modules/
/out/
/public/
/.vscode/
62 changes: 62 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
[![CuriosiX](https://i.imgur.com/Rs8UTY5.png)](https://curiosix.tk)

CuriosiX is a web-based programmable Curiosity emulator. It was developed as an alternative to the [Robot Karol](https://www.mebis.bayern.de/infoportal/empfehlung/robot-karol/) emulator, which is mainly used in German schools.

## Features

- 3d world
- Build editor
- Code editor with syntax highlighting
- Worlds and scripts get saved in the browser (no backend required)

> Currently all labels, dialogs, etc. are in **German**, but i18n/english support will come soon.
## Get started

1. **Prerequisites**

- [Node.js](https://nodejs.org/en/download/) (version 10 LTS is recommended)
- NPM
- Git

[Visual Studio Code](https://code.visualstudio.com/) is recommended as IDE, but not required

2. **Clone the GitHub repository**

```
$ git clone https://github.com/Joh4nnesB/curiosix.git
$ cd curiosix
```

If you don't have git installed on your machine, you can also download the repository as a [zip archive](https://github.com/Joh4nnesB/curiosix/archive/master.zip)

3. **Install all required NPM packages**

```
$ npm install
```

4. **Start the development server**

```
$ npm run dev
```

or

**Build CuriosiX**

```
$ npm run build
```

## Bugs

If you find any bugs or have a cool idea that should be added to CuriosiX, feel free to open an [issue](https://github.com/Joh4nnesB/curiosix/issues/new).

## Licenses

Icons made by [photo3idea_studio](https://www.flaticon.com/authors/photo3idea-studio) from [www.flaticon.com](https://www.flaticon.com/) are licensed by [CC 3.0 BY](https://creativecommons.org/licenses/by/3.0/)
Sounds made by [www.notificationsounds.com](https://notificationsounds.com/) are licensed by [CC 4.0 BY](https://creativecommons.org/licenses/by/4.0/)

© Johannes B. 2019
250 changes: 250 additions & 0 deletions assets/fonts/roboto_bold_typeface.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,250 @@
{
"glyphs": {
"0": {
"ha": 797,
"x_min": 64,
"x_max": 732,
"o": "m 732 408 q 647 95 732 203 q 399 -14 562 -14 q 152 93 237 -14 q 64 398 66 199 l 64 580 q 150 894 64 787 q 397 1001 236 1001 q 644 895 559 1001 q 732 590 730 789 l 732 408 m 536 608 q 502 786 536 730 q 397 842 469 842 q 295 789 328 842 q 260 623 262 736 l 260 382 q 293 203 260 262 q 399 144 326 144 q 503 201 471 144 q 536 373 534 257 l 536 608 z "
},
"1": {
"ha": 797,
"x_min": 113,
"x_max": 543,
"o": "m 543 0 l 347 0 l 347 755 l 113 683 l 113 842 l 522 989 l 543 989 l 543 0 z "
},
"2": {
"ha": 797,
"x_min": 47,
"x_max": 744,
"o": "m 744 0 l 67 0 l 67 134 l 387 475 q 484 600 452 547 q 515 702 515 654 q 482 805 515 768 q 387 843 449 843 q 282 797 321 843 q 244 677 244 751 l 47 677 q 91 842 47 767 q 212 959 134 916 q 391 1001 291 1001 q 628 928 543 1001 q 712 721 712 854 q 674 572 712 648 q 544 395 636 496 l 319 158 l 744 158 l 744 0 z "
},
"3": {
"ha": 797,
"x_min": 43,
"x_max": 729,
"o": "m 267 581 l 371 581 q 481 618 446 581 q 517 717 517 655 q 482 810 517 777 q 384 843 446 843 q 290 812 328 843 q 252 732 252 781 l 56 732 q 97 870 56 809 q 214 966 139 932 q 379 1001 289 1001 q 625 926 536 1001 q 713 720 713 851 q 672 595 713 652 q 564 507 631 538 q 688 418 647 477 q 729 277 729 358 q 633 66 729 145 q 379 -14 537 -14 q 137 64 231 -14 q 43 271 43 142 l 239 271 q 281 180 239 215 q 384 144 323 144 q 493 181 454 144 q 533 279 533 218 q 370 427 533 427 l 267 427 l 267 581 z "
},
"4": {
"ha": 797,
"x_min": 37,
"x_max": 759,
"o": "m 647 372 l 759 372 l 759 214 l 647 214 l 647 0 l 451 0 l 451 214 l 46 214 l 37 337 l 449 987 l 647 987 l 647 372 m 233 372 l 451 372 l 451 720 l 438 698 l 233 372 z "
},
"5": {
"ha": 797,
"x_min": 71,
"x_max": 739,
"o": "m 96 486 l 153 987 l 707 987 l 707 824 l 314 824 l 290 612 q 438 649 359 649 q 659 562 579 649 q 739 317 739 474 q 699 145 739 221 q 583 28 659 70 q 406 -14 508 -14 q 239 23 316 -14 q 118 125 163 59 q 71 275 74 191 l 265 275 q 308 179 271 213 q 405 144 345 144 q 507 192 471 144 q 543 328 543 240 q 502 456 543 412 q 385 501 460 501 q 271 465 315 501 l 252 447 l 96 486 z "
},
"6": {
"ha": 797,
"x_min": 68,
"x_max": 748,
"o": "m 599 998 l 599 836 l 580 836 q 366 767 447 834 q 269 581 285 700 q 467 661 347 661 q 672 568 596 661 q 748 326 748 476 q 706 151 748 229 q 588 30 665 73 q 416 -14 512 -14 q 164 95 260 -14 q 68 385 68 203 l 68 455 q 129 739 68 616 q 303 929 189 862 q 566 998 416 997 l 599 998 m 408 503 q 321 478 360 503 q 264 413 283 454 l 264 353 q 303 200 264 255 q 412 144 342 144 q 514 194 475 144 q 553 323 553 244 q 513 454 553 404 q 408 503 474 503 z "
},
"7": {
"ha": 797,
"x_min": 41,
"x_max": 739,
"o": "m 739 878 l 357 0 l 150 0 l 532 829 l 41 829 l 41 987 l 739 987 l 739 878 z "
},
"8": {
"ha": 797,
"x_min": 64,
"x_max": 732,
"o": "m 711 725 q 675 597 711 653 q 576 509 639 542 q 690 413 648 474 q 732 271 732 353 q 642 63 732 139 q 399 -14 553 -14 q 155 63 245 -14 q 64 271 64 140 q 106 414 64 353 q 220 509 149 475 q 121 597 157 542 q 85 725 85 653 q 170 926 85 851 q 398 1001 254 1001 q 626 927 542 1001 q 711 725 711 852 m 535 285 q 498 388 535 349 q 397 427 460 427 q 298 388 335 427 q 260 285 260 350 q 297 183 260 222 q 399 144 334 144 q 499 182 463 144 q 535 285 535 219 m 515 715 q 484 808 515 773 q 398 843 454 843 q 313 809 343 843 q 282 715 282 775 q 313 621 282 656 q 399 585 343 585 q 485 621 454 585 q 515 715 515 656 z "
},
"9": {
"ha": 797,
"x_min": 58,
"x_max": 724,
"o": "m 526 395 q 347 319 449 319 q 137 409 216 319 q 58 652 58 499 q 101 830 58 749 q 219 956 143 911 q 390 1001 295 1001 q 564 952 488 1001 q 682 812 640 903 q 724 602 724 720 l 724 530 q 602 142 724 283 q 254 -9 479 1 l 205 -9 l 205 154 l 249 155 q 526 395 505 166 m 395 469 q 476 494 442 469 q 528 553 511 518 l 528 633 q 490 788 528 733 q 389 843 452 843 q 292 789 330 843 q 254 654 254 735 q 291 521 254 573 q 395 469 328 469 z "
},
"A": {
"ha": 935,
"x_min": 5,
"x_max": 930,
"o": "m 646 203 l 289 203 l 221 0 l 5 0 l 372 987 l 561 987 l 930 0 l 714 0 l 646 203 m 344 368 l 591 368 l 467 738 l 344 368 z "
},
"B": {
"ha": 886,
"x_min": 88,
"x_max": 822,
"o": "m 88 0 l 88 987 l 434 987 q 707 919 614 987 q 800 717 800 850 q 762 589 800 644 q 659 508 725 534 q 778 431 734 489 q 822 290 822 374 q 731 75 822 148 q 472 0 640 1 l 88 0 m 292 430 l 292 163 l 466 163 q 578 198 538 163 q 618 292 618 232 q 478 430 618 428 l 292 430 m 292 574 l 442 574 q 596 696 596 576 q 557 793 596 764 q 434 823 518 823 l 292 823 l 292 574 z "
},
"C": {
"ha": 909,
"x_min": 58,
"x_max": 865,
"o": "m 863 329 q 746 78 852 170 q 466 -14 640 -14 q 167 114 276 -14 q 58 465 58 242 l 58 526 q 109 777 58 668 q 252 943 159 885 q 469 1001 345 1001 q 744 909 640 1001 q 865 652 848 818 l 661 652 q 608 791 654 748 q 469 834 562 834 q 316 761 367 834 q 264 535 266 688 l 264 460 q 313 227 264 300 q 466 153 361 153 q 607 196 560 153 q 660 329 653 239 l 863 329 z "
},
"D": {
"ha": 903,
"x_min": 88,
"x_max": 843,
"o": "m 88 0 l 88 987 l 392 987 q 625 929 522 987 q 785 762 728 870 q 843 516 843 654 l 843 471 q 786 226 843 333 q 627 60 730 119 q 394 0 524 1 l 88 0 m 292 823 l 292 163 l 390 163 q 572 241 509 163 q 637 465 635 319 l 637 517 q 574 745 637 667 q 392 823 512 823 l 292 823 z "
},
"E": {
"ha": 781,
"x_min": 88,
"x_max": 750,
"o": "m 682 428 l 292 428 l 292 163 l 750 163 l 750 0 l 88 0 l 88 987 l 749 987 l 749 823 l 292 823 l 292 587 l 682 587 l 682 428 z "
},
"F": {
"ha": 761,
"x_min": 88,
"x_max": 731,
"o": "m 682 404 l 292 404 l 292 0 l 88 0 l 88 987 l 731 987 l 731 823 l 292 823 l 292 568 l 682 568 l 682 404 z "
},
"G": {
"ha": 946,
"x_min": 64,
"x_max": 869,
"o": "m 869 125 q 714 23 814 59 q 492 -14 614 -14 q 267 42 363 -14 q 118 205 170 98 q 64 455 65 311 l 64 522 q 114 778 64 670 q 257 944 163 886 q 477 1001 351 1001 q 752 917 653 1001 q 869 673 851 833 l 671 673 q 611 798 658 758 q 484 837 565 837 q 326 759 380 837 q 271 527 271 681 l 271 464 q 330 229 271 309 q 503 150 389 150 q 666 199 617 150 l 666 369 l 481 369 l 481 519 l 869 519 l 869 125 z "
},
"H": {
"ha": 981,
"x_min": 88,
"x_max": 892,
"o": "m 892 0 l 688 0 l 688 423 l 292 423 l 292 0 l 88 0 l 88 987 l 292 987 l 292 587 l 688 587 l 688 987 l 892 987 l 892 0 z "
},
"I": {
"ha": 405,
"x_min": 101,
"x_max": 304,
"o": "m 304 0 l 101 0 l 101 987 l 304 987 l 304 0 z "
},
"J": {
"ha": 776,
"x_min": 27,
"x_max": 690,
"o": "m 486 987 l 690 987 l 690 304 q 648 137 690 210 q 530 26 606 65 q 359 -14 454 -14 q 115 66 202 -14 q 27 292 27 146 l 232 292 q 262 184 232 219 q 359 150 293 150 q 452 190 417 150 q 486 304 486 230 l 486 987 z "
},
"K": {
"ha": 882,
"x_min": 88,
"x_max": 893,
"o": "m 397 396 l 292 282 l 292 0 l 88 0 l 88 987 l 292 987 l 292 540 l 381 663 l 633 987 l 883 987 l 532 549 l 893 0 l 651 0 l 397 396 z "
},
"L": {
"ha": 752,
"x_min": 88,
"x_max": 724,
"o": "m 292 163 l 724 163 l 724 0 l 88 0 l 88 987 l 292 987 l 292 163 z "
},
"M": {
"ha": 1217,
"x_min": 88,
"x_max": 1127,
"o": "m 354 987 l 608 271 l 860 987 l 1127 987 l 1127 0 l 923 0 l 923 270 l 943 736 l 677 0 l 537 0 l 271 735 l 292 270 l 292 0 l 88 0 l 88 987 l 354 987 z "
},
"N": {
"ha": 981,
"x_min": 88,
"x_max": 891,
"o": "m 891 0 l 688 0 l 292 650 l 292 0 l 88 0 l 88 987 l 292 987 l 688 336 l 688 987 l 891 987 l 891 0 z "
},
"O": {
"ha": 959,
"x_min": 58,
"x_max": 899,
"o": "m 899 471 q 848 216 899 326 q 700 46 796 106 q 480 -14 604 -14 q 261 45 357 -14 q 112 214 165 104 q 58 466 59 323 l 58 515 q 111 771 58 661 q 259 942 163 882 q 479 1001 355 1001 q 698 942 602 1001 q 847 771 794 882 q 899 515 899 661 l 899 471 m 693 516 q 637 752 693 671 q 479 833 582 833 q 321 753 376 833 q 264 519 265 673 l 264 471 q 320 237 264 320 q 480 153 376 153 q 637 234 583 153 q 693 468 692 314 l 693 516 z "
},
"P": {
"ha": 896,
"x_min": 88,
"x_max": 844,
"o": "m 292 348 l 292 0 l 88 0 l 88 987 l 473 987 q 669 947 585 987 q 799 831 753 906 q 844 661 844 756 q 745 432 844 515 q 470 348 646 348 l 292 348 m 292 513 l 473 513 q 596 551 554 513 q 639 659 639 589 q 596 777 639 732 q 478 823 553 821 l 292 823 l 292 513 z "
},
"Q": {
"ha": 959,
"x_min": 57,
"x_max": 898,
"o": "m 898 471 q 853 231 898 333 q 729 67 808 129 l 893 -62 l 764 -176 l 553 -7 q 479 -14 517 -14 q 260 45 356 -14 q 111 214 163 104 q 57 466 58 323 l 57 515 q 110 771 57 661 q 258 942 162 882 q 477 1001 354 1001 q 697 942 601 1001 q 845 771 793 882 q 898 515 898 661 l 898 471 m 692 516 q 636 752 692 671 q 477 833 581 833 q 319 753 375 833 q 263 519 264 673 l 263 471 q 319 237 263 320 q 479 153 374 153 q 636 234 581 153 q 692 468 691 314 l 692 516 z "
},
"R": {
"ha": 886,
"x_min": 88,
"x_max": 857,
"o": "m 454 361 l 292 361 l 292 0 l 88 0 l 88 987 l 455 987 q 725 909 630 987 q 820 689 820 831 q 776 520 820 588 q 644 413 732 453 l 857 9 l 857 0 l 639 0 l 454 361 m 292 526 l 456 526 q 574 565 532 526 q 616 673 616 604 q 577 783 616 743 q 455 823 537 823 l 292 823 l 292 526 z "
},
"S": {
"ha": 854,
"x_min": 47,
"x_max": 804,
"o": "m 600 259 q 559 348 600 317 q 413 413 519 378 q 245 480 307 447 q 77 725 77 571 q 122 868 77 805 q 252 966 168 930 q 441 1001 336 1001 q 630 963 547 1001 q 759 854 713 924 q 804 696 804 785 l 601 696 q 558 801 601 764 q 438 839 515 839 q 322 807 363 839 q 281 724 281 776 q 329 644 281 676 q 472 583 378 611 q 725 453 646 530 q 804 260 804 376 q 707 59 804 132 q 446 -14 610 -14 q 239 28 332 -14 q 96 142 145 70 q 47 311 47 215 l 251 311 q 446 147 251 147 q 559 177 519 147 q 600 259 600 206 z "
},
"T": {
"ha": 859,
"x_min": 27,
"x_max": 831,
"o": "m 831 823 l 529 823 l 529 0 l 326 0 l 326 823 l 27 823 l 27 987 l 831 987 l 831 823 z "
},
"U": {
"ha": 914,
"x_min": 79,
"x_max": 836,
"o": "m 836 987 l 836 337 q 734 81 836 175 q 457 -14 633 -14 q 182 78 284 -14 q 79 330 81 170 l 79 987 l 282 987 l 282 336 q 329 194 282 239 q 457 150 375 150 q 631 330 629 150 l 631 987 l 836 987 z "
},
"V": {
"ha": 908,
"x_min": 5,
"x_max": 903,
"o": "m 453 245 l 677 987 l 903 987 l 559 0 l 347 0 l 5 987 l 231 987 l 453 245 z "
},
"W": {
"ha": 1215,
"x_min": 24,
"x_max": 1193,
"o": "m 857 285 l 990 987 l 1193 987 l 974 0 l 769 0 l 608 661 l 448 0 l 243 0 l 24 987 l 227 987 l 360 286 l 523 987 l 695 987 l 857 285 z "
},
"X": {
"ha": 882,
"x_min": 15,
"x_max": 868,
"o": "m 441 647 l 627 987 l 861 987 l 573 498 l 868 0 l 631 0 l 441 346 l 252 0 l 15 0 l 310 498 l 22 987 l 256 987 l 441 647 z "
},
"Y": {
"ha": 859,
"x_min": 1,
"x_max": 857,
"o": "m 429 543 l 634 987 l 857 987 l 532 358 l 532 0 l 326 0 l 326 358 l 1 987 l 224 987 l 429 543 z "
},
"Z": {
"ha": 842,
"x_min": 50,
"x_max": 802,
"o": "m 304 163 l 802 163 l 802 0 l 50 0 l 50 119 l 538 823 l 50 823 l 50 987 l 791 987 l 791 871 l 304 163 z "
}
},
"familyName": "Roboto",
"ascender": 1289,
"descender": -339,
"underlinePosition": -102,
"underlineThickness": 68,
"boundingBox": {
"yMin": -376,
"xMin": -1009,
"yMax": 1467,
"xMax": 1654
},
"resolution": 1000,
"original_font_information": {
"format": 0,
"copyright": "Copyright 2011 Google Inc. All Rights Reserved.",
"fontFamily": "Roboto",
"fontSubfamily": "Bold",
"uniqueID": "Roboto Bold",
"fullName": "Roboto Bold",
"version": "Version 2.137; 2017",
"postScriptName": "Roboto-Bold",
"trademark": "Roboto is a trademark of Google.",
"designer": "Google",
"manufacturerURL": "Google.com",
"designerURL": "Christian Robertson",
"licence": "Licensed under the Apache License, Version 2.0",
"licenceURL": "http://www.apache.org/licenses/LICENSE-2.0"
},
"cssFontWeight": "bold",
"cssFontStyle": "normal"
}
1 change: 1 addition & 0 deletions assets/images/entity_selector/brick.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions assets/images/entity_selector/marker.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 8117d54

Please sign in to comment.