smart-gate
π Open source system for handling access to any physical entry gate.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
βCITATION.cff file
Found CITATION.cff file -
βcodemeta.json file
Found codemeta.json file -
β.zenodo.json file
Found .zenodo.json file -
βDOI references
-
βAcademic publication links
-
βCommitters with academic emails
-
βInstitutional organization owner
-
βJOSS paper metadata
-
βScientific vocabulary similarity
Low similarity (8.0%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
π Open source system for handling access to any physical entry gate.
Basic Info
- Host: GitHub
- Owner: Jozwiaczek
- License: mit
- Language: TypeScript
- Default Branch: main
- Homepage: https://smart-gate-docs.vercel.app
- Size: 9.88 MB
Statistics
- Stars: 24
- Watchers: 1
- Forks: 5
- Open Issues: 72
- Releases: 36
Topics
Metadata Files
README.md
Smart Gate
π Open source system for handling access to any physical entry gate.
Created by Jakub JΓ³ΕΊwiak and Mateusz Nestorowicz
Documentation:
smart-gate-docs.vercel.app
UI/UX:
figma.com/smart-gate
Storybook:
smart-gate.chromatic.com
β οΈ Smart Gate is still in heavy development β οΈ
π© Table of Contents
π About

System for managing and handling access to any physical entry home gate or door. The whole idea is to add smart control for your any already existed electric lock or gate.
Sounds familiar? Right, but there is one significant difference between others smart lock, it is COMPLETELY FREE.
From physical side only what you have to do is to prepare Raspberry Pi and add some 3V Relay Module between Raspberry and your gate to enable ability for opening.
Rest part of Smart Gate system is handled by predefined templates for simplifying process of deploying server, database, and web app. Only what you have to do in this step is to click 2 buttons from Setup for your own usage and fill provided secrets.
After those steps You will transform your simply or even old gate/door into your private smart system.
https://user-images.githubusercontent.com/29049653/131034360-aef67a76-4060-4953-8ed0-3694fe3e4809.mp4
π Quick setup for your own usage
Important note: Bellow you will find only short and a temporary description on how to setup Smart Gate.
More details will be added soon in documentation website.
In order to use the Smart Gate system in your environment, you have to deploy your own instance of the client, server and database. To make it as simple as possible there is already a prepared template for deploying all packages.
What's important is that the whole setup and its usage is free, so You don't have to worry about any billing.
Why it's free because every part of this setup assumes usage of free tiers without any need to upgrades those pricing plans.
You only have to click the buttons below to deploy your own instances and fill up the required environment variables.
Deploy web application
Click the button below to deploy client package with prepared web application using predefined Netlify template.
Deploy server
Click the button below to deploy api package with prepared server application using predefined Heroku template.
Prepare your Raspberry Pi
One-Step Automated Install
Those who want to get started quickly and conveniently may install Smart Gate using the following command:
curl -sSL https://smart-gate-docs.vercel.app/install | bash
Alternative Installation Methods
Piping to bash is controversial, as it prevents you from reading code that is about to run on your system.
Therefore, we provide these alternative installation methods which allow code review before installation:
Method 1: Clone our repository and run
bash
git clone --depth 1 https://github.com/Jozwiaczek/smart-gate.git
cd "smart-gate/packages/device/installer"
sudo bash installer.sh
Method 2: Manually download the installer and run
bash
wget -O installer.sh https://smart-gate-docs.vercel.app/install
sudo bash installer.sh
Post install check
After completed successfully installation check is everything working properly.
Your Raspberry Pi should be initialized and connected with your server.
Check standard logs:
bash
cat /var/log/smart-gate-standard.log
Check error logs:
bash
cat /var/log/smart-gate-error.log
π Documentation
Check out our documentation website.
π Contributing
Contributing Guidelines
Read the contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to Smart Gate.
Want to Help?
Want to file a bug, contribute some code, or improve documentation? Excellent!
Read up on our guidelines for contributing and then check out one of our issues labeled as or
.
Code of Conduct
Help us keep Smart Gate open and inclusive. Please read and follow our Code of Conduct.
π Roadmap
The future plans and high priority features and enhancements can be found in the roadmap.
π Changelog
For details about the latest updates check the changelog.
Contributors β¨
Thanks goes to these wonderful people (emoji key):
Jakub JΓ³ΕΊwiak π» π π¨ π€ π π |
Mefjus π» π€ π |
nikofiko123 π¨ |
Vatras π |
This project follows the all-contributors specification. Contributions of any kind welcome!
License
Copyright 2020 Jakub JΓ³ΕΊwiak. Licensed under the MIT license.
Owner
- Name: Jakub JΓ³ΕΊwiak
- Login: Jozwiaczek
- Kind: user
- Location: Warsaw, PL
- Company: @dotintent
- Repositories: 8
- Profile: https://github.com/Jozwiaczek
Software Engineer π¨π»βπ»
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Jakub" given-names: "JΓ³ΕΊwiak" - family-names: "Mateusz" given-names: "Nestorowicz" title: "Smart Gate System" date-released: 2021-01-08 url: "https://github.com/Jozwiaczek/smart-gate"
GitHub Events
Total
- Issues event: 2
- Issue comment event: 1
- Fork event: 1
Last Year
- Issues event: 2
- Issue comment event: 1
- Fork event: 1
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| jakub.jozwiak | k****i@g****m | 570 |
| dependabot[bot] | 4****] | 106 |
| Mateusz Nestorowicz | n****1@g****m | 58 |
| semantic-release-bot | s****t@m****t | 38 |
| allcontributors[bot] | 4****] | 8 |
| nikofiko123 | 3****3 | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 46
- Total pull requests: 57
- Average time to close issues: 14 days
- Average time to close pull requests: 1 day
- Total issue authors: 4
- Total pull request authors: 4
- Average comments per issue: 0.02
- Average comments per pull request: 0.04
- Merged pull requests: 53
- Bot issues: 0
- Bot pull requests: 10
Past Year
- Issues: 3
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 2
- Pull request authors: 0
- Average comments per issue: 0.33
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- Jozwiaczek (41)
- Mefjus (2)
- Darth-Carrotpie (2)
- asti009asti (1)
Pull Request Authors
- Jozwiaczek (33)
- Mefjus (12)
- dependabot[bot] (10)
- fossabot (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- @commitlint/cli ^13.1.0 development
- @commitlint/config-conventional ^13.1.0 development
- @commitlint/config-lerna-scopes ^13.1.0 development
- @semantic-release/changelog ^5.0.1 development
- @semantic-release/git ^9.0.1 development
- @types/node ^16.9.1 development
- @types/pg ^8.6.1 development
- @typescript-eslint/eslint-plugin ^4.31.1 development
- @typescript-eslint/parser ^4.31.1 development
- concurrently ^6.2.1 development
- enquirer ^2.3.6 development
- eslint ^7.32.0 development
- eslint-config-airbnb ^18.2.1 development
- eslint-config-airbnb-typescript ^14.0.0 development
- eslint-config-prettier ^8.3.0 development
- eslint-loader ^4.0.2 development
- eslint-plugin-cypress ^2.12.1 development
- eslint-plugin-eslint-comments ^3.2.0 development
- eslint-plugin-import ^2.24.2 development
- eslint-plugin-jest ^24.4.0 development
- eslint-plugin-jsdoc ^37.0.3 development
- eslint-plugin-jsx-a11y ^6.4.1 development
- eslint-plugin-node ^11.1.0 development
- eslint-plugin-prettier ^4.0.0 development
- eslint-plugin-promise ^5.1.0 development
- eslint-plugin-react ^7.25.1 development
- eslint-plugin-react-hooks ^4.2.0 development
- eslint-plugin-regexp ^1.1.0 development
- eslint-plugin-security ^1.4.0 development
- eslint-plugin-simple-import-sort ^7.0.0 development
- eslint-plugin-testing-library ^4.12.2 development
- husky ^7.0.2 development
- hygen ^6.1.0 development
- lerna ^4.0.0 development
- lint-staged ^11.1.2 development
- prettier ^2.4.0 development
- rimraf ^3.0.2 development
- serve ^12.0.1 development
- sort-package-json ^1.51.0 development
- @types/nodemailer ^6.4.4
- base64url ^3.0.1
- dotenv ^10.0.0
- nodemailer ^6.6.3
- pg ^8.7.1
- ts-node ^10.2.1
- typescript ^4.4.3
- @nestjs/testing ^8.0.6 development
- @types/jest ^27.0.1 development
- jest ^27.2.0 development
- ts-jest ^27.0.5 development
- @nestjs/cli ^8.1.1
- @nestjs/common ^8.0.6
- @nestjs/core ^8.0.6
- @nestjs/mapped-types ^1.0.0
- @nestjs/platform-express ^8.0.6
- @nestjs/platform-socket.io ^8.0.6
- @nestjs/schematics ^8.0.3
- @nestjs/throttler ^2.0.0
- @nestjs/typeorm ^8.0.2
- @nestjs/websockets ^8.0.6
- @sentry/node ^6.12.0
- @types/bcrypt ^5.0.0
- @types/cache-manager ^3.4.2
- @types/cookie-parser ^1.4.2
- @types/csurf ^1.11.2
- @types/express ^4.17.13
- @types/jsonwebtoken ^8.5.5
- @types/mjml ^4.7.0
- @types/ms ^0.7.31
- @types/uuid ^8.3.1
- @types/web-push ^3.3.2
- bcrypt ^5.0.1
- cache-manager ^3.4.4
- class-transformer ^0.4.0
- class-validator ^0.13.1
- cookie-parser ^1.4.5
- helmet ^4.6.0
- jsonwebtoken ^8.5.1
- mjml ^4.10.3
- ms ^2.1.3
- reflect-metadata ^0.1.13
- rimraf ^3.0.2
- rxjs ^7.3.0
- ts-loader ^9.2.5
- tsconfig-paths ^3.11.0
- typeorm ^0.2.37
- uuid ^8.3.2
- web-push ^3.4.5
- @storybook/addon-a11y ^6.3.8 development
- @storybook/addon-actions ^6.3.8 development
- @storybook/addon-console ^1.2.3 development
- @storybook/addon-essentials ^6.3.8 development
- @storybook/addon-jest ^6.3.8 development
- @storybook/addon-storysource ^6.3.8 development
- @storybook/addons ^6.3.8 development
- @storybook/components ^6.3.8 development
- @storybook/preset-create-react-app ^3.2.0 development
- @storybook/react ^6.3.8 development
- @storybook/theming ^6.3.8 development
- @testing-library/jest-dom ^5.14.1 development
- @testing-library/react ^12.1.0 development
- @testing-library/user-event ^13.2.1 development
- @types/animejs ^3.1.4 development
- @types/jest ^26.0.24 development
- @types/node ^16.9.1 development
- @types/react ^17.0.20 development
- @types/react-dom ^17.0.9 development
- @types/react-query ^1.2.9 development
- @types/react-router-dom ^5.1.9 development
- @types/styled-components ^5.1.14 development
- react-scripts ^4.0.3 development
- @popperjs/core ^2.10.1
- @sentry/react ^6.12.0
- @sentry/tracing ^6.12.0
- animejs ^3.2.1
- axios ^0.21.4
- copy-to-clipboard ^3.3.1
- i18next ^20.6.1
- i18next-browser-languagedetector ^6.1.2
- intersection-observer ^0.12.0
- react ^17.0.2
- react-dom ^17.0.2
- react-draggable ^4.4.4
- react-hook-form ^7.15.3
- react-i18next ^11.12.0
- react-popper ^2.2.5
- react-query ^3.23.2
- react-router-dom ^5.3.0
- socket.io-client ^4.2.0
- styled-components ^5.3.1
- use-sound ^4.0.1
- web-vitals ^2.1.0
- workbox-background-sync ^6.3.0
- workbox-broadcast-update ^6.3.0
- workbox-cacheable-response ^6.3.0
- workbox-core ^6.3.0
- workbox-expiration ^6.3.0
- workbox-google-analytics ^6.3.0
- workbox-navigation-preload ^6.3.0
- workbox-precaching ^6.3.0
- workbox-range-requests ^6.3.0
- workbox-routing ^6.3.0
- workbox-strategies ^6.3.0
- workbox-streams ^6.3.0
- @types/node ^16.9.1 development
- @types/rpio ^2.4.2 development
- ts-node ^10.2.1 development
- typescript ^4.4.3 development
- chalk ^4.1.2
- dotenv ^10.0.0
- ngrok ^4.2.2
- rpio ^2.4.2
- socket.io-client ^4.2.0
- @types/imap-simple ^4.2.5 development
- @types/mailparser ^3.0.3 development
- cypress ^8.4.0 development
- cypress-recurse ^1.8.1 development
- imap-simple ^5.1.0 development
- mailparser ^3.3.1 development
- @docusaurus/module-type-aliases 2.0.0-beta.6 development
- @tsconfig/docusaurus ^1.0.4 development
- @types/react ^17.0.14 development
- @types/react-helmet ^6.1.2 development
- @types/react-router-dom ^5.1.8 development
- typescript ^4.3.5 development
- @docusaurus/core 2.0.0-beta.6
- @docusaurus/preset-classic 2.0.0-beta.6
- @mdx-js/react ^1.6.21
- @svgr/webpack ^5.5.0
- clsx ^1.1.1
- file-loader ^6.2.0
- intersection-observer ^0.12.0
- prism-react-renderer ^1.2.1
- react ^17.0.1
- react-dom ^17.0.1
- react-intersection-observer ^8.32.1
- url-loader ^4.1.1
- 1195 dependencies
- 2731 dependencies
- actions/cache v2.1.6 composite
- actions/checkout v2.3.4 composite
- actions/setup-node v2.1.5 composite
- chromaui/action v1 composite
- actions/checkout v2.3.4 composite
- github/codeql-action/analyze v1 composite
- github/codeql-action/autobuild v1 composite
- github/codeql-action/init v1 composite
- actions/cache v2.1.6 composite
- actions/checkout v2.3.4 composite
- actions/github-script v4.0.2 composite
- actions/setup-node v2.1.5 composite
- cypress-io/github-action v2 composite
- postgres * docker
- hmarr/auto-approve-action v2.1.0 composite
- actions/cache v2.1.6 composite
- actions/checkout v2.3.4 composite
- actions/github-script v4.0.2 composite
- actions/setup-node v2.1.5 composite
- actions/cache v2.1.6 composite
- actions/checkout v2.3.4 composite
- actions/setup-node v2.1.5 composite
- dpage/pgadmin4 latest
- postgres latest