An open API service indexing awesome lists of open source software.

https://github.com/michaelkolesidis/synthetique

Retrofuturistic demo
https://github.com/michaelkolesidis/synthetique

3d-graphics 3d-scene 3d-structure 80s art artwork capitalist-realism demo demoscene digital-art k-punk mark-fisher retrofuturism synthwave three-js threejs threejs-example threejs-learning

Last synced: 18 days ago
JSON representation

Retrofuturistic demo

Awesome Lists containing this project

README

          

# synthétique

Made with [Three.js](https://threejs.org/)

![screenshot](/screenshots/screenshot-main.png)

## Other Technologies Used

- [dat.GUI](https://github.com/dataarts/dat.gui)
- [Web Audio API](https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API)
- [Vite](https://vite.dev/)
- [pnpm](https://pnpm.io/)

## Controls

| Key | Function |
| --- | :----------------: |
| S | Start/stop music |
| M | Toggle Mark Fisher |
| H | Show controls |

### Control panel

| Option | Function |
| --------------- | :--------------------------------------------------------: |
| enabled | Enable orbit controls (hold left-click and move mouse) |
| enablePan | Enable camera panning (hold right-click and move mouse) |
| freeControls | Remove limits to camera's horizontal and vertical rotation |
| autoRotate | Rotate the structure automatically around the Y-axis |
| autoRotateSpeed | Set the speed of the automatic rotation |

## Setup

First, you need to download and install [Node.js](https://nodejs.org/en/download/), as well as, install pnpm globally. Then, clone or download the project, and while inside its main folder run the following commands:

```bash
# Install dependencies (only the first time)
pnpm install

# Run the local server at localhost:8080
pnpm run dev

# Build for production in the dist/ directory
pnpm run build
```

## Screenshots

![screenshot](/screenshots/screenshot-menu.png)

![screenshot](/screenshots/screenshot-01.png)

![screenshot](/screenshots/screenshot-02.png)

## Acknowledgments

Music by [Aries Beats](https://free-songs.de/synthwave-piano/)

Special thanks to [Ricardo Cabello, aka Mr. doob](https://mrdoob.com/) for creating Three.js and to [Bruno Simon](https://bruno-simon.com/) for being such an great teacher.

Inspired by the works of [Mark Fisher, aka k-punk](https://en.wikipedia.org/wiki/Mark_Fisher)

## 💖 Support the Project

Thank you so much for your interest in my project! If you want to go a step further and support my work, buy me a coffee:

Buy Me a Coffee at ko-fi.com

## 📜 License

Copyright (c) Michael Kolesidis
The code is licensed under the [GNU Affero General Public License v3.0](https://www.gnu.org/licenses/agpl-3.0.html).