Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lukesthl/motion-detector
Desktop App and Server for Raspberry Pi to detect motion and configure actions
https://github.com/lukesthl/motion-detector
bun rust svelte sveltekit tailwindcss tauri-app typescript
Last synced: about 2 months ago
JSON representation
Desktop App and Server for Raspberry Pi to detect motion and configure actions
- Host: GitHub
- URL: https://github.com/lukesthl/motion-detector
- Owner: lukesthl
- License: mit
- Created: 2023-01-07T09:08:03.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-02-04T00:54:01.000Z (almost 2 years ago)
- Last Synced: 2023-03-21T03:47:00.289Z (almost 2 years ago)
- Topics: bun, rust, svelte, sveltekit, tailwindcss, tauri-app, typescript
- Language: Svelte
- Homepage:
- Size: 2.38 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
An Application that utilizes a sensor on a Raspberry Pi to detect motion and collect the data. It provides an App UI to configure actions, which will then be triggered by the sensor.
About The Project ·
Requirements ·
Server Installation ·
Tech Stack ·
Author
## About The Project
https://user-images.githubusercontent.com/44963006/212476461-877e338d-739c-4798-a310-51b64a1e9e24.mp4
## Requirements
- [Motion Detector App](https://github.com/lukesthl/motion-detector/releases) installed (MacOS, Windows, Ubuntu)
- Raspberry Pi
- 64-bit OS
- [Bun](https://github.com/oven-sh/bun#install) installed
- Python 3 and [GPIO zero](https://gpiozero.readthedocs.io/en/stable/installing.html) installed
- Server (RPi) must only be reached in local network
- Raspberry Pi with [Infrared Sensor](https://projects.raspberrypi.org/en/projects/physical-computing/11) connected on GPIO Pin## Server Installation
### Raspberry Pi
1. Clone the repository onto your Raspberry Pi:
```bash
git clone https://github.com/lukesthl/motion-detector.gitcd backend; bun i
```2. Setup the Environment:
```bash
cp .env.example .env
```Edit SERVER_ORIGIN to your preffered name and change the GPIO_PIN to your connected sensor pin.
2. Start Server:
```bash
bun run prod
```## Tech Stack
### Frontend (App)
- [Tauri](https://tauri.app/) – Tauri is a framework for building tiny, blazingly fast binaries for all major desktop platforms
- [SvelteKit](https://kit.svelte.dev/) – SvelteKit is built on Svelte, a UI framework for making interactive webpages
- [Vite](https://vitejs.dev/) – Vite is a build tool for Frontends. It allows for faster development thanks to fast Hot Module Reload (HMR)
- [TailwindCSS](https://tailwindcss.com/) - Tailwind CSS is basically a utility-first CSS framework for rapidly building custom user interfaces### Backend (Raspberry Pi Server)
- [Bun](https://bun.sh/) – Bun is a fast all-in-one JavaScript runtime like nodejs or deno
- [SQLite](https://www.sqlite.org/) – SQL database engine (only one currently supported by bun)## Ideas
- [ ] Dashboard
- [ ] Add more Actions (E-Mail, Phillips Hue, Sound)
- [ ] Mobile App Support (https://tauri.app/blog/2022/12/09/tauri-mobile-alpha/)
- [ ] Multiple Server/Sensor Support## Known Limitations
- MacOS Notifications not popping up (only shown in notification panel): https://github.com/tauri-apps/tauri/issues/5488
- Bun Docker build with aarch64: https://github.com/oven-sh/bun/issues/1219## Author
- Luke Stahl ([@lukesthl](https://github.com/lukesthl))