This is a sample project developed with the intent to study and demonstrate the capabilities of Electron. It was developed using web techs (such as HTML5, CSS3 and vanilla js) and built on Electron.
This app records your screen and saves for later. You can select the video source among your entire screen or and specific window.
- HTML5
- CSS3
- Javascript
- Bulma CSS Framework
- Font Awesome
- NodeJS
- Electron
$ git clone https://github.com/alande-amorim/electron-screen-recorder.git
$ cd electron-screen-recorder
$ npm install
You can now build the executables (eg. deb, exe).
Electron takes care of that too.
With the repository already cloned and installed, build the binaries by running:
$ npm run make
Check inside ./out/
directory for the installable binaries.
- Install and launch the app
- Select the video source. Click on "Choose video source" button. Select one of the options.
- As soon as you've selected the video source, your select window or screen will be shown on the app.
- Start recording. Click on "Record" button.
- Finish recording. Click on "Stop" button to stop recording.
- Save the video. As soon as you click on "stop" a pop up will be shown asking you where to download the video to.
If you wish to change something, run npm start
and a new window will open.
This npm process will be kept running as long as the window is opened.
Since there's no hot reloading built in this app, everytime you change something you need to refresh the app window. You can do that by sending rs
into the npm process.
If you've found something wrong, feel free to open an issue or submit a pull request.
The idea for this app came from Fireship's video. Make sure to check this channel on Youtube.
I just followed along and did some tweaks here and there.