OOOOOOOOOOOOOOOOOOOOOoooooOOOOOO88888888888O888888888OOOOOOOOOOO888888OOO88OOOooOOOOOOOOOO88###88888888888888O:::::....::::...................
OOOOOOOOOOOOOOOOOOOOOooooooOOOOO8888888888OO88888888OooOOOOOOO888888OOOOOOOooooooooooooOOOO888888888888888888:.:::::........::................
OOOOOOOOOOOOOOOOOOOOOOooooOOOOOOO88O88888OO88888888OooOOOOOO8888888OOoOOOOOoooooooooo::ooooO88888888888O8888o...:::...........................
OOOOOOOOOOOOOOOOOOOOOOooOOOOOOOOOOOo8888OOO8888888o:oOOOOOOO88888OOOOOOOOOOOOOOOOOoo:::::ooooO88888888888OOO.....:............................
OOOOOOOOOOOOOOOOOOOOOOOOOOOO88OOOOOoO88OOOO8888888OOOOOOOOOO88888OOOOooooOOOOOOOOOOOOo::::oooooOO88888888OO..:...:::..........................
OOOOOOOOOOOOOOOOOOOOOOOOOOOO88OO888OO888OO88888888OOOOOOOOOO888OOOoooooooOOOOOOOOOOOOOOOo::::oooo8888888O8:..:...:::..........................
OOOOOOOOOOOOOOOOOOOOOOOOOO8O888O888OO88OOO8888888O888OOOoOOOOOOoooooooooOOOOOOOOOOOOOOOOOOo::ooooO8OOOOOOo...:................................
OOOOOOOOOOOOOOOOOOOOOOOOOO888888888Oo88OoO88888888888OOOOOoOOoooooooooooOOOOOOOOOOOOOOOOOOOo:::ooO8OOOOOO....:................................
OOOOOOOOOOOOOOOOOOO8888888888888888Oo8OOO88888888888OOOOOo:ooooooooooooooooOOoOOOOOOOOOOOOOOOo::oo8OOOOOo.....:...............................
OOOOOOOOOOOOOOOOO888888888888888888OoOOOO88888O888OOOOOo::ooooooooooooooooooooOOOOOOOOOOOOOOOOo..:O88OOO......:...............................
OOOOOOOOOOOOOOO8888888888888888888OooOOOO8888O888OOOOOo::oooooooooooooooooooooOOOOOOOOOOOOOOOOOO..:O8OOo......................................
OOOOOOOO8888OO88888888888888Ooo:::::OOOOO8OOO888OOOOOO::ooooooooooooooooooOOooOOOOOOOOOOOOOOOOOOo..oOOO.......................................
OOOOOOO888888888888888888888:.:::::oOOOO88OO8888OOOOOO::OooooooooOOOOoooooOOOOOOOOOOOOOOOOOOOOOOOo..:O:.......................................
OOOOOO8888888888888888888888O..::::OOOOO88OOOOOO8OOOOo:oooooooooooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO:.... ......................................
OOOO888888888888888888888888O:.::::OOOOOOOOOOOOO8OOOO:oOoooooooooooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO:...  .....................................
OO8888888888888OOOOOOOOOooo:::::::oOOOOOOOOOOOO8OOOOO:oooooooooooooooOOOOOOooOOOOOOOOOOOOOOOOOOOOOOo...   ....................................
OOOOOooooooooooo::::::::::::::::..OOOOOOOOO88O8OOOOOoooooooooooooooooooOOOooooOOOOOOOOOOOOOOOOOOOOOO:.     ...................................
ooo:::::::::::::::::::::::::::...:OOOO8OOoO88OOOOOOOooooo::::::ooooooooooooooooooOOOOOOOOOOOOOOOOOOO:..    ...................................
:::::::::::::::::::::::::::......OOOO88OOO888OOOOOooooo:.........:::oooooooooooooooooooOOOOOOOOOOOOOo..    ...................................
:::::::::::::::::::::::::.......oOOOO88OoO8OOOOOOOoooo::::::::......:::oooo:oo::::.......:::oOOOOOOOo..     ..................................
.::::::::::.:::::...:.:.........OOOOO88oOOOOOooooooo:ooo::::::::......:ooooo::::.:...::::::::oOOOOOOo:      ..................................
............:.::...............:OOOOO8OOO8OOOooOOoooooo:..............:ooooooo:::.::::oooooOoooOOOOOo:.     ..................................
...............................OOOOOOOOOO8OOOOOOOooooo:..............::ooOOOOo::::::::::ooooOOOoOOOOo:.       ..... ..........................
..............................oOOOOOOOOO8OOOOOOOo:::oo:..oo:.  ......:ooOOOOOo:::::.::::::oooooooOOOo:.       ...... .........................
..............................OOOOOOOOoO8OOOOOOOo:::oo:::oo.. ..:..:::ooOOOOOoo:....::::oo::::oooOOOo:.       ......   .......................
.............................:OOOOOOOOOOOOOOOOOooo:ooooo:::.  ..:.::::ooOOOOOOOo:..::...oOO:::oooOOOo..      ........   ....  ................
.............................oOOOOOOOOOOOOOOOOo::::oooooo::::::::::::oooOOOOOOOoo:::... .oOo::ooOOOO::       ........   ..  ..................
.............................OOOOOOOOOOOOOOo::o::::oooooooo::::::::ooooOOOOOOOOOoo::::..:oOooooOOOOO:.       ........  ..   ..................
............................:OOOOOOOOOOOOOo:::oo:::oOooooooooo:::oooooOOOOOOOOOOOoo:::oooooooOOOOOOO:.        .........    ...................
............................:OOOOOOOOOOOOo::ooooo:oOOoooooooo::ooooooooOOOOOOOOOOOooooooooOOOOOOOOOO:.        ........       .................
............................oOOOOOOOOOOOOOoooooo::oooooooooooooooooooooOOOOOOOOOOOOooooOOOOOOOOOOOOO:::      .........       .....     .......
............................oOOOOOOOOOOOOOOooo::::ooooooooooooo::oooooooOOOOOOOOOOOOOooOOOOOOOOOOOOO::o.      ......                 .........
..................:::.......OOOOOOOOOOoo::::.::::oooooooooooo:::ooo:::ooooooOOOOOOOOOOOOOOOOOOOOOOOO:::.      ......          ................
.........::.::::::::::......OOOOOOOOOOOooo:oooo::oooooooooooo:::o::::::::ooooOOOOooOOOOOOOOOOOOOOOOO:..     .....            .................
:::::::::::::::::::::........::OOOOOOOOOOOOoooo::ooooooooooo::::::. ...::::::ooOOoooOOOOOOOOOOOOOOOo::.       .......         ................
::::::::::::::::::::............:OOOOOOOOOooooo:oooooooooooo:::::.. ....:... .:oOooooOOOOOOOOOOOOOOo.:.     ..........        ................
::::::::::::::::::.........   .. .oOOOOOOooooo::ooooooooooo::::::......:::::..:oooooooOOOOOOOOOOOOOo..:    .............       ...............
::::::::::::::::......  ...   ...  .oOOOooooo:::ooooooooooooo::......::::ooo:.:oOOoooooOOOOOOOOOOOOo:.:    ............       ................
:::::::::::::.........  ...   ....   :oo:..::.:ooooooooooooo:.............o::ooOOOOOooooOOOOOOOOOOOo:::     ............ ..      .............
::::::::::::.......... ....  .....   ...   ....ooooooooooo:..........:.....:::::oOOOOoooOOOOOOOOOOOo:::    ............. ....     ............
....:::::...........   ............   .    ...:oooooooooo:..........:::....::::.:ooOOooooOOOOOOOOOoo:::     ............   ..   . ... ....... 
.....:::............   ...........   .    ..:::ooooooooo:......::....:::..::::::.::oOooooOOOOOOOOOoo::.      ............       ...   ........
...................   ...........   ..    ....:oooooooo::.............:::::::::::..:ooooooOOOOOOOOo::o.      ............ ... ...   ..........
...................   ...........   ..   .::..::ooooooo:....:...::::::::......::....:ooooooOOOOOOOo::o.       ...........  .       .   ...... 
..................   ............ ....   ......:oooooo::...:::::oooooooooo:::.......::oooooOOOOOOo::..        .  ...   .         .....   . ...
................... ..........    ...    ......:::oooo::...::oooooooooooooOOooo:......:ooooOOOOOoo...              .    .           ....   ...
.....................................    .......:::oo::...:::::ooooooooooooOOOOo:.....:ooooOOOOooo.                         ...     ..........
.................. ..................    ........:::::...::::::::::::...:::oooOOo:....:oOOOOOOooo..                         ....  .  .........
.................. ..................      .......::::...:::::::::........::::oOo:....oOOOOooooo:..                           ..  ..  ........
.................. ..................        .....:::....:::::::............::oOoo...:ooOooooooo:.                            .       ..  ....
....................................       ...............::::::..... .....::oOooo.:.:ooooooooo:...                           .       .   ... 
....................................          .............:::::....... ..::ooOooo:.:::oooooooo:....                                      ... 
 ...................................       . ..  .........:::::::..... ..:ooOOOOo::.:::ooooooo::..                                            
  . ...............................        .........  ....::::::::.....:oooOOOOoo:::..:::::ooo::..                                         .  
  .   .............................         ......  ......::::::::..:::oooOOOOOoo...:..:::::o:::..                                            
..................................         ....   .. ......::::::::::::ooooOOOOo:....::...:.::::..                                            
..................................          .    .. ......::......:::::ooooooOoo:::...:....:::::..                                            
..................................                ......:::..:....::.::::::ooOo::::::.::.....::::                                             
.................................. ..         .  ....  .::::...........::::oooo::::::::.:....::...                                            
.................................. ...      .   .   ....:...............:.:oooo:.:::::::::....:...                                            
..................................  ..     ..   .  ......................::::oo::.::::.:......::.                                             
..................................        ...  .   .......................:::oo::::::o:::......:.                                             

Juniper

Juniper is an .NET 7 and TypeScript framework for building WebXR applications. It is an evolution of my previous project, Primrose. View the Juniper GitHub repository.

Screenshot from Juniper
A forest demo built with Juniper

Juniper provides a number of major elements: