\n 📡 Scan the internet for your personal information and modify or remove it\n
\n \n
\n \n \n \n \n
\n \n \n
What is Aeon?
\n
📡 Ever wondered what personal information is scattered around the internet? Aeon scans popuplar platforms for your personal information and (almost) automatically retrieves it.
\n
👀 Use Aeon to download, archive and visualise your personal information.
\n
❌ Don't agree with the data Facebook (or another platform) knows about you? Generate a request for modification or deletion with the click of a button!
\n \n
\n \n
\n \n
Installing Aeon
\n\n\n\n\n\n\n\n\n
Aeon is available for Windows, macOS, apt and yum! Download the application here and follow the instructions on the download page.
\n
\n
Not sure how to start using Aeon? Follow the Getting Started guide for detailed instructions.
\n
How does it work?
\n
All companies worldwide are required to offer you access to all data they retain about you. But most of the time, this process is hard, convoluted, slow or all three at once! Aeon has rules for each platform that make requesting your personal information just a couple of clicks!
\n
\n \n
\n
The resulting data is downloaded on your local computer for safekeeping. Often, data is formatted in machine-readable formats such as JSON and CSV. To make it easier to digest your personal information, Aeon visualises it for you.
\n
\n \n
\n
Companies are not only required to grant access, they must respect your wishes too. This means you can require them to delete or modify the personal information they have. Aeon contains a generator for data subject rights emails, that help you take control of your personal data.
\n
\n \n
\n
Supported Platforms
\n\n\n\n\n\n\n\n\n
Aeon currently has native support for the following platforms:
\n
\n
Facebook
\n
Instagram
\n
LinkedIn
\n
Spotify
\n
...more coming soon
\n
\n
Want to see a particular platform added? Create a GitHub issue with the name of the particular provider.
\n
Want to help out with adding new platforms? Providers are easily defined with a Provider config. Check out the documentation on Providers to find out how they work. You can always create a Pull Request
\n
Contributing
\n
Aeon is being developed out in the open. Have an idea for a feature or a suggestion for a new provider? Create a GitHub issue and tag me (@leinelissen) if you need any help.
\n
Documentation
\n
\n
Using Aeon
\n
You can find the latest build of Aeon over at the releases page. There's builds for Windows, macOS and Linux.
\n
If you're feeling more adventurous, clone the repository and compile your own nightly build. The only dependency is NodeJS. Prepare the codebase and start a development build by running the following commands:
\n
npm install\nnpm start\n
\n
The Technical Stuff
\n
Aeon is an Electron-based app, a mature platform for building JavaScript applications on the desktop. It is backed by a locally encrypted Git repository, made available through use of the excellent nodegit package.
\n
A custom and modular back-end allows for tracking and retrieving data from multiple sources. This is done through retrieval from an API, asynchronous data requests or a combination of both. Parser logic then allows for extracting common data types from the resulting JSON or CSV.
\n
",
"readmeOriginal": "
\n
\n 📡 Scan the internet for your personal information and modify or remove it\n
\n \n
\n \n \n \n \n
\n \n \n
What is Aeon?
\n
📡 Ever wondered what personal information is scattered around the internet? Aeon scans popuplar platforms for your personal information and (almost) automatically retrieves it.
\n
👀 Use Aeon to download, archive and visualise your personal information.
\n
❌ Don't agree with the data Facebook (or another platform) knows about you? Generate a request for modification or deletion with the click of a button!
\n \n
\n \n
\n \n
Installing Aeon
\n\n\n\n\n\n\n\n\n
Aeon is available for Windows, macOS, apt and yum! Download the application here and follow the instructions on the download page.
\n
\n
Not sure how to start using Aeon? Follow the Getting Started guide for detailed instructions.
\n
How does it work?
\n
All companies worldwide are required to offer you access to all data they retain about you. But most of the time, this process is hard, convoluted, slow or all three at once! Aeon has rules for each platform that make requesting your personal information just a couple of clicks!
\n
\n \n
\n
The resulting data is downloaded on your local computer for safekeeping. Often, data is formatted in machine-readable formats such as JSON and CSV. To make it easier to digest your personal information, Aeon visualises it for you.
\n
\n \n
\n
Companies are not only required to grant access, they must respect your wishes too. This means you can require them to delete or modify the personal information they have. Aeon contains a generator for data subject rights emails, that help you take control of your personal data.
\n
\n \n
\n
Supported Platforms
\n\n\n\n\n\n\n\n\n
Aeon currently has native support for the following platforms:
\n
\n
Facebook
\n
Instagram
\n
LinkedIn
\n
Spotify
\n
...more coming soon
\n
\n
Want to see a particular platform added? Create a GitHub issue with the name of the particular provider.
\n
Want to help out with adding new platforms? Providers are easily defined with a Provider config. Check out the documentation on Providers to find out how they work. You can always create a Pull Request
\n
Contributing
\n
Aeon is being developed out in the open. Have an idea for a feature or a suggestion for a new provider? Create a GitHub issue and tag me (@leinelissen) if you need any help.
\n
Documentation
\n
\n
Using Aeon
\n
You can find the latest build of Aeon over at the releases page. There's builds for Windows, macOS and Linux.
\n
If you're feeling more adventurous, clone the repository and compile your own nightly build. The only dependency is NodeJS. Prepare the codebase and start a development build by running the following commands:
\n
npm install\nnpm start\n
\n
The Technical Stuff
\n
Aeon is an Electron-based app, a mature platform for building JavaScript applications on the desktop. It is backed by a locally encrypted Git repository, made available through use of the excellent nodegit package.
\n
A custom and modular back-end allows for tracking and retrieving data from multiple sources. This is done through retrieval from an API, asynchronous data requests or a combination of both. Parser logic then allows for extracting common data types from the resulting JSON or CSV.
A universal clipboard managing app that makes it easy to access your clipboard from anywhere on any device.
\n
\n\n
1Clipboard
\n
1Clipboard is Electron based modern web application written by Typescript using Angular4 (angular-cli) + ngrx (redux for Angular) + PouchDB. I can't say this project is the best example, but anyway it is worth to look for those who are going to use Angular framework as their native application. This project is still a work in progress and not yet ready for production.
\n
Note
\n
I am currently working on this project from scratch with the newer web technology, so the source code is different from the released version.\nI am going to open this project as a public repository in the future when it is ready.\nIf you want to access to the current private repo, please contact me with your github account.
\n
Download
\n
You can download current released version of 1Clipboard for Windows, macOS from http://1clipboard.io.
A universal clipboard managing app that makes it easy to access your clipboard from anywhere on any device.
\n
\n\n
1Clipboard
\n
1Clipboard is Electron based modern web application written by Typescript using Angular4 (angular-cli) + ngrx (redux for Angular) + PouchDB. I can't say this project is the best example, but anyway it is worth to look for those who are going to use Angular framework as their native application. This project is still a work in progress and not yet ready for production.
\n
Note
\n
I am currently working on this project from scratch with the newer web technology, so the source code is different from the released version.\nI am going to open this project as a public repository in the future when it is ready.\nIf you want to access to the current private repo, please contact me with your github account.
\n
Download
\n
You can download current released version of 1Clipboard for Windows, macOS from http://1clipboard.io.
The current version is a developer preview. It collects usage metrics to help debugging.
\n
This is a developer preview, a pre-alpha. It is unstable and untested. It is not production-ready.
\n
Legalese
\n
This software is provided for free, on an as-is basis, with no warranty, and without any expressed or implied offer of support.
\n
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\nAPPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\nHOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\nIS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\nALL NECESSARY SERVICING, REPAIR OR CORRECTION.
Aether is available for Mac OS, Windows and Linux. Our community supports Windows, Mac OS and Linux versions at meta.geteather.net.
\n
Compiling
\n
Aether is a relatively large app with an Electron and Go toolchain, at 100,000+ lines of code. Getting it to compile requires setting up a correct build runtime with the latest versions of Go, Node (for Electron) and C dependencies and development environments. Expect the initial set-up to take a few hours. Be patient! 🙂
Please create a topic in the appropriate section of meta.getaether.net. This allows the non-Github-using majority of Aether users to help with your issue, and point you in the right direction.
\n
Backers
\n
Aether exists thanks to the generous fellows below. Funding Aether comes with some perks, such as registering your unique name before anyone else. See here for full benefits.
The current version is a developer preview. It collects usage metrics to help debugging.
\n
This is a developer preview, a pre-alpha. It is unstable and untested. It is not production-ready.
\n
Legalese
\n
This software is provided for free, on an as-is basis, with no warranty, and without any expressed or implied offer of support.
\n
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\nAPPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\nHOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\nIS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\nALL NECESSARY SERVICING, REPAIR OR CORRECTION.
Aether is available for Mac OS, Windows and Linux. Our community supports Windows, Mac OS and Linux versions at meta.geteather.net.
\n
Compiling
\n
Aether is a relatively large app with an Electron and Go toolchain, at 100,000+ lines of code. Getting it to compile requires setting up a correct build runtime with the latest versions of Go, Node (for Electron) and C dependencies and development environments. Expect the initial set-up to take a few hours. Be patient! 🙂
Please create a topic in the appropriate section of meta.getaether.net. This allows the non-Github-using majority of Aether users to help with your issue, and point you in the right direction.
\n
Backers
\n
Aether exists thanks to the generous fellows below. Funding Aether comes with some perks, such as registering your unique name before anyone else. See here for full benefits.
If you are looking to install the application, the go to the releases page and download the installer for your system.
\n\n
Find the latest stable release.
\n
Toggle the Assets and find the installer for your system. For Windows it will be arc-setup.exe. macOS users should download arc-x.x.x.dmg, where x.x.x is the version number. Linux users should find the distribution corresponding to the system you are using.
\n
Run the installer by clicking on it.
\n\n
Note that you may be asked to use an account with upgraded privileges to install the application.
\n
Project planning
\n
We believe in open web and open API tooling. The project is managed in an open way and you can also contribute by requesting features and reporting issues. You can check current planning in the project plan.
\n
Contributing to the project
\n
Get familiar with the application architecture. You may also want to look into the .github/CONTRIBUTING.md document before you jump into the development.
If you are looking to install the application, the go to the releases page and download the installer for your system.
\n\n
Find the latest stable release.
\n
Toggle the Assets and find the installer for your system. For Windows it will be arc-setup.exe. macOS users should download arc-x.x.x.dmg, where x.x.x is the version number. Linux users should find the distribution corresponding to the system you are using.
\n
Run the installer by clicking on it.
\n\n
Note that you may be asked to use an account with upgraded privileges to install the application.
\n
Project planning
\n
We believe in open web and open API tooling. The project is managed in an open way and you can also contribute by requesting features and reporting issues. You can check current planning in the project plan.
\n
Contributing to the project
\n
Get familiar with the application architecture. You may also want to look into the .github/CONTRIBUTING.md document before you jump into the development.
Akiee is a task manager that allows you to organize your task in a new way. It is build with Node-Webkit, Clojurescript and React. It is available for Linux, Mac and Windows.
\n
\n
What makes Akiee different from other task managers?
\n
\n
\n
Tasks should be easy to organize. Akiee lets you easily arange the order of your tasks. Unlike other task managers, that only let you change priorities and due dates of your tasks. With Akiee you always know which task you should finish next.
\n
\n
\n
Akiee saves your tasks in a Markdown file! You can access your tasks with every text editor available, it is easy to add notes in the Markdown file the way you like. Akiee doesn't hide your todo list in a database. If you link your tasks to your Dropbox you can even access it over the web.
\n
\n
\n
Akiee's tasks have 3 states: Todo, Doing, Done! Inspired from agile methods like Kanban and Scrum, Akiee's tasks have three states. This way you can focus on the tasks you are currently working on. Other tasks get out of your way.
\n
\n
\n
Akiee is at 0.0.1, it's the first beta release. I have been using it for some time now and it is working stable on Arch 64 bit. So take it for a test drive, if you feel task management is broken for you.
\n
Akiee is heavily inspired by the great Org-Mode and my work as a product owner in a software company.
Akiee is a task manager that allows you to organize your task in a new way. It is build with Node-Webkit, Clojurescript and React. It is available for Linux, Mac and Windows.
\n
\n
What makes Akiee different from other task managers?
\n
\n
\n
Tasks should be easy to organize. Akiee lets you easily arange the order of your tasks. Unlike other task managers, that only let you change priorities and due dates of your tasks. With Akiee you always know which task you should finish next.
\n
\n
\n
Akiee saves your tasks in a Markdown file! You can access your tasks with every text editor available, it is easy to add notes in the Markdown file the way you like. Akiee doesn't hide your todo list in a database. If you link your tasks to your Dropbox you can even access it over the web.
\n
\n
\n
Akiee's tasks have 3 states: Todo, Doing, Done! Inspired from agile methods like Kanban and Scrum, Akiee's tasks have three states. This way you can focus on the tasks you are currently working on. Other tasks get out of your way.
\n
\n
\n
Akiee is at 0.0.1, it's the first beta release. I have been using it for some time now and it is working stable on Arch 64 bit. So take it for a test drive, if you feel task management is broken for you.
\n
Akiee is heavily inspired by the great Org-Mode and my work as a product owner in a software company.
Alchemy is an open-source file converter (built on Electron and React). It also supports operations like merging files together into a pdf. We hope to support more operations and file types soon!
Beautifully simple. Super easy, drag-and-drop interface for converting/merging files
\n
Merge files. Merge multiple images into one pdf, you can even change the file order
\n
Convert files. Batch-convert multiple files to a variety of file types
\n
\n
Usage
\n
\n\n
Simply open the app by clicking on the menubar icon, or by hitting ⌘-⇧-8.
\n
Then just drag your image files into the application and select any options.
\n
Finally, click the convert/merge to seamlessly convert them into a variety of formats, or merge them into a pdf or gif. You can also hold ⇧ while dropping to merge the files into a pdf immediately.
Alchemy is an open-source file converter (built on Electron and React). It also supports operations like merging files together into a pdf. We hope to support more operations and file types soon!
Beautifully simple. Super easy, drag-and-drop interface for converting/merging files
\n
Merge files. Merge multiple images into one pdf, you can even change the file order
\n
Convert files. Batch-convert multiple files to a variety of file types
\n
\n
Usage
\n
\n\n
Simply open the app by clicking on the menubar icon, or by hitting ⌘-⇧-8.
\n
Then just drag your image files into the application and select any options.
\n
Finally, click the convert/merge to seamlessly convert them into a variety of formats, or merge them into a pdf or gif. You can also hold ⇧ while dropping to merge the files into a pdf immediately.
Altus is an Electron-based WhatsApp client with themes and multiple account support, available for Windows, Mac and Linux!
\n
Features
\n
Altus uses the GitHub-produced Electron framework to wrap around WhatsApp Web and add extra features to it.
\n
\n
Multiple Account Support: As of v2.0, you can use multiple WhatsApp accounts simultaneously!
\n
Native notification support for all of the platforms. Clicking the notification opens that specific chat!
\n
Online Indicator: Shows an indicator at the bottom-left corner of the chats that are online!
\n
Dark mode for when you need to chill out your eyes in the night (or even in the day)
\n
Custom Theme Support: Write your own CSS theme for WhatsApp or use the in-built Theme Customizer to create a new one just by picking colors!
\n
Available for most desktop platforms including Windows (7 or above), Linux and MacOS.
\n
Tray icon so you can minimize the app completely and still receive notifications.
\n
\n
Feature Requests
\n
In order to submit a feature request, create a new issue with the label enhancement.
\n
Please make sure that you provide a helpful description of your feature request. If possible, try implementing the feature yourself by forking this repository and then creating a pull request.
\n
Screenshots
\n
First Start
\n
\n
Default Theme
\n
\n
\"Dark Plus\" Theme
\n
\n
Support
\n
If you like Altus, consider supporting it by donating using any of the following methods:
Altus is an Electron-based WhatsApp client with themes and multiple account support, available for Windows, Mac and Linux!
\n
Features
\n
Altus uses the GitHub-produced Electron framework to wrap around WhatsApp Web and add extra features to it.
\n
\n
Multiple Account Support: As of v2.0, you can use multiple WhatsApp accounts simultaneously!
\n
Native notification support for all of the platforms. Clicking the notification opens that specific chat!
\n
Online Indicator: Shows an indicator at the bottom-left corner of the chats that are online!
\n
Dark mode for when you need to chill out your eyes in the night (or even in the day)
\n
Custom Theme Support: Write your own CSS theme for WhatsApp or use the in-built Theme Customizer to create a new one just by picking colors!
\n
Available for most desktop platforms including Windows (7 or above), Linux and MacOS.
\n
Tray icon so you can minimize the app completely and still receive notifications.
\n
\n
Feature Requests
\n
In order to submit a feature request, create a new issue with the label enhancement.
\n
Please make sure that you provide a helpful description of your feature request. If possible, try implementing the feature yourself by forking this repository and then creating a pull request.
\n
Screenshots
\n
First Start
\n
\n
Default Theme
\n
\n
\"Dark Plus\" Theme
\n
\n
Support
\n
If you like Altus, consider supporting it by donating using any of the following methods:
A free, light and easy to use desktop app to generate PGP key pairs, encrypt and decrypt messages. The desktop app works fully offline to ensure maximum security to the user.
\n
⚡ Looking for the online PGP tool from aliceandbob.io instead? Go here or on its GitHub's page.
⚠️ If you install the app on windows, you might get a warning from your anti-virus. It is because Windows builds are not signed. No worries, just add an exception for the app in your anti-virus software.
\n
Features ✨
\n
\n
🗝️ Generate PGP key pairs
\n
🔒 Encrypt messages with the public PGP key of the receiver
\n
🔓 Decrypt messages with your private PGP key
\n
\n
Tech 🔧
\n
\n
Electron.js: Electron.js helps building cross-platform desktop apps with JavaScript, HTML, and CSS
\n
Electron-forge: Electron Forge is a complete tool for creating, publishing, and installing modern Electron applications
When forking and cloning the repo, don't forget to do the following:
\n\n
Make sure to have node, npm and yarn installed on your machine
\n
run yarn install from the cloned repo.
\n
Then, yarn start to launch aliceandbob.io Desktop App in dev mode.
\n\n
⚠️ If you get any errors and warnings, install the necessary apps, packages or updates your platform may require.
\n
Find more info regarding the process and the configuration on the electronforge.io page.
\n
Building the desktop app locally 🏗️
\n
If you want to package and build the app on your machine, run yarn make --platform=<target build platform> --arch=<target arch>.\nAs for the platform, you can choose either:
A free, light and easy to use desktop app to generate PGP key pairs, encrypt and decrypt messages. The desktop app works fully offline to ensure maximum security to the user.
\n
⚡ Looking for the online PGP tool from aliceandbob.io instead? Go here or on its GitHub's page.
⚠️ If you install the app on windows, you might get a warning from your anti-virus. It is because Windows builds are not signed. No worries, just add an exception for the app in your anti-virus software.
\n
Features ✨
\n
\n
🗝️ Generate PGP key pairs
\n
🔒 Encrypt messages with the public PGP key of the receiver
\n
🔓 Decrypt messages with your private PGP key
\n
\n
Tech 🔧
\n
\n
Electron.js: Electron.js helps building cross-platform desktop apps with JavaScript, HTML, and CSS
\n
Electron-forge: Electron Forge is a complete tool for creating, publishing, and installing modern Electron applications
When forking and cloning the repo, don't forget to do the following:
\n\n
Make sure to have node, npm and yarn installed on your machine
\n
run yarn install from the cloned repo.
\n
Then, yarn start to launch aliceandbob.io Desktop App in dev mode.
\n\n
⚠️ If you get any errors and warnings, install the necessary apps, packages or updates your platform may require.
\n
Find more info regarding the process and the configuration on the electronforge.io page.
\n
Building the desktop app locally 🏗️
\n
If you want to package and build the app on your machine, run yarn make --platform=<target build platform> --arch=<target arch>.\nAs for the platform, you can choose either:
A clean and native interface to https://messages.google.com/web. Supports dark and light mode on macOS Mojave. This project is 100% open-source and available for macOS. Enjoy!
\n
\n
\n
Build Instructions
\n
To build a new version of the application, first download nativefier using the following command:
\n
yarn global add nativefier\n
\n
OR
\n
npm install nativefier -g\n
\n
Next, download the required CSS and image assets from one of the releases here located here. For example, you will need the electron.css and logo.png files.
\n
Last, you'll need to run the nativefier command to build your package.
Note: Nativefier allows for osx, mas, linux, and windows platform types. You can specify this with the --platform flag.
\n
\n
",
"readmeOriginal": "
\n
Android Messages
\n
A clean and native interface to https://messages.google.com/web. Supports dark and light mode on macOS Mojave. This project is 100% open-source and available for macOS. Enjoy!
\n
\n
\n
Build Instructions
\n
To build a new version of the application, first download nativefier using the following command:
\n
yarn global add nativefier\n
\n
OR
\n
npm install nativefier -g\n
\n
Next, download the required CSS and image assets from one of the releases here located here. For example, you will need the electron.css and logo.png files.
\n
Last, you'll need to run the nativefier command to build your package.
Appium Desktop is an app for Mac, Windows, and Linux which gives you the power of the Appium automation server in a beautiful and flexible UI. It is basically a graphical interface for the Appium Server. You can set options, start/stop the server, see logs, etc... You also don't need to use Node/NPM to install Appium, as the Node runtime comes bundled with Appium Desktop.
\n
Note: an inspector UI used to be included with Appium Desktop. It is now its own separate app: Appium Inspector.
\n
Download Appium Desktop
\n
You can always pick up the latest release of the Server GUI at our\nRelease page on\nGitHub.
\n
If you're on Windows or macOS, Appium Desktop will automatically provide you\nwith updated versions of the app when they are released. If you encounter\na problem updating, simply delete or uninstall the app and re-download the\nlatest from the link above.
\n
Note that Appium Desktop is not the same thing as Appium. Appium Desktop is\na graphical frontend to Appium with additional tools. Appium Desktop is\nreleased on its own cadence and has its own versioning system. If you are\nreporting an issue with Appium Desktop, always be sure to include both the\nversion of Appium Desktop and the version of the Appium Server which is in use\n(see below).
\n
If you're on macOS, you will need to install Appium Desktop apps by copying the app\nfrom the downloaded DMG file to your own file system (the best place is the\n\"Applications\" folder). Running Appium from in side the attached DMG itself is\nnot supported, and will not work.
\n
Installing on macOS
\n
If you're using the desktop app on macOS, when you run it you will likely be greeted with some error about the app not being able to be opened, or not verified by Apple, or something similar. The easiest way to get around this is to run xattr -cr on the file you downloaded. So let's say you downloaded Appium-Server-GUI-mac-<version>.dmg and copy Appium Server GUI.app in /Applications inside the disk image. Then you would run xattr -cr \"/Applications/Appium Server GUI.app\" before opening it. The same goes for the zip version (or the .app itself).
\n
The reason for this is that the Appium team does not have a paid Apple developer account and so our app isn't signed by a certificate they recognize, so the OS attempts to prevent it from running. Running the command above gets around this security limitation.
\n
Please try to call codesign --deep --sign - /Applications/Appium\\ Server\\ GUI.app in case you gets a crash in the app starts.
\n
Known Issues
\n
\n
Some Windows 10 Users experience a PathTooLongException when installing the EXE. The workaround for this is to update the setting on Windows to enable long paths
\n
\n
Usage Instructions
\n
These instructions assume you are already familiar with Appium and Appium-related concepts. If you\nare new to Appium, please visit appium.io and read our introductory material.\nThey also assume that you have downloaded both the Server GUI and the Inspector apps.
\n
This app provides a convenient way to download and run the Appium automation\nserver, as well as a tool for inspecting elements in Chrome/Safari browser and your Android or iOS application. Its\nvarious capabilities are described in the following sections.
\n
Starting a simple server
\n
\n
When you open Appium Desktop, you are greeted with the server start window. The\nbasic option is to start an Appium server with all its defaults and the ability\nto modify the host and port. The start button will also let you know which\nversion of the Appium server you are running, which can be useful when\nreporting issues to the Appium team.
\n
Starting a server with advanced options
\n
\n
By clicking on the 'Advanced' tab, you have the ability to set all the server\nflags that are available in Appium. This is for advanced users and should only\nbe modified after consulting the Appium documentation.
\n
Server presets
\n
\n
If you use the advanced server options, you have the ability to save\na configuration for later use. Simply save the preset on the 'Advanced' tab,\nand you will subsequently be able to recall and start the server with that\nconfiguration from the 'Preset' tab.
\n
The server console output window
\n
Once you start the server, it will launch on the host and port you specified,\nand open a new window displaying the server log output.
\n
\n
This is fairly straightforward and no real interaction is possible, beyond\nusing the button to stop the server. You can also copy-and-paste the logs from\nthis window which is useful in reporting Appium issues.
\n
Reporting Issues and Requesting Features
\n
Appium Desktop is open source, and we use GitHub for issue tracking. Please\nsimply report issues at our issue\ntracker. We will endeavor to\ndetermine whether the issue you are reporting is related to Appium Desktop or\nAppium Server. If it's not related to Appium Desktop specifically, we will\nclose the issue and ask you to open a general Appium issue at Appium's main\nissue tracker. Please, save\nyourselves and us valuable time by getting clear on whether the issue you're\nexperiencing is related to Appium Desktop specifically or instead is a general\nAppium issue. You can do this by seeing whether the issue reproduces with the\nAppium command line server as well. If it does, direct your report to Appium's\nissue tracker.
\n
Have a feature request? Follow the same process and submit an issue to the\nappropriate tracker! (Either here in this repo if the request is specifically\nfor Appium Desktop, or Appium's main tracker if the request is for Appium more\ngenerally.)
\n
Advanced Topics and Troubleshooting
\n
Appium can't detect environment variables on Mac
\n
Appium uses environment variables like ANDROID_HOME as well as relying on\nvarious binaries in your PATH and so on. When running from the command line\nin an environment where you have set these variables appropriately, Appium has\nno problem in picking them up. However, Appium Desktop does not run in a shell\nor a command-line environment, and so by default it does not have access to\nenvironment variables you have set in your shell startup script or profile. To\nwork around this, we use the\nshell-env package to pick up\nenvironment variables defined in your shell. This package only looks in certain\ncommon init scripts, however, like ~/.bashrc, ~/.bash_profile, and\n~/.zshrc. If you set your Appium environment variables in some other way, you\nwill need to create one of these default init scripts and set your environment\nvariables there as well, so that Appium Desktop will successfully pick them up.
\n
Warnings about being on a read-only file system
\n
This probably means you tried to launch Appium Desktop from the downloaded disk\nimage (.dmg file). This is not a supported mode of running Appium Desktop. To\ncorrectly install Appium Desktop, copy the application from the disk image to\nyour local filesystem, to somewhere like /Applications. Then, run the app\nfrom that new location.
\n
Developer Instructions
\n
Want to hack on Appium Desktop? Awesome! Head on over to our Contributing\nDoc for information on how to get a dev environment set up\nand submit changes back to the project.
\n
",
"readmeOriginal": "
Appium Desktop
\n
\n
\n
\n
Appium Desktop is an app for Mac, Windows, and Linux which gives you the power of the Appium automation server in a beautiful and flexible UI. It is basically a graphical interface for the Appium Server. You can set options, start/stop the server, see logs, etc... You also don't need to use Node/NPM to install Appium, as the Node runtime comes bundled with Appium Desktop.
\n
Note: an inspector UI used to be included with Appium Desktop. It is now its own separate app: Appium Inspector.
\n
Download Appium Desktop
\n
You can always pick up the latest release of the Server GUI at our\nRelease page on\nGitHub.
\n
If you're on Windows or macOS, Appium Desktop will automatically provide you\nwith updated versions of the app when they are released. If you encounter\na problem updating, simply delete or uninstall the app and re-download the\nlatest from the link above.
\n
Note that Appium Desktop is not the same thing as Appium. Appium Desktop is\na graphical frontend to Appium with additional tools. Appium Desktop is\nreleased on its own cadence and has its own versioning system. If you are\nreporting an issue with Appium Desktop, always be sure to include both the\nversion of Appium Desktop and the version of the Appium Server which is in use\n(see below).
\n
If you're on macOS, you will need to install Appium Desktop apps by copying the app\nfrom the downloaded DMG file to your own file system (the best place is the\n\"Applications\" folder). Running Appium from in side the attached DMG itself is\nnot supported, and will not work.
\n
Installing on macOS
\n
If you're using the desktop app on macOS, when you run it you will likely be greeted with some error about the app not being able to be opened, or not verified by Apple, or something similar. The easiest way to get around this is to run xattr -cr on the file you downloaded. So let's say you downloaded Appium-Server-GUI-mac-<version>.dmg and copy Appium Server GUI.app in /Applications inside the disk image. Then you would run xattr -cr \"/Applications/Appium Server GUI.app\" before opening it. The same goes for the zip version (or the .app itself).
\n
The reason for this is that the Appium team does not have a paid Apple developer account and so our app isn't signed by a certificate they recognize, so the OS attempts to prevent it from running. Running the command above gets around this security limitation.
\n
Please try to call codesign --deep --sign - /Applications/Appium\\ Server\\ GUI.app in case you gets a crash in the app starts.
\n
Known Issues
\n
\n
Some Windows 10 Users experience a PathTooLongException when installing the EXE. The workaround for this is to update the setting on Windows to enable long paths
\n
\n
Usage Instructions
\n
These instructions assume you are already familiar with Appium and Appium-related concepts. If you\nare new to Appium, please visit appium.io and read our introductory material.\nThey also assume that you have downloaded both the Server GUI and the Inspector apps.
\n
This app provides a convenient way to download and run the Appium automation\nserver, as well as a tool for inspecting elements in Chrome/Safari browser and your Android or iOS application. Its\nvarious capabilities are described in the following sections.
\n
Starting a simple server
\n
\n
When you open Appium Desktop, you are greeted with the server start window. The\nbasic option is to start an Appium server with all its defaults and the ability\nto modify the host and port. The start button will also let you know which\nversion of the Appium server you are running, which can be useful when\nreporting issues to the Appium team.
\n
Starting a server with advanced options
\n
\n
By clicking on the 'Advanced' tab, you have the ability to set all the server\nflags that are available in Appium. This is for advanced users and should only\nbe modified after consulting the Appium documentation.
\n
Server presets
\n
\n
If you use the advanced server options, you have the ability to save\na configuration for later use. Simply save the preset on the 'Advanced' tab,\nand you will subsequently be able to recall and start the server with that\nconfiguration from the 'Preset' tab.
\n
The server console output window
\n
Once you start the server, it will launch on the host and port you specified,\nand open a new window displaying the server log output.
\n
\n
This is fairly straightforward and no real interaction is possible, beyond\nusing the button to stop the server. You can also copy-and-paste the logs from\nthis window which is useful in reporting Appium issues.
\n
Reporting Issues and Requesting Features
\n
Appium Desktop is open source, and we use GitHub for issue tracking. Please\nsimply report issues at our issue\ntracker. We will endeavor to\ndetermine whether the issue you are reporting is related to Appium Desktop or\nAppium Server. If it's not related to Appium Desktop specifically, we will\nclose the issue and ask you to open a general Appium issue at Appium's main\nissue tracker. Please, save\nyourselves and us valuable time by getting clear on whether the issue you're\nexperiencing is related to Appium Desktop specifically or instead is a general\nAppium issue. You can do this by seeing whether the issue reproduces with the\nAppium command line server as well. If it does, direct your report to Appium's\nissue tracker.
\n
Have a feature request? Follow the same process and submit an issue to the\nappropriate tracker! (Either here in this repo if the request is specifically\nfor Appium Desktop, or Appium's main tracker if the request is for Appium more\ngenerally.)
\n
Advanced Topics and Troubleshooting
\n
Appium can't detect environment variables on Mac
\n
Appium uses environment variables like ANDROID_HOME as well as relying on\nvarious binaries in your PATH and so on. When running from the command line\nin an environment where you have set these variables appropriately, Appium has\nno problem in picking them up. However, Appium Desktop does not run in a shell\nor a command-line environment, and so by default it does not have access to\nenvironment variables you have set in your shell startup script or profile. To\nwork around this, we use the\nshell-env package to pick up\nenvironment variables defined in your shell. This package only looks in certain\ncommon init scripts, however, like ~/.bashrc, ~/.bash_profile, and\n~/.zshrc. If you set your Appium environment variables in some other way, you\nwill need to create one of these default init scripts and set your environment\nvariables there as well, so that Appium Desktop will successfully pick them up.
\n
Warnings about being on a read-only file system
\n
This probably means you tried to launch Appium Desktop from the downloaded disk\nimage (.dmg file). This is not a supported mode of running Appium Desktop. To\ncorrectly install Appium Desktop, copy the application from the disk image to\nyour local filesystem, to somewhere like /Applications. Then, run the app\nfrom that new location.
\n
Developer Instructions
\n
Want to hack on Appium Desktop? Awesome! Head on over to our Contributing\nDoc for information on how to get a dev environment set up\nand submit changes back to the project.
🚀🚀🚀 A faster, better and more stable redis desktop manager, compatible with Linux, windows, mac. What's more, it won't crash when loading massive keys.
Download latest exe package from release [or gitee in China], double click to install.
\n
Or by winget: winget install qishibo.AnotherRedisDesktopManager
\n
Or sponsor by win store, It's not free, and I will be very grateful to you.\n
\n
\n
Linux
\n
\n
Download latest AppImage package from release [or gitee in China], chmod +x, double click to run.
\n
Or by snap: sudo snap install another-redis-desktop-manager\nTips: If permission denied when selecting private key, run sudo snap connect another-redis-desktop-manager:ssh-keys to give access to ~/.ssh folder.\n
\n
\n
Mac
\n
\n
Download latest dmg package from release [or gitee in China], double click to install.
\n
Or by brew: brew install --cask another-redis-desktop-manager
\n
Or sponsor by app store, It's not free, and I will be very grateful to you.\n
\n
\n\n
Enjoy!
\n
\n
\n
\n
\n
Feature Log
\n
\n
2022-04-01: Protobuf Support && Memory Analysis
\n
2022-03-03: Readonly Mode && Mointor Support
\n
2022-01-24: Command Dump Support
\n
2022-01-05: Support To Load All Keys
\n
2022-01-01: Brotli\\Gzip\\Deflate Support && RedisJSON Support
\n
2021-11-26: JSON Editable && Subscribe Support
\n
2021-08-30: Execution log Support && Add Hot Keys
\n
2021-08-16: Custom Formatter View Support!
\n
2021-06-30: Sentinel Support!!
\n
2021-06-24: ACL Support
\n
2021-05-03: Stream Support && Cli Command Tips Support
\n
2021-02-28: Connection Color Tag && Search History Support
\n
2021-02-03: Multiple Select\\Delete && Msgpack Viewer Support
\n
2020-12-30: Tree View Support!!!
\n
2020-11-03: Binary View Support && SSH Passparse\\Timeout Support
\n
2020-09-04: SSH Cluster Support && Extension Commands Support
\n
2020-06-18: SSL/TLS Support!!!
\n
2020-04-28: Page Zoom && Big Key Loads With Scan && Auto Json
\n
2020-04-18: Unvisible Key\\Value Format Support
\n
2020-04-04: Cluster Support!!!
\n
2020-03-13: Dark Mode Support!!! && JsonView In Other Place
\n
2020-02-16: SSH Private Key Support
\n
2020-02-13: Open Cli Console In Tabs
\n
2019-06-14: Custom Font-Family Support
\n
2019-05-28: Key List Resizable
\n
2019-05-09: Search Support In Hash List Set Zset
\n
2019-04-26: Auto Updater
\n
2019-04-09: SSH Tunnel Connection Support
\n
2019-04-01: Extract Search Support
\n
2019-02-22: Single Connection Support
\n
2019-01-08: Project Start
\n
\n
Dev Build
\n
Linux Or Mac
\n
# clone code\ngit clone https://github.com/qishibo/AnotherRedisDesktopManager.git --depth=1\ncd AnotherRedisDesktopManager\n\n# install dependencies\nnpm install\n\n# if download electron failed during installing, use this command\n# ELECTRON_MIRROR=\"https://npm.taobao.org/mirrors/electron/\" npm install\n\n# serve with hot reload at localhost:9988\nnpm start\n\n\n# after the previous step is completed to 100%, open another tab, build up a desktop client\nnpm run electron
\n
If linux errors like this:
\n
# if error like this\n../src/FontManagerLinux.cc:1:35: fatal error: fontconfig/fontconfig.h: No such file or directory\n\n# then try this\nsudo apt install libfontconfig1-dev
\n
Windows
\n
# install build tools for the first time, just execute once\nnpm install -g windows-build-tools\n\n# clone code\ngit clone https://github.com/qishibo/AnotherRedisDesktopManager.git --depth=1\ncd AnotherRedisDesktopManager\n\n# install dependencies, 32-bit or 64-bit all use win32\nnpm install --platform=win32\n\n# if download electron failed during installing, use this command\n# npm config set ELECTRON_MIRROR http://npm.taobao.org/mirrors/electron/\n# npm install --platform=win32\n\n# serve with hot reload at localhost:9988\nnpm start\n\n\n# after the previous step is completed to 100%, open another tab, build up a desktop client\nnpm run electron
\n
Build Package
\n
# prepare before package\nnpm run pack:prepare\n\n# build package on respective platforms\n# on windows build 64bit package\nnpm run pack:win\n# on windows build 32bit package\nnpm run pack:win32\n\n# on mac\nnpm run pack:mac\n\n# on linux\nnpm run pack:linux
🚀🚀🚀 A faster, better and more stable redis desktop manager, compatible with Linux, windows, mac. What's more, it won't crash when loading massive keys.
Download latest exe package from release [or gitee in China], double click to install.
\n
Or by winget: winget install qishibo.AnotherRedisDesktopManager
\n
Or sponsor by win store, It's not free, and I will be very grateful to you.\n
\n
\n
Linux
\n
\n
Download latest AppImage package from release [or gitee in China], chmod +x, double click to run.
\n
Or by snap: sudo snap install another-redis-desktop-manager\nTips: If permission denied when selecting private key, run sudo snap connect another-redis-desktop-manager:ssh-keys to give access to ~/.ssh folder.\n
\n
\n
Mac
\n
\n
Download latest dmg package from release [or gitee in China], double click to install.
\n
Or by brew: brew install --cask another-redis-desktop-manager
\n
Or sponsor by app store, It's not free, and I will be very grateful to you.\n
\n
\n\n
Enjoy!
\n
\n
\n
\n
\n
Feature Log
\n
\n
2022-04-01: Protobuf Support && Memory Analysis
\n
2022-03-03: Readonly Mode && Mointor Support
\n
2022-01-24: Command Dump Support
\n
2022-01-05: Support To Load All Keys
\n
2022-01-01: Brotli\\Gzip\\Deflate Support && RedisJSON Support
\n
2021-11-26: JSON Editable && Subscribe Support
\n
2021-08-30: Execution log Support && Add Hot Keys
\n
2021-08-16: Custom Formatter View Support!
\n
2021-06-30: Sentinel Support!!
\n
2021-06-24: ACL Support
\n
2021-05-03: Stream Support && Cli Command Tips Support
\n
2021-02-28: Connection Color Tag && Search History Support
\n
2021-02-03: Multiple Select\\Delete && Msgpack Viewer Support
\n
2020-12-30: Tree View Support!!!
\n
2020-11-03: Binary View Support && SSH Passparse\\Timeout Support
\n
2020-09-04: SSH Cluster Support && Extension Commands Support
\n
2020-06-18: SSL/TLS Support!!!
\n
2020-04-28: Page Zoom && Big Key Loads With Scan && Auto Json
\n
2020-04-18: Unvisible Key\\Value Format Support
\n
2020-04-04: Cluster Support!!!
\n
2020-03-13: Dark Mode Support!!! && JsonView In Other Place
\n
2020-02-16: SSH Private Key Support
\n
2020-02-13: Open Cli Console In Tabs
\n
2019-06-14: Custom Font-Family Support
\n
2019-05-28: Key List Resizable
\n
2019-05-09: Search Support In Hash List Set Zset
\n
2019-04-26: Auto Updater
\n
2019-04-09: SSH Tunnel Connection Support
\n
2019-04-01: Extract Search Support
\n
2019-02-22: Single Connection Support
\n
2019-01-08: Project Start
\n
\n
Dev Build
\n
Linux Or Mac
\n
# clone code\ngit clone https://github.com/qishibo/AnotherRedisDesktopManager.git --depth=1\ncd AnotherRedisDesktopManager\n\n# install dependencies\nnpm install\n\n# if download electron failed during installing, use this command\n# ELECTRON_MIRROR=\"https://npm.taobao.org/mirrors/electron/\" npm install\n\n# serve with hot reload at localhost:9988\nnpm start\n\n\n# after the previous step is completed to 100%, open another tab, build up a desktop client\nnpm run electron
\n
If linux errors like this:
\n
# if error like this\n../src/FontManagerLinux.cc:1:35: fatal error: fontconfig/fontconfig.h: No such file or directory\n\n# then try this\nsudo apt install libfontconfig1-dev
\n
Windows
\n
# install build tools for the first time, just execute once\nnpm install -g windows-build-tools\n\n# clone code\ngit clone https://github.com/qishibo/AnotherRedisDesktopManager.git --depth=1\ncd AnotherRedisDesktopManager\n\n# install dependencies, 32-bit or 64-bit all use win32\nnpm install --platform=win32\n\n# if download electron failed during installing, use this command\n# npm config set ELECTRON_MIRROR http://npm.taobao.org/mirrors/electron/\n# npm install --platform=win32\n\n# serve with hot reload at localhost:9988\nnpm start\n\n\n# after the previous step is completed to 100%, open another tab, build up a desktop client\nnpm run electron
\n
Build Package
\n
# prepare before package\nnpm run pack:prepare\n\n# build package on respective platforms\n# on windows build 64bit package\nnpm run pack:win\n# on windows build 32bit package\nnpm run pack:win32\n\n# on mac\nnpm run pack:mac\n\n# on linux\nnpm run pack:linux
Altair is a beautiful feature-rich GraphQL Client IDE for all platforms. Available for MacOS, Windows, Linux, Chrome, Firefox.\nIt enables you interact with any GraphQL server you are authorized to access from any platform you are on.
\n
-- the GraphQL IDE that does not require running a web server
\n
Features
\n
Altair provides several features that make developing with GraphQL very efficient and friendly. These features include:
Is there a feature that is missing? You can let us know by creating a new issue or you can add the feature by creating a Pull Request.
\n
Sponsors
\n
Thanks to all our sponsors for sponsoring this project! Do you use Altair GraphQL client at your company? Consider supporting this project as a major sponsor (primary, gold, silver or bronze) on open collective.
instanceStorageNamespacestring - Namespace for storing the data for the altair instance. Use this when you have multiple altair instances running on the same domain. e.g. 'altair_dev_'
Altair has been tested in the latest versions of Google Chrome and Mozilla Firefox. It might not work as expected in other browsers like Safari and Edge.
Altair is a beautiful feature-rich GraphQL Client IDE for all platforms. Available for MacOS, Windows, Linux, Chrome, Firefox.\nIt enables you interact with any GraphQL server you are authorized to access from any platform you are on.
\n
-- the GraphQL IDE that does not require running a web server
\n
Features
\n
Altair provides several features that make developing with GraphQL very efficient and friendly. These features include:
Is there a feature that is missing? You can let us know by creating a new issue or you can add the feature by creating a Pull Request.
\n
Sponsors
\n
Thanks to all our sponsors for sponsoring this project! Do you use Altair GraphQL client at your company? Consider supporting this project as a major sponsor (primary, gold, silver or bronze) on open collective.
instanceStorageNamespacestring - Namespace for storing the data for the altair instance. Use this when you have multiple altair instances running on the same domain. e.g. 'altair_dev_'
Altair has been tested in the latest versions of Google Chrome and Mozilla Firefox. It might not work as expected in other browsers like Safari and Edge.
Antares is an SQL client based on Electron.js and Vue.js that aims to become a useful tool, especially for developers. \nOur target is to support as many databases as possible, and all major operating systems, including the ARM versions.
\n
At the moment this application is in development state, many features will come in future updates, and supports only MySQL/MariaDB, PostgreSQL and SQLite. \nAt the moment, however, there are all the features necessary to have a pleasant database management experience, so give it a chance and send us your feedback, we would really appreciate it. \nWe are actively working on it, hoping to provide new cool features, improvements and fixes as soon as possible.
\n
🔗 If you are curious to try Antares you can download and install the latest release. \n👁 To stay tuned for new releases follow Antares SQL on Twitter. \n🌟 Don't forget to leave a star if you appreciate this project.
\n
Current key features
\n
\n
Multiple database connections at same time.
\n
Database management (add/edit/delete).
\n
Full tables management, including indexes and foreign keys.
\n
Views, triggers, stored routines, functions and schedulers management (add/edit/delete).
\n
A modern and friendly tab system; keep open every kind of tab you need in your workspace.
\n
Fake table data filler to generate tons of data for test purpose.
\n
Query suggestions and auto complete.
\n
Query history: search through the last 1000 queries.
\n
SSH tunnel support.
\n
Manual commit mode.
\n
Import and export database dumps.
\n
Dark and light theme.
\n
Editor themes.
\n
\n
Philosophy
\n
Why are we developing an SQL client when there are a lot of them on the market? \nThe main goal is to develop a forever 100% free (without paid premium feature), full featured, as possible community driven, cross platform and open source alternative, empowered by JavaScript ecosystem. \nA modern application created with minimalism and semplicity in mind, with features in the right places, not hundreds of tiny buttons, nested tabs or submenu; productivity comes first.
\n
Installation
\n
Based on your operating system you can have one or more distribution formats to choose based on your preferences. \nSince Antares SQL is a free software we haven't a budget to spend in annual licenses or certificates. This can result that on some platforms you need some additional passages to install this app.
\n
Linux
\n
On Linux you can simply download and run .AppImage distributions, install from Snap Store or from AUR.
\n
Windows
\n
On Windows you can choose between Microsoft Store and download .exe distribution. The latter lacks of a certificate, so to install you need to click on \"More info\" and then \"Run anyway\" on SmartScreen prompt.
\n
MacOS
\n
On macOS you can run .dmg distribution following this guide to install apps from unknown developers.
This project follows the all-contributors specification. Contributions of any kind welcome!
\n
",
"readmeOriginal": "
\n
\n \n
\n\n
Antares SQL Client
\n
\n
Antares is an SQL client based on Electron.js and Vue.js that aims to become a useful tool, especially for developers. \nOur target is to support as many databases as possible, and all major operating systems, including the ARM versions.
\n
At the moment this application is in development state, many features will come in future updates, and supports only MySQL/MariaDB, PostgreSQL and SQLite. \nAt the moment, however, there are all the features necessary to have a pleasant database management experience, so give it a chance and send us your feedback, we would really appreciate it. \nWe are actively working on it, hoping to provide new cool features, improvements and fixes as soon as possible.
\n
🔗 If you are curious to try Antares you can download and install the latest release. \n👁 To stay tuned for new releases follow Antares SQL on Twitter. \n🌟 Don't forget to leave a star if you appreciate this project.
\n
Current key features
\n
\n
Multiple database connections at same time.
\n
Database management (add/edit/delete).
\n
Full tables management, including indexes and foreign keys.
\n
Views, triggers, stored routines, functions and schedulers management (add/edit/delete).
\n
A modern and friendly tab system; keep open every kind of tab you need in your workspace.
\n
Fake table data filler to generate tons of data for test purpose.
\n
Query suggestions and auto complete.
\n
Query history: search through the last 1000 queries.
\n
SSH tunnel support.
\n
Manual commit mode.
\n
Import and export database dumps.
\n
Dark and light theme.
\n
Editor themes.
\n
\n
Philosophy
\n
Why are we developing an SQL client when there are a lot of them on the market? \nThe main goal is to develop a forever 100% free (without paid premium feature), full featured, as possible community driven, cross platform and open source alternative, empowered by JavaScript ecosystem. \nA modern application created with minimalism and semplicity in mind, with features in the right places, not hundreds of tiny buttons, nested tabs or submenu; productivity comes first.
\n
Installation
\n
Based on your operating system you can have one or more distribution formats to choose based on your preferences. \nSince Antares SQL is a free software we haven't a budget to spend in annual licenses or certificates. This can result that on some platforms you need some additional passages to install this app.
\n
Linux
\n
On Linux you can simply download and run .AppImage distributions, install from Snap Store or from AUR.
\n
Windows
\n
On Windows you can choose between Microsoft Store and download .exe distribution. The latter lacks of a certificate, so to install you need to click on \"More info\" and then \"Run anyway\" on SmartScreen prompt.
\n
MacOS
\n
On macOS you can run .dmg distribution following this guide to install apps from unknown developers.
Atom is a hackable text editor for the 21st century, built on Electron, and based on everything we love about our favorite editors. We designed it to be deeply customizable, but still approachable using the default configuration.
Follow @AtomEditor on Twitter for important\nannouncements.
\n
This project adheres to the Contributor Covenant code of conduct.\nBy participating, you are expected to uphold this code. Please report unacceptable behavior to atom@github.com.
\n
Documentation
\n
If you want to read about using Atom or developing packages in Atom, the Atom Flight Manual is free and available online. You can find the source to the manual in atom/flight-manual.atom.io.
\n
The API reference for developing packages is also documented on Atom.io.
Atom will automatically update when a new release is available.
\n
Windows
\n
Download the latest Atom installer. AtomSetup.exe is 32-bit. For 64-bit systems, download AtomSetup-x64.exe.
\n
Atom will automatically update when a new release is available.
\n
You can also download atom-windows.zip (32-bit) or atom-x64-windows.zip (64-bit) from the releases page.\nThe .zip version will not automatically update.
\n
Using Chocolatey? Run cinst Atom to install the latest version of Atom.
\n
Linux
\n
Atom is only available for 64-bit Linux systems.
\n
Configure your distribution's package manager to install and update Atom by following the Linux installation instructions in the Flight Manual. You will also find instructions on how to install Atom's official Linux packages without using a package repository, though you will not get automatic updates after installing Atom this way.
\n
Archive extraction
\n
An archive is available for people who don't want to install atom as root.
\n
This version enables you to install multiple Atom versions in parallel. It has been built on Ubuntu 64-bit,\nbut should be compatible with other Linux distributions.
When using the Atom or other GitHub logos, be sure to follow the GitHub logo guidelines.
\n
",
"readmeOriginal": "
Atom
\n
\n
Atom is a hackable text editor for the 21st century, built on Electron, and based on everything we love about our favorite editors. We designed it to be deeply customizable, but still approachable using the default configuration.
Follow @AtomEditor on Twitter for important\nannouncements.
\n
This project adheres to the Contributor Covenant code of conduct.\nBy participating, you are expected to uphold this code. Please report unacceptable behavior to atom@github.com.
\n
Documentation
\n
If you want to read about using Atom or developing packages in Atom, the Atom Flight Manual is free and available online. You can find the source to the manual in atom/flight-manual.atom.io.
\n
The API reference for developing packages is also documented on Atom.io.
Atom will automatically update when a new release is available.
\n
Windows
\n
Download the latest Atom installer. AtomSetup.exe is 32-bit. For 64-bit systems, download AtomSetup-x64.exe.
\n
Atom will automatically update when a new release is available.
\n
You can also download atom-windows.zip (32-bit) or atom-x64-windows.zip (64-bit) from the releases page.\nThe .zip version will not automatically update.
\n
Using Chocolatey? Run cinst Atom to install the latest version of Atom.
\n
Linux
\n
Atom is only available for 64-bit Linux systems.
\n
Configure your distribution's package manager to install and update Atom by following the Linux installation instructions in the Flight Manual. You will also find instructions on how to install Atom's official Linux packages without using a package repository, though you will not get automatic updates after installing Atom this way.
\n
Archive extraction
\n
An archive is available for people who don't want to install atom as root.
\n
This version enables you to install multiple Atom versions in parallel. It has been built on Ubuntu 64-bit,\nbut should be compatible with other Linux distributions.
Spotify support is being added in version 0.0.11! If \"spotifyMiniPlayer\" is set to true in your config, an authorization window will pop up. And it should be as simple as any other oAuth situation.
\n
REQUIRES SPOTIFY PREMIUM ACCOUNT
\n
New Commands
\n
\n
'play [song name]' - play any song from spotify
\n
'skip', 'next song' - skip song
\n
'previous' - previous song
\n
'lyrics' - display song lyrics from node-lyrics-api
\n
\n
Spotify Mini Player
\n
If enabled, instead of the app closing when you click away, it will turn into a miniplayer.
Arizona is meant to be a customizable open replacement for desktop assistants like Cortana and Siri. You can use any mp4 as your assistant's avatar. It's meant to be completely customizable to your liking, and because it's all written in HTML and CSS, that's completely easy.
\n
New Features
\n
Themes
\n
Copy the folder of another theme in your 'themes' directory and rename it to whatever you want to call your theme. Then, in config.json, set your theme to the name of the folder you created. You can add whatever css you want to the custom css file.
\n
Background Video
\n
Place a mp4 in the directory of your theme with the name 'bg.mp4'. Then just makes sure \"backgroundVideo\" is set to true in config.json
\n
Python Scripts
\n
Run Python scripts by placing them in your 'scripts' folder and just type the name of the python file to run. (Must have python installed)
\n
Getting Started
\n
Dependencies
\n
Installing
\n
\n
\n
Node js
\n
\n
\n
Clone this repository or install with
\n
\n
\n
npm install arizona\n
\n
\n
Install Dependencies by running the following command in the arizona directory
\n
\n
npm install\n
\n
Executing program
\n
\n
Run this command in the arizona directory
\n
\n
npm start\n
\n
Customizing
\n
See Config.json to change settings like your name, your assistant's name, and more.\nTo Add or remove inputs for conversation, edit the 'inputs.txt' and 'responses.txt'\nEvery line in 'inputs.txt' corresponds to the same line in 'responses.txt'. Separate alternate versions of inputs or responses with a '/'
\n
Commands
\n
All Platforms
\n
\n
'google [query]' - open google in your browser with your query, faster than cortana (example: \"google the shaggy dog\")
\n
Any message that doesn't look like an input from the \"inputs\" file will be googled. So you can type \"gene wilder\" and it will google Gene Wilder
\n
'weather' - display the weather
\n
\n
TO-DO
\n
\n
Voice Control and Response (considering using AWS)
Spotify support is being added in version 0.0.11! If \"spotifyMiniPlayer\" is set to true in your config, an authorization window will pop up. And it should be as simple as any other oAuth situation.
\n
REQUIRES SPOTIFY PREMIUM ACCOUNT
\n
New Commands
\n
\n
'play [song name]' - play any song from spotify
\n
'skip', 'next song' - skip song
\n
'previous' - previous song
\n
'lyrics' - display song lyrics from node-lyrics-api
\n
\n
Spotify Mini Player
\n
If enabled, instead of the app closing when you click away, it will turn into a miniplayer.
Arizona is meant to be a customizable open replacement for desktop assistants like Cortana and Siri. You can use any mp4 as your assistant's avatar. It's meant to be completely customizable to your liking, and because it's all written in HTML and CSS, that's completely easy.
\n
New Features
\n
Themes
\n
Copy the folder of another theme in your 'themes' directory and rename it to whatever you want to call your theme. Then, in config.json, set your theme to the name of the folder you created. You can add whatever css you want to the custom css file.
\n
Background Video
\n
Place a mp4 in the directory of your theme with the name 'bg.mp4'. Then just makes sure \"backgroundVideo\" is set to true in config.json
\n
Python Scripts
\n
Run Python scripts by placing them in your 'scripts' folder and just type the name of the python file to run. (Must have python installed)
\n
Getting Started
\n
Dependencies
\n
Installing
\n
\n
\n
Node js
\n
\n
\n
Clone this repository or install with
\n
\n
\n
npm install arizona\n
\n
\n
Install Dependencies by running the following command in the arizona directory
\n
\n
npm install\n
\n
Executing program
\n
\n
Run this command in the arizona directory
\n
\n
npm start\n
\n
Customizing
\n
See Config.json to change settings like your name, your assistant's name, and more.\nTo Add or remove inputs for conversation, edit the 'inputs.txt' and 'responses.txt'\nEvery line in 'inputs.txt' corresponds to the same line in 'responses.txt'. Separate alternate versions of inputs or responses with a '/'
\n
Commands
\n
All Platforms
\n
\n
'google [query]' - open google in your browser with your query, faster than cortana (example: \"google the shaggy dog\")
\n
Any message that doesn't look like an input from the \"inputs\" file will be googled. So you can type \"gene wilder\" and it will google Gene Wilder
\n
'weather' - display the weather
\n
\n
TO-DO
\n
\n
Voice Control and Response (considering using AWS)
This software calculates value-added learning scores accounting for guessing. The software reads in nearly any exam format and exam questions can appear in different locations in the pretest and posttest.
This software calculates value-added learning scores accounting for guessing. The software reads in nearly any exam format and exam questions can appear in different locations in the pretest and posttest.
Simple cross-platform two-factor (2FA) authenticator app for desktop.
\n
\n
\n\n
\n
Features
\n
\n
🔒 Secure by design: Your codes is secured by AES 256bit encryption with your own password.
\n
🔑 Import codes: Import form any 2FA TOTP QR code or import directly from Google Authenticator.
\n
⌨️ Many shortcuts: Easily open Authme with custom shortcuts and the app will start with your system for quick and easy access.
\n
📡 Completely offline: You own your data, internet is only required for updates.
\n
💻 Privacy in mind: Authme is hidden from video capture and screenshots.
\n
📃 Easy export and backup: You can export your 2FA codes anytime and you can create a backup of your codes very easily.
\n
\n
Compatible 2FA codes
\n
\n
TOTP 2FA QR code: A TOTP QR code is that you find mostly everywhere, if you want to setup 2FA. Example: Google, Facebook, Microsoft, etc.
\n
Google Authenticator QR code: A Google Authenticator QR code is what you can export, and contains all of your already imported codes. Example: Google Authenticator.
\n
\n
Screenshot
\n
\n
Latest Release
\n
\n
Latest release version for users that want a stable and polished experience.
If you are planning to use this software as a business please contact me at: authme@levminer.com
\n
\n
",
"readmeOriginal": "
Authme
\n
\n
Simple cross-platform two-factor (2FA) authenticator app for desktop.
\n
\n
\n\n
\n
Features
\n
\n
🔒 Secure by design: Your codes is secured by AES 256bit encryption with your own password.
\n
🔑 Import codes: Import form any 2FA TOTP QR code or import directly from Google Authenticator.
\n
⌨️ Many shortcuts: Easily open Authme with custom shortcuts and the app will start with your system for quick and easy access.
\n
📡 Completely offline: You own your data, internet is only required for updates.
\n
💻 Privacy in mind: Authme is hidden from video capture and screenshots.
\n
📃 Easy export and backup: You can export your 2FA codes anytime and you can create a backup of your codes very easily.
\n
\n
Compatible 2FA codes
\n
\n
TOTP 2FA QR code: A TOTP QR code is that you find mostly everywhere, if you want to setup 2FA. Example: Google, Facebook, Microsoft, etc.
\n
Google Authenticator QR code: A Google Authenticator QR code is what you can export, and contains all of your already imported codes. Example: Google Authenticator.
\n
\n
Screenshot
\n
\n
Latest Release
\n
\n
Latest release version for users that want a stable and polished experience.
Simple multiplatform desktop app for storing TODOs, ideas or backlog items.\nYou can organize them with boards as a plaintext or markdown. No dependencies, no internet connection required,\nno external accounts. Sleek flow.
New 2.x version introduces a lot of new features including new UI, configurable keybindings, search item feature, emoji, and a lot more! Check it out !
When new version is available just download it, unzip and enjoy. No additional action is required. All your boards and items will be available.
\n
Change log
\n
1.8.0
\n
\n
This is another huge update with number of significant improvements/features added.\nHopefully it will stay for a longer.
\n
\n
Features & improvements
\n
\n
dark theme
\n
search items feature
\n
backup to file feature
\n
new top bar unified acroos OS
\n
modals can be closed by pressing ESC or click outside modal area
\n
scrollbar ui improved
\n
number of keyboard shortcuts added
\n
check for updates on app startup
\n
other minor ui improvements...
\n
\n
Bug fixes
\n
\n
fixed issue which makes impossible to move some item to newly created board
\n
fix bug when specific items can't be edited nor deleted
\n
fixed issue when items list was not fully visible (last item was truncated)
\n
\n
Why I've wrote it ?
\n
When programming I often have a number of ideas related to possible improvements for the future or a cool new project. Most often, it's just one sentence or a couple of words - just a draft of an idea to expand in the future.
\n
I know that, there are hundreds of todo list managers or other notes manager,\nbut this one will finally perfectly fulfill my needs. So far I wrote my thoughts on sticky notes, I tried Evernote, Simplenote...\nThey are fine, but all of them were either bloated with unnecessary features or lacked the desired \"flow\" -\nwhen I open a program I want type down thoughts, hit enter, and get back to my actual work. That's how I write Backlog. No dependencies, no internet connection required, no external accounts etc.
\n
License
\n
It's free and opensource application under MIT license. You can do whatever you want as long as you include the original copyright and license notice in any copy of the software/source
\n
Technical
\n
How ?
\n
This application is built with Electron and web technologies (javascript, css, html) more specifically: Vue.js. UI toolkit is iView
\n
Build Setup
\n
You can build it yourself instead of downloading executable:
\n
# install dependencies\nnpm install\n\n# Compiles and hot-reloads for development\nnpm run serve\n\n# Compiles and minifies for production\nnpm run build\n\n# Run your tests\nnpm run test\n\n# Lints and fixes files\nnpm run lint\n\n# Run your unit tests\nnpm run test:unit
Simple multiplatform desktop app for storing TODOs, ideas or backlog items.\nYou can organize them with boards as a plaintext or markdown. No dependencies, no internet connection required,\nno external accounts. Sleek flow.
New 2.x version introduces a lot of new features including new UI, configurable keybindings, search item feature, emoji, and a lot more! Check it out !
When new version is available just download it, unzip and enjoy. No additional action is required. All your boards and items will be available.
\n
Change log
\n
1.8.0
\n
\n
This is another huge update with number of significant improvements/features added.\nHopefully it will stay for a longer.
\n
\n
Features & improvements
\n
\n
dark theme
\n
search items feature
\n
backup to file feature
\n
new top bar unified acroos OS
\n
modals can be closed by pressing ESC or click outside modal area
\n
scrollbar ui improved
\n
number of keyboard shortcuts added
\n
check for updates on app startup
\n
other minor ui improvements...
\n
\n
Bug fixes
\n
\n
fixed issue which makes impossible to move some item to newly created board
\n
fix bug when specific items can't be edited nor deleted
\n
fixed issue when items list was not fully visible (last item was truncated)
\n
\n
Why I've wrote it ?
\n
When programming I often have a number of ideas related to possible improvements for the future or a cool new project. Most often, it's just one sentence or a couple of words - just a draft of an idea to expand in the future.
\n
I know that, there are hundreds of todo list managers or other notes manager,\nbut this one will finally perfectly fulfill my needs. So far I wrote my thoughts on sticky notes, I tried Evernote, Simplenote...\nThey are fine, but all of them were either bloated with unnecessary features or lacked the desired \"flow\" -\nwhen I open a program I want type down thoughts, hit enter, and get back to my actual work. That's how I write Backlog. No dependencies, no internet connection required, no external accounts etc.
\n
License
\n
It's free and opensource application under MIT license. You can do whatever you want as long as you include the original copyright and license notice in any copy of the software/source
\n
Technical
\n
How ?
\n
This application is built with Electron and web technologies (javascript, css, html) more specifically: Vue.js. UI toolkit is iView
\n
Build Setup
\n
You can build it yourself instead of downloading executable:
\n
# install dependencies\nnpm install\n\n# Compiles and hot-reloads for development\nnpm run serve\n\n# Compiles and minifies for production\nnpm run build\n\n# Run your tests\nnpm run test\n\n# Lints and fixes files\nnpm run lint\n\n# Run your unit tests\nnpm run test:unit
🚨 I am currently working on a major re-write, I will keep #255 up-to-date. In the meanwhile, please consider supporting me via patreon or github sponsors
\n
\n
\n\n
\n
MacOS/Linux
\n
Windows
\n
Snap
\n
\n\n\n
\n
\n
\n
\n
\n\n
\n
A beautiful SoundCloud app for your desktop. Using the power of electron we are able to integrate this webapp with native features like touchbar and media key support.
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
\n
Support 💪
\n
Auryo is a open source project. It can grow thanks to the sponsors and support by the amazing backers. If you like to donate, please visit 👉my patreon page.
\n
Author
\n
This application has been built by Jonas Snellinckx. It started out as a learning journey back in college-university Oct 2016, to start learning React, Redux and Electron. Since the first release in August 2017, the journey was incredibly educational. Over the next few months, Auryo has matured from a learning side-project into an escalated one. In a good sense.
\n
As of release 2.0.0, Auryo also has been open-sourced. See the list of contributors who participated in this project.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE.md file for details
\n
",
"readmeOriginal": "
Auryo
\n
\n
🚨 I am currently working on a major re-write, I will keep #255 up-to-date. In the meanwhile, please consider supporting me via patreon or github sponsors
\n
\n
\n\n
\n
MacOS/Linux
\n
Windows
\n
Snap
\n
\n\n\n
\n
\n
\n
\n
\n\n
\n
A beautiful SoundCloud app for your desktop. Using the power of electron we are able to integrate this webapp with native features like touchbar and media key support.
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
\n
Support 💪
\n
Auryo is a open source project. It can grow thanks to the sponsors and support by the amazing backers. If you like to donate, please visit 👉my patreon page.
\n
Author
\n
This application has been built by Jonas Snellinckx. It started out as a learning journey back in college-university Oct 2016, to start learning React, Redux and Electron. Since the first release in August 2017, the journey was incredibly educational. Over the next few months, Auryo has matured from a learning side-project into an escalated one. In a good sense.
\n
As of release 2.0.0, Auryo also has been open-sourced. See the list of contributors who participated in this project.
Beaker is an experimental peer-to-peer Web browser. It adds new APIs for building hostless applications while remaining compatible with the rest of the Web. Visit the website.
\n
Please feel free to open usability issues. Join us at #beakerbrowser on Freenode.
\n
Sponsors
\n
Sponsors support this project by contributing $100 a month or more. Become a sponsor
\n
\n\n\n\n\n\n\n\n\n
\n
Backers
\n
Backers support this project by contributing $2 to $99 a month. Become a backer
In Windows, you'll need to install Python 2.7, Visual Studio 2015 or 2017, and Git. (You might try windows-build-tools.) Then run:
\n
npm config set python c:/python27\nnpm config set msvs_version 2017\nnpm install -g node-gyp\nnpm install -g gulp
\n
To build:
\n
git clone https://github.com/beakerbrowser/beaker.git\ncd beaker/scripts\nnpm install # don't worry about v8 api errors building native modules - rebuild will fix\nnpm run rebuild # needed after each install. see https://github.com/electron/electron/issues/5851\nnpm start
\n
If you pull latest from the repo and get weird module errors, do:
\n
npm run burnthemall
\n
This invokes the mad king, who will torch your node_modules/, and do the full install/rebuild process for you.\n(We chose that command name when GoT was still cool.)\nnpm start should work afterward.
\n
If you're doing development, npm run watch to have assets build automatically.
DEBUG: which log systems to output? A comma-separated string. Can be beaker, dat, bittorrent-dht, dns-discovery, hypercore-protocol. Specify * for all.
\n
BEAKER_OPEN_URL: open the given URL on load, rather than the previous session or default tab.
\n
BEAKER_USER_DATA_PATH: override the user-data path, therefore changing where data is read/written. Useful for testing. For default value see userData in the electron docs.
\n
BEAKER_DAT_QUOTA_DEFAULT_BYTES_ALLOWED: override the default max-quota for bytes allowed to be written by a dat site. Useful for testing. Default value is '500mb'. This can be a Number or a String. Check bytes.parse for supported units and abbreviations.
\n
\n
Vulnerability disclosure
\n
See SECURITY.md for reporting security issues and vulnerabilities.
\n
Known issues
\n
tmux
\n
Launching from tmux is known to cause issues with GUI apps in macOS. On Beaker, it may cause the application to hang during startup.
\n
Contributors
\n
This project exists thanks to all the people who contribute. [Contribute].\n
\n
License
\n
MIT License (MIT)
\n
Copyright (c) 2018 Blue Link Labs
\n
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\n
",
"readmeOriginal": "
Beaker Browser
\n
\n
\n
Beaker is an experimental peer-to-peer Web browser. It adds new APIs for building hostless applications while remaining compatible with the rest of the Web. Visit the website.
\n
Please feel free to open usability issues. Join us at #beakerbrowser on Freenode.
\n
Sponsors
\n
Sponsors support this project by contributing $100 a month or more. Become a sponsor
\n
\n\n\n\n\n\n\n\n\n
\n
Backers
\n
Backers support this project by contributing $2 to $99 a month. Become a backer
In Windows, you'll need to install Python 2.7, Visual Studio 2015 or 2017, and Git. (You might try windows-build-tools.) Then run:
\n
npm config set python c:/python27\nnpm config set msvs_version 2017\nnpm install -g node-gyp\nnpm install -g gulp
\n
To build:
\n
git clone https://github.com/beakerbrowser/beaker.git\ncd beaker/scripts\nnpm install # don't worry about v8 api errors building native modules - rebuild will fix\nnpm run rebuild # needed after each install. see https://github.com/electron/electron/issues/5851\nnpm start
\n
If you pull latest from the repo and get weird module errors, do:
\n
npm run burnthemall
\n
This invokes the mad king, who will torch your node_modules/, and do the full install/rebuild process for you.\n(We chose that command name when GoT was still cool.)\nnpm start should work afterward.
\n
If you're doing development, npm run watch to have assets build automatically.
DEBUG: which log systems to output? A comma-separated string. Can be beaker, dat, bittorrent-dht, dns-discovery, hypercore-protocol. Specify * for all.
\n
BEAKER_OPEN_URL: open the given URL on load, rather than the previous session or default tab.
\n
BEAKER_USER_DATA_PATH: override the user-data path, therefore changing where data is read/written. Useful for testing. For default value see userData in the electron docs.
\n
BEAKER_DAT_QUOTA_DEFAULT_BYTES_ALLOWED: override the default max-quota for bytes allowed to be written by a dat site. Useful for testing. Default value is '500mb'. This can be a Number or a String. Check bytes.parse for supported units and abbreviations.
\n
\n
Vulnerability disclosure
\n
See SECURITY.md for reporting security issues and vulnerabilities.
\n
Known issues
\n
tmux
\n
Launching from tmux is known to cause issues with GUI apps in macOS. On Beaker, it may cause the application to hang during startup.
\n
Contributors
\n
This project exists thanks to all the people who contribute. [Contribute].\n
\n
License
\n
MIT License (MIT)
\n
Copyright (c) 2018 Blue Link Labs
\n
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Beekeeper Studio is a cross-platform SQL editor and database manager available for Linux, Mac, and Windows. Beekeeper Studio Community Edition is GPL licensed so it is free (libre) and free (gratis).
Beekeeper Studio Community Edition - This repository. This is the open source version of Beekeeper Studio. It is a full featured database management client that is totally free and open source.
\n
\n
\n
Beekeeper Studio Ultimate Edition - A commercial version of Beekeeper Studio with extra features and provided with a business-friendly commercial license. Buying the Ultimate Edition is the best way to support Beekeeper Studio.
Top feature: It's smooth 🍫, fast 🏎, and you'll actually enjoy using it 🥰
\n
\n
Truly cross-platform: Windows, MacOS, and Linux
\n
Autocomplete SQL query editor with syntax highlighting
\n
Tabbed interface, so you can multitask
\n
Sort and filter table data to find just what you need
\n
Sensible keyboard-shortcuts
\n
Save queries for later
\n
Query run-history, so you can find that one query you got working 3 days ago
\n
Default dark theme
\n
\n
One of our frustrations with other open-source SQL editors and database managers is that they take a 'kitchen sink' approach to features, adding so many features that the UI becomes cluttered and hard to navigate. We wanted a good looking, open source SQL workbench that's powerful, but also easy to use. We couldn't find one, so we created Beekeeper Studio!
\n
Beekeeper Studio supports connecting to the following databases:
\n
\n
SQLite
\n
MySQL
\n
MariaDB
\n
Postgres
\n
CockroachDB
\n
SQL Server
\n
Amazon Redshift
\n
\n
Supporting Beekeeper Studio
\n
I love working on Beekeeper Studio, and I'd love to keep growing and improving it forever. To do that I need your help.
\n
The best way to support Beekeeper Studio is to purchase the Ultimate Edition. Every purchase directly supports my work on Beekeeper Studio.
Beekeeper Studio's trademarks (words marks and logos) are not open source. See our trademark guidelines for more information.
\n
Trademark Guidelines
\n
Trademarks can be complicated with open source projects, so we have adapted a set of standard guidelines for using our trademarks that are common to many open source projects.
\n
If you are just using the Beekeeper Studio app, and you are not forking or distributing Beekeeper Studio code in any way, these probably don't apply to you.
Want to write some code and improve Beekeeper Studio? Getting set-up is easy on Mac, Linux, or Windows.
\n
/beekeeper-studio.git beekeeper-studio\ncd beekeeper-studio/\nyarn install # installs dependencies\n\n# Now you can start the app:\nyarn run electron:serve ## the app will now start\">
# First: Install NodeJS 12 or 14, NPM, and Yarn\n# ...\n\n# 1. Fork the Beekeeper Studio Repo (click fork button at top right of this screen)\n# 2. Check out your fork:\ngit clone git@github.com:<your-username>/beekeeper-studio.git beekeeper-studio\ncd beekeeper-studio/\nyarn install # installs dependencies\n\n# Now you can start the app:\nyarn run electron:serve ## the app will now start
\n
Where to make changes?
\n
This repo is now a monorepo, we have several places with code, but only really a couple of important entry points.
\n
All app code lives in apps/studio, some shared code lives in shared/src. This is shared with other apps.
\n
Beekeeper Studio has two entry points:
\n
\n
background.js - this is the electron-side code that controls native things like showing windows.
\n
main.js - this is the entry point for the Vue.js app. You can follow the Vue component breadcrumbs from App.vue to find the screen you need.
\n
\n
Generally we have two 'screens':
\n
\n
ConnectionInterface - connecting to a DB
\n
CoreInterface - interacting with a database
\n
\n
How to submit a change?
\n
\n
Push your changes to your repository and open a Pull Request from our github page (this page)
\n
Make sure to write some notes about what your change does! A gif is always welcome for visual changes.
\n
\n
Maintainer notes (casual readers can ignore this stuff)
\n
Release Process
\n\n
Up the version number in package.json
\n
Replace build/release-notes.md with the latest release notes. Follow the format that is there.
\n\n
\n
run git log <last-tag>..HEAD --oneline | grep 'Merge pull' to find PRs merged
\n
\n\n
Commit
\n
Push to master
\n
Create a tag git tag v<version>. It must start with a 'v'
\n
git push origin <tagname>
\n\n
\n
Now wait for the build/publish action to complete on Github
\n
\n\n
Push the new release live
\n\n
\n
Go to the new 'draft' release on the releases tab of github, edit the notes, publish
\n
Log into snapcraft.io, drag the uploaded release into the 'stable' channel for each architecture.
\n
\n
This should also publish the latest docs
\n
Post Release:
\n\n
Copy release notes to a blog post, post on website
\n
Tweet link
\n
Share on LinkedIn
\n
Send to mailing list on SendInBlue
\n\n
Big Thanks
\n
Beekeeper Studio wouldn't exist without Sqlectron-core, the core database libraries from the Sqlectron project. Beekeeper Studio started as an experimental fork of that repository. A big thanks to @maxcnunes and the rest of the Sqlectron community.
\n
The original license from sqlectron-core is included here:
\n
Copyright (c) 2015 The SQLECTRON Team\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n
\n
",
"readmeOriginal": "
Beekeeper Studio (Community Edition)
\n
Beekeeper Studio is a cross-platform SQL editor and database manager available for Linux, Mac, and Windows. Beekeeper Studio Community Edition is GPL licensed so it is free (libre) and free (gratis).
Beekeeper Studio Community Edition - This repository. This is the open source version of Beekeeper Studio. It is a full featured database management client that is totally free and open source.
\n
\n
\n
Beekeeper Studio Ultimate Edition - A commercial version of Beekeeper Studio with extra features and provided with a business-friendly commercial license. Buying the Ultimate Edition is the best way to support Beekeeper Studio.
Top feature: It's smooth 🍫, fast 🏎, and you'll actually enjoy using it 🥰
\n
\n
Truly cross-platform: Windows, MacOS, and Linux
\n
Autocomplete SQL query editor with syntax highlighting
\n
Tabbed interface, so you can multitask
\n
Sort and filter table data to find just what you need
\n
Sensible keyboard-shortcuts
\n
Save queries for later
\n
Query run-history, so you can find that one query you got working 3 days ago
\n
Default dark theme
\n
\n
One of our frustrations with other open-source SQL editors and database managers is that they take a 'kitchen sink' approach to features, adding so many features that the UI becomes cluttered and hard to navigate. We wanted a good looking, open source SQL workbench that's powerful, but also easy to use. We couldn't find one, so we created Beekeeper Studio!
\n
Beekeeper Studio supports connecting to the following databases:
\n
\n
SQLite
\n
MySQL
\n
MariaDB
\n
Postgres
\n
CockroachDB
\n
SQL Server
\n
Amazon Redshift
\n
\n
Supporting Beekeeper Studio
\n
I love working on Beekeeper Studio, and I'd love to keep growing and improving it forever. To do that I need your help.
\n
The best way to support Beekeeper Studio is to purchase the Ultimate Edition. Every purchase directly supports my work on Beekeeper Studio.
Beekeeper Studio's trademarks (words marks and logos) are not open source. See our trademark guidelines for more information.
\n
Trademark Guidelines
\n
Trademarks can be complicated with open source projects, so we have adapted a set of standard guidelines for using our trademarks that are common to many open source projects.
\n
If you are just using the Beekeeper Studio app, and you are not forking or distributing Beekeeper Studio code in any way, these probably don't apply to you.
Want to write some code and improve Beekeeper Studio? Getting set-up is easy on Mac, Linux, or Windows.
\n
# First: Install NodeJS 12 or 14, NPM, and Yarn\n# ...\n\n# 1. Fork the Beekeeper Studio Repo (click fork button at top right of this screen)\n# 2. Check out your fork:\ngit clone git@github.com:<your-username>/beekeeper-studio.git beekeeper-studio\ncd beekeeper-studio/\nyarn install # installs dependencies\n\n# Now you can start the app:\nyarn run electron:serve ## the app will now start
\n
Where to make changes?
\n
This repo is now a monorepo, we have several places with code, but only really a couple of important entry points.
\n
All app code lives in apps/studio, some shared code lives in shared/src. This is shared with other apps.
\n
Beekeeper Studio has two entry points:
\n
\n
background.js - this is the electron-side code that controls native things like showing windows.
\n
main.js - this is the entry point for the Vue.js app. You can follow the Vue component breadcrumbs from App.vue to find the screen you need.
\n
\n
Generally we have two 'screens':
\n
\n
ConnectionInterface - connecting to a DB
\n
CoreInterface - interacting with a database
\n
\n
How to submit a change?
\n
\n
Push your changes to your repository and open a Pull Request from our github page (this page)
\n
Make sure to write some notes about what your change does! A gif is always welcome for visual changes.
\n
\n
Maintainer notes (casual readers can ignore this stuff)
\n
Release Process
\n\n
Up the version number in package.json
\n
Replace build/release-notes.md with the latest release notes. Follow the format that is there.
\n\n
\n
run git log <last-tag>..HEAD --oneline | grep 'Merge pull' to find PRs merged
\n
\n\n
Commit
\n
Push to master
\n
Create a tag git tag v<version>. It must start with a 'v'
\n
git push origin <tagname>
\n\n
\n
Now wait for the build/publish action to complete on Github
\n
\n\n
Push the new release live
\n\n
\n
Go to the new 'draft' release on the releases tab of github, edit the notes, publish
\n
Log into snapcraft.io, drag the uploaded release into the 'stable' channel for each architecture.
\n
\n
This should also publish the latest docs
\n
Post Release:
\n\n
Copy release notes to a blog post, post on website
\n
Tweet link
\n
Share on LinkedIn
\n
Send to mailing list on SendInBlue
\n\n
Big Thanks
\n
Beekeeper Studio wouldn't exist without Sqlectron-core, the core database libraries from the Sqlectron project. Beekeeper Studio started as an experimental fork of that repository. A big thanks to @maxcnunes and the rest of the Sqlectron community.
\n
The original license from sqlectron-core is included here:
\n
Copyright (c) 2015 The SQLECTRON Team\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n
Believers Sword App is an application to help you study the bible. Not only that but to engage in learning the word of God. I built this apps specifically from my taste of view. I just really want to create an application including the features that I like to have in the application. Im so thankful to God for giving me time to create this application and also to share to others. Im not recommending this application, but I am encouraging you to try the application I built, and hoping that you may like it. I hope we learn learn to study the bible better.
\n
\n
\n
Features:
\n
\n
The ability to browse the book.
\n
The ability to view multiple version of book.
\n
The ability to bookmark verses.
\n
The ability to highlight verser using different colors
\n
The ability to check word definitions.
\n
The ability to create notes
\n
the ability to clip short notes in specific verses
\n
The ability to share/comment/create/ sermons on the internet so that others can see/read your sermons.
\n
The ability to create prayer lists
\n
The ability to create ask the community to get some answers
\n
The ability to answer questions from the community.
\n
play games to challenge my/our knowledge about the bible\n
\n
flip card for memory retention
\n
Question and Answer to test your knowledge.
\n
\n
\n
download/add more bible versions
\n
watch/read free sermons
\n
audio bible reader
\n
\n
",
"readmeOriginal": "
Believers Sword
\n
Believers Sword App is an application to help you study the bible. Not only that but to engage in learning the word of God. I built this apps specifically from my taste of view. I just really want to create an application including the features that I like to have in the application. Im so thankful to God for giving me time to create this application and also to share to others. Im not recommending this application, but I am encouraging you to try the application I built, and hoping that you may like it. I hope we learn learn to study the bible better.
\n
\n
\n
Features:
\n
\n
The ability to browse the book.
\n
The ability to view multiple version of book.
\n
The ability to bookmark verses.
\n
The ability to highlight verser using different colors
\n
The ability to check word definitions.
\n
The ability to create notes
\n
the ability to clip short notes in specific verses
\n
The ability to share/comment/create/ sermons on the internet so that others can see/read your sermons.
\n
The ability to create prayer lists
\n
The ability to create ask the community to get some answers
\n
The ability to answer questions from the community.
\n
play games to challenge my/our knowledge about the bible\n
bibisco is an open source application for writing novels.
\n
bibisco is a personal project, made with love.
\n
We love books and we want to help writers to write beautiful novels.
\n
With bibisco you can organize chapters and scenes, manage revisions, export novel in pdf, docx, or txt and write with a fully featured text editor.
\n
You can create a novel structure, define premise, fabula, narrative strands and settings: geographic, temporal and social context.
\n
And, most of all, with bibisco you can know everything about your characters. Because your novel works only if its characters are believable, that is when you understand their human nature's complexity.
\n
bibisco has 2 versions: Community Edition and Supporters Edition; this is the repository of bibisco Community Edition.
\n
Official website and blog
\n
You can find all information regarding bibisco novel writing software from the official website and from official blog.
bibisco is an open source application for writing novels.
\n
bibisco is a personal project, made with love.
\n
We love books and we want to help writers to write beautiful novels.
\n
With bibisco you can organize chapters and scenes, manage revisions, export novel in pdf, docx, or txt and write with a fully featured text editor.
\n
You can create a novel structure, define premise, fabula, narrative strands and settings: geographic, temporal and social context.
\n
And, most of all, with bibisco you can know everything about your characters. Because your novel works only if its characters are believable, that is when you understand their human nature's complexity.
\n
bibisco has 2 versions: Community Edition and Supporters Edition; this is the repository of bibisco Community Edition.
\n
Official website and blog
\n
You can find all information regarding bibisco novel writing software from the official website and from official blog.
Blockbench is a free, modern model editor for low-poly and boxy models with pixel art textures.\nModels can be exported into standardized formats, to be shared, rendered, 3D-printed, or used in game engines. There are also multiple dedicated formats for Minecraft Java and Bedrock Edition with format-specific features.
\n
Blockbench features a modern and intuitive UI, plugin support and innovative features. It is the industry standard for creating custom 3D models for the Minecraft Marketplace.
To launch Blockbench from source, you can clone the repository, navigate to the correct branch and launch the program in development mode using the instructions below. If you just want to use the latest version, please download the app from the website.
The Blockbench source-code is licensed under the GPL license version 3. See LICENSE.MD.
\n
Modifications to the source code can be made under the terms of that license.
\n
Blockbench plugins (external scripts) and themes (theme files to customize the design) that interact with the Blockbench API are an exception. Plugins and themes can be created and/or published as open source, proprietary or paid software.
\n
All assets created with Blockbench (models, textures, animations, screenshots etc.) are your own!
\n
\n
",
"readmeOriginal": "
Blockbench
\n
Blockbench is a free, modern model editor for low-poly and boxy models with pixel art textures.\nModels can be exported into standardized formats, to be shared, rendered, 3D-printed, or used in game engines. There are also multiple dedicated formats for Minecraft Java and Bedrock Edition with format-specific features.
\n
Blockbench features a modern and intuitive UI, plugin support and innovative features. It is the industry standard for creating custom 3D models for the Minecraft Marketplace.
To launch Blockbench from source, you can clone the repository, navigate to the correct branch and launch the program in development mode using the instructions below. If you just want to use the latest version, please download the app from the website.
The Blockbench source-code is licensed under the GPL license version 3. See LICENSE.MD.
\n
Modifications to the source code can be made under the terms of that license.
\n
Blockbench plugins (external scripts) and themes (theme files to customize the design) that interact with the Blockbench API are an exception. Plugins and themes can be created and/or published as open source, proprietary or paid software.
\n
All assets created with Blockbench (models, textures, animations, screenshots etc.) are your own!
So, I decided to take a crack at learning React and building an application that I found deeply missing in Linux: a Desktop Recipe Manager (I know there are some, but they don't match my needs...)
\n
I you want to contribute, please send me a mail or a pidgeon 😁
\n
\n
Screenshots
\n
\n
Dark and light themes - Grid view
\n
\n \n
\n
\n
Image list view
\n
\n \n
\n
\n
Table view
\n
\n \n
\n
\n
Print view
\n
\n \n
\n
\n
Edit view
\n
\n \n
\n
\n
Preferences screen - Storage tab
\n
\n \n
\n
\n
Preferences screen - Theme tab
\n
\n \n
\n
Features
\n
\n
Cross platform
\n
Localized (english, french, german and italian)
\n
Custom Themes (a light one and two dark ones for now)
\n
Content search
\n
Tags
\n
Categories
\n
Ratings
\n
Favorites
\n
Source URL
\n
Table view with column sorting
\n
Change the ingredients amounts when adjusting the servings (ready to print view)
\n
Print current recipe
\n
Choose your storage directory (including Sync Services)
\n
Backups and Restore backups
\n
Unit Converter
\n
Recipe Websites scraper (63 supported websites in 4 languages)
Visit the Releases Page to find the installer you need.
\n
Building from source
\n
# clone the project\ngit clone https://github.com/fredserva/birdskitchen.git\n\n# change directory to the project folder\ncd birdskitchen\n\n# install dependencies\nyarn\n\n# run the app in development mode\nyarn dev
\n
Contributing
\n
To add support for your favorite language, or submit new features, feel free to open an issue or contact me directly.\nContributions are very welcomed!
So, I decided to take a crack at learning React and building an application that I found deeply missing in Linux: a Desktop Recipe Manager (I know there are some, but they don't match my needs...)
\n
I you want to contribute, please send me a mail or a pidgeon 😁
\n
\n
Screenshots
\n
\n
Dark and light themes - Grid view
\n
\n \n
\n
\n
Image list view
\n
\n \n
\n
\n
Table view
\n
\n \n
\n
\n
Print view
\n
\n \n
\n
\n
Edit view
\n
\n \n
\n
\n
Preferences screen - Storage tab
\n
\n \n
\n
\n
Preferences screen - Theme tab
\n
\n \n
\n
Features
\n
\n
Cross platform
\n
Localized (english, french, german and italian)
\n
Custom Themes (a light one and two dark ones for now)
\n
Content search
\n
Tags
\n
Categories
\n
Ratings
\n
Favorites
\n
Source URL
\n
Table view with column sorting
\n
Change the ingredients amounts when adjusting the servings (ready to print view)
\n
Print current recipe
\n
Choose your storage directory (including Sync Services)
\n
Backups and Restore backups
\n
Unit Converter
\n
Recipe Websites scraper (63 supported websites in 4 languages)
Visit the Releases Page to find the installer you need.
\n
Building from source
\n
# clone the project\ngit clone https://github.com/fredserva/birdskitchen.git\n\n# change directory to the project folder\ncd birdskitchen\n\n# install dependencies\nyarn\n\n# run the app in development mode\nyarn dev
\n
Contributing
\n
To add support for your favorite language, or submit new features, feel free to open an issue or contact me directly.\nContributions are very welcomed!
BlinkMindDesktop is an open source mind-map and outliner app.
\n
BlinkMindDesktop is an MIT licensed open source project, and the latest version will always be downloadable for free from the GitHub release page. BlinkMindDesktop is still in development.
\n
BlinkMindDesktop uses the open source mind-map library BlinkMind for mind-map rendering.
Set topic style include border, text color, font, background and links.
\n
\n
\n
Customize theme
\n
✔️
\n
Theme editor, import theme, export theme.
\n
\n
\n
Shortcuts
\n
✔️
\n
Shortcuts to make more efficient.
\n
\n
\n
Drag and drop
\n
✔️
\n
Support drag one topic and then drop to another topic to reorganize the mind map.
\n
\n
\n
Open and save file
\n
✔️
\n
Save and open .bmind file, double click file to open.
\n
\n
\n
Export topic to image
\n
✔️
\n
Export topic to png/jpg/svg.
\n
\n
\n
Insert image to topic
\n
✔️
\n
Every topic can insert unlimited images.
\n
\n
\n
Paste rich text to topic
\n
✔️
\n
You can paste rich text from browser/microsoft word/apple pages or anything else to BlinkMind without losing format.
\n
\n
\n
Rich text editor for topic notes
\n
✔️
\n
Rich text editor for topic notes.
\n
\n
\n
Focus mode
\n
✔️
\n
Select any topic node as the editor root and only show that branch.
\n
\n
\n
Outliner mode
\n
✔️
\n
Seamlessly switch between mind map and outliner, some outliner's shortcuts are different from mindmap mode.
\n
\n
\n
Search
\n
✔️
\n
Search topic content and navigate to it.
\n
\n
\n
Tags
\n
✔️
\n
Topics can add tags and you can navigate from tags.
\n
\n
\n
Copy topics and paste
\n
on the way
\n
Copy multi topics including all the infomation(content,notes,tags and all attachment) and paste to another location(same document or another document).
\n
\n
\n
Topic reference
\n
on the way
\n
Topics can reference each other and navigate conveniently.
\n
\n
\n
Link curve between any two topics
\n
on the way
\n
Link curve between any two topics
\n
\n
\n
Markdown editor
\n
planing
\n
When editing topic notes, you can choose use rich html editor or markdown editor, for users who familiar and like markdown grammar. Markdown editor will support latex and mermaid.
\n
\n
\n
Manual layout diagram
\n
planing
\n
Manual layout diagram
\n
\n
\n
Cloud Storage
\n
planing
\n
Save and open file from clound storage(icloud/onedrive/google drive).
\nThanks for JetBrains supporting us the free JetBrains Open Source license(s).
\n
",
"readmeOriginal": "
BlinkMindDesktop
\n
BlinkMindDesktop is an open source mind-map and outliner app.
\n
BlinkMindDesktop is an MIT licensed open source project, and the latest version will always be downloadable for free from the GitHub release page. BlinkMindDesktop is still in development.
\n
BlinkMindDesktop uses the open source mind-map library BlinkMind for mind-map rendering.
Set topic style include border, text color, font, background and links.
\n
\n
\n
Customize theme
\n
✔️
\n
Theme editor, import theme, export theme.
\n
\n
\n
Shortcuts
\n
✔️
\n
Shortcuts to make more efficient.
\n
\n
\n
Drag and drop
\n
✔️
\n
Support drag one topic and then drop to another topic to reorganize the mind map.
\n
\n
\n
Open and save file
\n
✔️
\n
Save and open .bmind file, double click file to open.
\n
\n
\n
Export topic to image
\n
✔️
\n
Export topic to png/jpg/svg.
\n
\n
\n
Insert image to topic
\n
✔️
\n
Every topic can insert unlimited images.
\n
\n
\n
Paste rich text to topic
\n
✔️
\n
You can paste rich text from browser/microsoft word/apple pages or anything else to BlinkMind without losing format.
\n
\n
\n
Rich text editor for topic notes
\n
✔️
\n
Rich text editor for topic notes.
\n
\n
\n
Focus mode
\n
✔️
\n
Select any topic node as the editor root and only show that branch.
\n
\n
\n
Outliner mode
\n
✔️
\n
Seamlessly switch between mind map and outliner, some outliner's shortcuts are different from mindmap mode.
\n
\n
\n
Search
\n
✔️
\n
Search topic content and navigate to it.
\n
\n
\n
Tags
\n
✔️
\n
Topics can add tags and you can navigate from tags.
\n
\n
\n
Copy topics and paste
\n
on the way
\n
Copy multi topics including all the infomation(content,notes,tags and all attachment) and paste to another location(same document or another document).
\n
\n
\n
Topic reference
\n
on the way
\n
Topics can reference each other and navigate conveniently.
\n
\n
\n
Link curve between any two topics
\n
on the way
\n
Link curve between any two topics
\n
\n
\n
Markdown editor
\n
planing
\n
When editing topic notes, you can choose use rich html editor or markdown editor, for users who familiar and like markdown grammar. Markdown editor will support latex and mermaid.
\n
\n
\n
Manual layout diagram
\n
planing
\n
Manual layout diagram
\n
\n
\n
Cloud Storage
\n
planing
\n
Save and open file from clound storage(icloud/onedrive/google drive).
Browserosaurus is an open-source (GPLv3 license), browser prompter for macOS. It\nworks by setting itself as the default browser; any clicked links in non-browser\napps are now sent to Browserosaurus where you are presented with a menu of all\nyour installed browsers. You may now decide which app you’d like to continue\nopening the link with.
\n
\n
Installation
\n
Download Browserosaurus from the\nGitHub releases page.\nSelect x64 for Intel machines, or arm64 for Apple Silicon (M1) machines.
🚨Please note that Browserosaurus only officially supports the version of\nmacOS that I currently use, which you can assume to be the latest stable\nversion.
\n
\n
Help
\n
Found a bug? Please log an\nissue. For anything else,\nplease see the documentation below or open a\ndiscussion.
Browserosaurus is an open-source (GPLv3 license), browser prompter for macOS. It\nworks by setting itself as the default browser; any clicked links in non-browser\napps are now sent to Browserosaurus where you are presented with a menu of all\nyour installed browsers. You may now decide which app you’d like to continue\nopening the link with.
\n
\n
Installation
\n
Download Browserosaurus from the\nGitHub releases page.\nSelect x64 for Intel machines, or arm64 for Apple Silicon (M1) machines.
🚨Please note that Browserosaurus only officially supports the version of\nmacOS that I currently use, which you can assume to be the latest stable\nversion.
\n
\n
Help
\n
Found a bug? Please log an\nissue. For anything else,\nplease see the documentation below or open a\ndiscussion.
Boost Changer is made to control the frequencies of Intel CPUs. It can also manage the processor's energy consumption through Energy-Performance Preference.
\n
In generall this app does not need root rights but when you hit the Turn Off or On button a popup window will ask you about your root password.
\n
why?
\n
\n
In your Kernel there is a file called /sys/devices/system/cpu/intel_pstate/no_turbo.
\n
\n
\n
To turn off or on your turbo boost you have to change this file and that is what this app does.
\n
\n
\n
In your Kernel there is a file called /sys/devices/system/cpu/intel_pstate/max_perf_pct.
\n
\n
\n
when you change the energy performance in Boost Changer you have to change this file and that is what this app does.
\n
\n
📌 This app will only work on a real machine. 📌
\n
What it isn't
\n
This is just a GUI application and it is not meant to replace\nTLP, powertop or\nany other power management / energy consumption service. It is meant just to\nprovide quick access to sysfs settings related to Intel Processors and\nin fact it can run on top of TLP.
# Download the app\nwget https://github.com/nbebaw/boostchanger/releases/download/v4.4.0/boostchanger-4.4.0.AppImage\n\n# Make the app executable \nchmod +x boostchanger-4.4.0.AppImage\n\n# Run the app\n./boostchanger-4.4.0.AppImage
\n
Installation only for Developer
\n
You can help me to improve this app
\n
# Clone this repo\ngit clone https://github.com/nbebaw/boostchanger.git\n\n# Install dependencies\nnpm install\n\n# Run the App\nnpm run
\n
Common Issue for AppImage
\n
The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing ...
Boost Changer is made to control the frequencies of Intel CPUs. It can also manage the processor's energy consumption through Energy-Performance Preference.
\n
In generall this app does not need root rights but when you hit the Turn Off or On button a popup window will ask you about your root password.
\n
why?
\n
\n
In your Kernel there is a file called /sys/devices/system/cpu/intel_pstate/no_turbo.
\n
\n
\n
To turn off or on your turbo boost you have to change this file and that is what this app does.
\n
\n
\n
In your Kernel there is a file called /sys/devices/system/cpu/intel_pstate/max_perf_pct.
\n
\n
\n
when you change the energy performance in Boost Changer you have to change this file and that is what this app does.
\n
\n
📌 This app will only work on a real machine. 📌
\n
What it isn't
\n
This is just a GUI application and it is not meant to replace\nTLP, powertop or\nany other power management / energy consumption service. It is meant just to\nprovide quick access to sysfs settings related to Intel Processors and\nin fact it can run on top of TLP.
# Download the app\nwget https://github.com/nbebaw/boostchanger/releases/download/v4.4.0/boostchanger-4.4.0.AppImage\n\n# Make the app executable \nchmod +x boostchanger-4.4.0.AppImage\n\n# Run the app\n./boostchanger-4.4.0.AppImage
\n
Installation only for Developer
\n
You can help me to improve this app
\n
# Clone this repo\ngit clone https://github.com/nbebaw/boostchanger.git\n\n# Install dependencies\nnpm install\n\n# Run the App\nnpm run
\n
Common Issue for AppImage
\n
The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing ...
Brim is an open source desktop application for security and network\nspecialists. Brim makes it easy to search and analyze data from:
\n
\n
packet captures, like those created by Wireshark, and
\n
structured logs, especially from the Zeek network analysis framework.
\n
\n
Brim is especially useful to security and network operators that need to handle large packet captures,\nespecially those that are cumbersome for Wireshark, tshark, or other packet analyzers.
\n
\n
Brim is built from open source components, including:
Please browse the wiki to review common problems and helpful tips before opening an issue.
\n
Development and contributing
\n
We'd love your help! Please see the contributing guide for\ndevelopment information like building and testing Brim.
\n
Join the Community
\n
Join our Public Slack workspace for announcements, Q&A, and to trade tips!
\n
",
"readmeOriginal": "
\n
Brim
\n
Brim is an open source desktop application for security and network\nspecialists. Brim makes it easy to search and analyze data from:
\n
\n
packet captures, like those created by Wireshark, and
\n
structured logs, especially from the Zeek network analysis framework.
\n
\n
Brim is especially useful to security and network operators that need to handle large packet captures,\nespecially those that are cumbersome for Wireshark, tshark, or other packet analyzers.
\n
\n
Brim is built from open source components, including:
Buka is a modern software that helps you manage your ebook at ease. With a simple, clean and straight-forward user interface, Buka aims to gather your ebooks for a reading experience without hassles. Buka currently support .PDF format with configurations that helps user focus more on the content.
Run sudo dpkg --install Buka_1.0.0_amd64.deb on the downloaded package.
\n
Launch Buka using the installed Buka command.
\n\n
\n
Of course you can always open .deb package with a package manager like Synaptic, Gnome Software or Gdebi then start the app instead of using command line options.
Run sudo dpkg -r Buka or sudo apt remove --purge buka
\n
\n
Screenshots
\n
\n
\n
\n
\n
\n
Contributors
\n
Code Contributors
\n
This project exists thanks to all the people who contribute. [Contribute].\n
\n
Financial Contributors
\n
Become a financial contributor and help us sustain our community. [Contribute]
\n
Individuals
\n
\n
Organizations
\n
Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]
\n
\n\n\n\n\n\n\n\n\n
\n
",
"readmeOriginal": "
\n \n
\n
\n Buka - EBook Management\n
\n
\n \n
\n\n
About Buka
\n
Buka is a modern software that helps you manage your ebook at ease. With a simple, clean and straight-forward user interface, Buka aims to gather your ebooks for a reading experience without hassles. Buka currently support .PDF format with configurations that helps user focus more on the content.
Run sudo dpkg --install Buka_1.0.0_amd64.deb on the downloaded package.
\n
Launch Buka using the installed Buka command.
\n\n
\n
Of course you can always open .deb package with a package manager like Synaptic, Gnome Software or Gdebi then start the app instead of using command line options.
Take decisions based on visual feedback. Graphs are the core feature of CashCash. First, you see and then you check the numbers.
\n
🔍 Filter
\n
One filter for all. Change it and see the graphs, tables and budgets adapting accordingly.
\n
⚖️ Budget
\n
Define your monthly target on all your expenses and incomes.
\n
🤖 Automate
\n
Create rules that will automatically assign transactions to the right accounts.
\n
🏦 Keep your secrets
\n
Your financial data stays on your computer. What you do with your money is nobody else business.\nYou can also export the database to save a copy at a place of your choice.
\n
Available features in CashCash
\n
\n
Charts
\n
Double-entry bookkeeping
\n
Multicurrency support
\n
Tree structure accounts
\n
Unlimited transactions
\n
Unlimited accounts
\n
Filters
\n
Database export
\n
Database import
\n
Automation rules
\n
Bulk transactions update
\n
Budget
\n
XLS, XLSX, ODS and CSV import
\n
\n
Contribution
\n
Please make sure to read the Contributing Guide before making a pull request.
\n
",
"readmeOriginal": "
\n
Cashcash is the accounting app for visual people.
\n
👀 Visualize
\n
Take decisions based on visual feedback. Graphs are the core feature of CashCash. First, you see and then you check the numbers.
\n
🔍 Filter
\n
One filter for all. Change it and see the graphs, tables and budgets adapting accordingly.
\n
⚖️ Budget
\n
Define your monthly target on all your expenses and incomes.
\n
🤖 Automate
\n
Create rules that will automatically assign transactions to the right accounts.
\n
🏦 Keep your secrets
\n
Your financial data stays on your computer. What you do with your money is nobody else business.\nYou can also export the database to save a copy at a place of your choice.
\n
Available features in CashCash
\n
\n
Charts
\n
Double-entry bookkeeping
\n
Multicurrency support
\n
Tree structure accounts
\n
Unlimited transactions
\n
Unlimited accounts
\n
Filters
\n
Database export
\n
Database import
\n
Automation rules
\n
Bulk transactions update
\n
Budget
\n
XLS, XLSX, ODS and CSV import
\n
\n
Contribution
\n
Please make sure to read the Contributing Guide before making a pull request.
Buttercup is a free, open-source and cross-platform password manager, built on NodeJS with Typescript. It uses strong industry-standard encryption to protect your passwords and credentials (among other data you store in Buttercup vaults) at rest, within vault files (.bcup). Vaults can be loaded from and saved to a number of sources, such as the local filesystem, Dropbox, Google Drive or any WebDAV-enabled service (like ownCloud or Nextcloud ¹).
\n
Why you need a password manager
\n
Password management is a crucial tool when you have any online presence. It's vital that all of your accounts online use strong and unique passwords so that they're much more difficult to break in to. Even if one of your accounts are breached, having unique passwords means that the likelihood of the attacker gaining further access to your accounts portfolio is greatly reduced.
\n
Without a password manager, such as Buttercup, it would be very tedious to manage different passwords for each service. If you remember your passwords it's a good sign that they're not strong enough. Ideally you should memorise a primary password for your vault, and not know any of the account-specific passwords off the top of your head.
\n
Precautions
\n
Buttercup securely encrypts your data in protected files, but this security is only as strong as the weakest component - and this is very often the primary password used to lock and unlock your vault. Follow these basic guidelines to ensure that your vault is safe even if exposed:
\n
\n
Choose a unique password that is not used elsewhere
\n
Use a highly-varied set of different characters - such as alpha-numeric, symbols and spaces
\n
Use a long password - the longer the better
\n
Don't include words or names in the password
\n
Never share your password with anyone
\n
\n
It is very important to note that no one associated with Buttercup will ever request your personal vault or its primary password. Do not share it or any of its related details with anyone. Developers or contributors working with Buttercup may request example vaults created via your system to try and reproduce issues, but please ensure to never use your real password or store actual credentails within such vaults.
\n
Versions
\n
The current stable version is 2. We recommend upgrading if you're still on v1, as it is no longer being actively maintained. You can still browse the v1 source and documentation here.
\n
Operating Systems
\n
Buttercup Desktop is officially supported on:
\n
\n
Most linux distributions (x64), such as Ubuntu
\n
MacOS (x64, non-ARM)
\n
Windows 10 (x64)
\n
\n
Arch Linux
\n
Buttercup is also available for Arch via the AUR. This release channel is maintained by our community.
\n
Some Arch users have reported the occasional segfault - if you experience this please try this solution before creating an issue.
\n
32bit builds (x86)
\n
There are some 32bit builds available, but please note that these are not officially supported. Issues, bug reports and questions regarding 32bit binaries are not allowed and will be closed without notice. PRs to fix 32bit support are permitted.
\n
Portability
\n
Buttercup provides a portable Windows version. Look for the release with the name Buttercup-win-x64-2.0.0-portable.exe where 2.0.0 is the version and x64 is the architecture.
\n
Although not explicitly portable, both the Mac zip and Linux AppImage formats are more or less standalone. They still write to the standard config/log destinations, however.
\n
To make the most of the portable version, some enviroment variables are required:
\n
\n\n
\n
Enviroment Variables
\n
Description
\n
\n\n\n
\n
BUTTERCUP_HOME_DIR
\n
If provided buttercup will use this path for saving configrations , user settings or even temprorary files
\n
\n
\n
BUTTERCUP_CONFIG_DIR
\n
Stores user settings, not allways needed but can be used to change config location or will default to BUTTERCUP_HOME_DIR Optional: Only activates if BUTTERCUP_HOME_DIR is provided
\n
\n
\n
BUTTERCUP_TEMP_DIR
\n
Same as BUTTERCUP_CONFIG_DIR but stores temprory filesOptional: Only activates if BUTTERCUP_HOME_DIR is provided
\n
\n\n
\n
Sample ButtercupLauncher.bat for Windows portable executable
\n
\n
This example stores user settings and cache on the portable folder, but stores temprory files on the host PC.
Linux: ~/.local/state/Buttercup-nodejs or $XDG_STATE_HOME/Buttercup-nodejs
\n
Mac: ~/Library/Logs/Buttercup-nodejs
\n
Windows: %LOCALAPPDATA%\\Buttercup-nodejs\\Log
\n
\n
Note that logs for portable Windows applications will be written to the same directory that the executable resides in.
\n
Published Applications
\n
You can view the current releases on the Buttercup Desktop releases page. Under each release are some assets - the various binaries and installers for each platform Buttercup supports. When installing or downloading, make sure to pick the right operating system and architecture for your machine.
\n
Note that at this time, Buttercup only supports x64 (64 bit) machines.
\n
Linux
\n
We provide an AppImage build for Linux, because it is the most desirable format for us to release. AppImages support auto-updating, a crucial feature (we feel) for a security application. The other build types do not.
\n
Important: Buttercup uses Electron to build its desktop application, which relies on AppImageLauncher for correct integration of AppImages into the host OS. Features like Google Drive authentication and correct .desktop icon use is only performed when integrating via AppImageLauncher. We highly recommend that you install it.
\n
We won't be supporting formats like Snapcraft, deb or rpm images as they do not align with our requirements. Issues requesting these formats will be closed immediately. Discussion on topics like this should be started on other social channels.
\n
Development
\n
To begin developing features or bug-fixes for Buttercup Desktop, make sure that you first have Node v14 installed with a current version of NPM.
\n
Once cloned, make sure to install all dependencies: npm install. After that, open 2 terminals and run npm run start:renderer in one and npm run start:main in the other.
\n
Contributing
\n
There are a number of ways you can contribute to Buttercup!
\n
Features & Bug fixes
\n
We welcome pull-requests and issues that serve to better Buttercup as a platform. Please remain respecful (this is free & open source after all) with your ideas and observations, and always consider opening an issue before starting on a substantial pull request.
\n
Translations
\n
Buttercup relies on the community for translating its interfaces into languages besides English. We use British English (en_GB) as the base language, and translate into all others that our contributors are kind enough to provide.
\n
To add support for a language, make sure to add the translations for our vault UI first. After that, you can follow these instructions to add another language to the desktop application:
\n
\n
Copy the source/shared/i18n/translations/en.json file to the language code you're providing (eg. fi.json for Finnish).
\n
Edit the source/shared/i18n/translations/index.ts file and:\n
\n
Import the new JSON file: import fi from \"./fi.json\";.
\n
Export the imported constant inside the default export already in that file.
\n
\n
\n
\n
Contributions
\n
This project exists thanks to all the people who contribute. [Contribute].\n
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
\n
\n\n\n\n\n\n\n\n\n
\n
Notes and Caveats
\n
\n
¹ External services like Nextcloud and ownCloud must be configured correctly to support access via the web (using WebDAV). CORS must permit access from any source.
\n
² Buttercup (including MadDev Oy) is not affiliated with any of the companies represented in screenshots or preview images.
\n
\n
",
"readmeOriginal": "
Buttercup Desktop
\n
\n
Buttercup for Desktop - Mac, Linux and Windows
\n
\n
\n
²
\n
About
\n
Buttercup is a free, open-source and cross-platform password manager, built on NodeJS with Typescript. It uses strong industry-standard encryption to protect your passwords and credentials (among other data you store in Buttercup vaults) at rest, within vault files (.bcup). Vaults can be loaded from and saved to a number of sources, such as the local filesystem, Dropbox, Google Drive or any WebDAV-enabled service (like ownCloud or Nextcloud ¹).
\n
Why you need a password manager
\n
Password management is a crucial tool when you have any online presence. It's vital that all of your accounts online use strong and unique passwords so that they're much more difficult to break in to. Even if one of your accounts are breached, having unique passwords means that the likelihood of the attacker gaining further access to your accounts portfolio is greatly reduced.
\n
Without a password manager, such as Buttercup, it would be very tedious to manage different passwords for each service. If you remember your passwords it's a good sign that they're not strong enough. Ideally you should memorise a primary password for your vault, and not know any of the account-specific passwords off the top of your head.
\n
Precautions
\n
Buttercup securely encrypts your data in protected files, but this security is only as strong as the weakest component - and this is very often the primary password used to lock and unlock your vault. Follow these basic guidelines to ensure that your vault is safe even if exposed:
\n
\n
Choose a unique password that is not used elsewhere
\n
Use a highly-varied set of different characters - such as alpha-numeric, symbols and spaces
\n
Use a long password - the longer the better
\n
Don't include words or names in the password
\n
Never share your password with anyone
\n
\n
It is very important to note that no one associated with Buttercup will ever request your personal vault or its primary password. Do not share it or any of its related details with anyone. Developers or contributors working with Buttercup may request example vaults created via your system to try and reproduce issues, but please ensure to never use your real password or store actual credentails within such vaults.
\n
Versions
\n
The current stable version is 2. We recommend upgrading if you're still on v1, as it is no longer being actively maintained. You can still browse the v1 source and documentation here.
\n
Operating Systems
\n
Buttercup Desktop is officially supported on:
\n
\n
Most linux distributions (x64), such as Ubuntu
\n
MacOS (x64, non-ARM)
\n
Windows 10 (x64)
\n
\n
Arch Linux
\n
Buttercup is also available for Arch via the AUR. This release channel is maintained by our community.
\n
Some Arch users have reported the occasional segfault - if you experience this please try this solution before creating an issue.
\n
32bit builds (x86)
\n
There are some 32bit builds available, but please note that these are not officially supported. Issues, bug reports and questions regarding 32bit binaries are not allowed and will be closed without notice. PRs to fix 32bit support are permitted.
\n
Portability
\n
Buttercup provides a portable Windows version. Look for the release with the name Buttercup-win-x64-2.0.0-portable.exe where 2.0.0 is the version and x64 is the architecture.
\n
Although not explicitly portable, both the Mac zip and Linux AppImage formats are more or less standalone. They still write to the standard config/log destinations, however.
\n
To make the most of the portable version, some enviroment variables are required:
\n
\n\n
\n
Enviroment Variables
\n
Description
\n
\n\n\n
\n
BUTTERCUP_HOME_DIR
\n
If provided buttercup will use this path for saving configrations , user settings or even temprorary files
\n
\n
\n
BUTTERCUP_CONFIG_DIR
\n
Stores user settings, not allways needed but can be used to change config location or will default to BUTTERCUP_HOME_DIR Optional: Only activates if BUTTERCUP_HOME_DIR is provided
\n
\n
\n
BUTTERCUP_TEMP_DIR
\n
Same as BUTTERCUP_CONFIG_DIR but stores temprory filesOptional: Only activates if BUTTERCUP_HOME_DIR is provided
\n
\n\n
\n
Sample ButtercupLauncher.bat for Windows portable executable
\n
\n
This example stores user settings and cache on the portable folder, but stores temprory files on the host PC.
Linux: ~/.local/state/Buttercup-nodejs or $XDG_STATE_HOME/Buttercup-nodejs
\n
Mac: ~/Library/Logs/Buttercup-nodejs
\n
Windows: %LOCALAPPDATA%\\Buttercup-nodejs\\Log
\n
\n
Note that logs for portable Windows applications will be written to the same directory that the executable resides in.
\n
Published Applications
\n
You can view the current releases on the Buttercup Desktop releases page. Under each release are some assets - the various binaries and installers for each platform Buttercup supports. When installing or downloading, make sure to pick the right operating system and architecture for your machine.
\n
Note that at this time, Buttercup only supports x64 (64 bit) machines.
\n
Linux
\n
We provide an AppImage build for Linux, because it is the most desirable format for us to release. AppImages support auto-updating, a crucial feature (we feel) for a security application. The other build types do not.
\n
Important: Buttercup uses Electron to build its desktop application, which relies on AppImageLauncher for correct integration of AppImages into the host OS. Features like Google Drive authentication and correct .desktop icon use is only performed when integrating via AppImageLauncher. We highly recommend that you install it.
\n
We won't be supporting formats like Snapcraft, deb or rpm images as they do not align with our requirements. Issues requesting these formats will be closed immediately. Discussion on topics like this should be started on other social channels.
\n
Development
\n
To begin developing features or bug-fixes for Buttercup Desktop, make sure that you first have Node v14 installed with a current version of NPM.
\n
Once cloned, make sure to install all dependencies: npm install. After that, open 2 terminals and run npm run start:renderer in one and npm run start:main in the other.
\n
Contributing
\n
There are a number of ways you can contribute to Buttercup!
\n
Features & Bug fixes
\n
We welcome pull-requests and issues that serve to better Buttercup as a platform. Please remain respecful (this is free & open source after all) with your ideas and observations, and always consider opening an issue before starting on a substantial pull request.
\n
Translations
\n
Buttercup relies on the community for translating its interfaces into languages besides English. We use British English (en_GB) as the base language, and translate into all others that our contributors are kind enough to provide.
\n
To add support for a language, make sure to add the translations for our vault UI first. After that, you can follow these instructions to add another language to the desktop application:
\n
\n
Copy the source/shared/i18n/translations/en.json file to the language code you're providing (eg. fi.json for Finnish).
\n
Edit the source/shared/i18n/translations/index.ts file and:\n
\n
Import the new JSON file: import fi from \"./fi.json\";.
\n
Export the imported constant inside the default export already in that file.
\n
\n
\n
\n
Contributions
\n
This project exists thanks to all the people who contribute. [Contribute].\n
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
\n
\n\n\n\n\n\n\n\n\n
\n
Notes and Caveats
\n
\n
¹ External services like Nextcloud and ownCloud must be configured correctly to support access via the web (using WebDAV). CORS must permit access from any source.
\n
² Buttercup (including MadDev Oy) is not affiliated with any of the companies represented in screenshots or preview images.
Catalyst is a hobby project entirely managed and written by the community. It is an Electron/Chromium based web browser that really doesn't have a purpose, the contributors are below
Catalyst is a hobby project entirely managed and written by the community. It is an Electron/Chromium based web browser that really doesn't have a purpose, the contributors are below
Build the app in a Posix environment. On Windows that is Git Bash or WSL. Make sure you have installed all the necessary tools to install and compile Node.js C++ addons.
\n
# checkout a tag\ngit checkout master\n\n# install dependencies\nnpm install\n\n# execute all checks (lint, test and build)\nnpm run all\n\n# build the application to ./dist\nnpm run build
\n
Development Setup
\n
Spin up the application for development, all strings attached:
Build the app in a Posix environment. On Windows that is Git Bash or WSL. Make sure you have installed all the necessary tools to install and compile Node.js C++ addons.
\n
# checkout a tag\ngit checkout master\n\n# install dependencies\nnpm install\n\n# execute all checks (lint, test and build)\nnpm run all\n\n# build the application to ./dist\nnpm run build
\n
Development Setup
\n
Spin up the application for development, all strings attached:
Open-source Pomodoro timer made in Electron that faithfully replicates the original technique, made in procrastination by Jordan Peters (Rollersteaam).
Drag clock numbers to set in place the set timings, and hear each click along the way. By initiating every session with a physical act, focus and flow is created through the visual and audio cues as your session has an increased sense of purpose. You may also choose to set target focuses for a block of work to determine your specific tasks. Timer completion cues and drones, as well as an optional ticking of a timer each play their part in making a pretty 'alive' timer.
\n
Latest: Version 1.1.0
\n
This version is a major quality-of-life adjustment to Chronobreak as I've used it personally over the last 6 months, as well as reading some feedback online about the app itself.
\n
General
\n
\n
A new logo has now been added (Credits to redmusic)
\n
The timer will now automatically pop up (or at least try to) on completion of a phase.
\n
The timer will now change UI when it's active.
\n
A chime will now play when a timer has been activated.
\n
The appearance of the right-click tray menu has been changed so it's more difficult to accidently discard a pomodoro.
\n
Work phase completion song has been changed because of how annoying it was before.
\n
Tick tock sound is now turned off by default. No need to turn it off each time you launch Chronobreak.
\n
Updated showcase gif to show new changes.
\n
\n
Issues
\n
\n
Pomodoro completion music has been turned down a good amount (8db) and remastered to account for the weird bass distortion.
\n
Corrected text about how much work was accomplished in a session.
\n
Changed some text on 'Small Break' phase to offer more helpful suggestions.
\n
\n
Installation
\n
Go to the Releases tab and download the latest version's .zip archive. Unzip it and run the 'Chronobreak' shortcut.
\n
Want to contribute?
\n
I would absolutely love for you to iterate on my design and improve it.
\n
By forking this project, you get your own copy of the latest version's files where you can make changes. You can then choose to make a pull request to merge those new changes. When I verify them, they'll be added officially to this project and you'll be shown as a Contributor, as well as being credited by me.
Open-source Pomodoro timer made in Electron that faithfully replicates the original technique, made in procrastination by Jordan Peters (Rollersteaam).
Drag clock numbers to set in place the set timings, and hear each click along the way. By initiating every session with a physical act, focus and flow is created through the visual and audio cues as your session has an increased sense of purpose. You may also choose to set target focuses for a block of work to determine your specific tasks. Timer completion cues and drones, as well as an optional ticking of a timer each play their part in making a pretty 'alive' timer.
\n
Latest: Version 1.1.0
\n
This version is a major quality-of-life adjustment to Chronobreak as I've used it personally over the last 6 months, as well as reading some feedback online about the app itself.
\n
General
\n
\n
A new logo has now been added (Credits to redmusic)
\n
The timer will now automatically pop up (or at least try to) on completion of a phase.
\n
The timer will now change UI when it's active.
\n
A chime will now play when a timer has been activated.
\n
The appearance of the right-click tray menu has been changed so it's more difficult to accidently discard a pomodoro.
\n
Work phase completion song has been changed because of how annoying it was before.
\n
Tick tock sound is now turned off by default. No need to turn it off each time you launch Chronobreak.
\n
Updated showcase gif to show new changes.
\n
\n
Issues
\n
\n
Pomodoro completion music has been turned down a good amount (8db) and remastered to account for the weird bass distortion.
\n
Corrected text about how much work was accomplished in a session.
\n
Changed some text on 'Small Break' phase to offer more helpful suggestions.
\n
\n
Installation
\n
Go to the Releases tab and download the latest version's .zip archive. Unzip it and run the 'Chronobreak' shortcut.
\n
Want to contribute?
\n
I would absolutely love for you to iterate on my design and improve it.
\n
By forking this project, you get your own copy of the latest version's files where you can make changes. You can then choose to make a pull request to merge those new changes. When I verify them, they'll be added officially to this project and you'll be shown as a Contributor, as well as being credited by me.
If you found this project helpful or you learned something from the source code and want to thank me, consider buying me a cup of ☕
\n
\n
\n
🐛 Bugs or Requests
\n
If you encounter any problems feel free to open an issue. If you feel the library is missing a feature, please raise a ticket on GitHub and I'll look into it. Pull request are also welcome.
If you found this project helpful or you learned something from the source code and want to thank me, consider buying me a cup of ☕
\n
\n
\n
🐛 Bugs or Requests
\n
If you encounter any problems feel free to open an issue. If you feel the library is missing a feature, please raise a ticket on GitHub and I'll look into it. Pull request are also welcome.
In order to use this source code you need to have Node.js, Git and Bower installed globally. After that you have to follow the steps below.
\n
# Clone this repository\ngit clone https://github.com/florianfe/Cells\n# Go into the repository\ncd Cells\n# Install npm dependencies\nnpm install\n# Install bower dependencies\nbower install\n# Run the app in test mode\nnpm start\n# build application for release\nnpm run-script dist
In order to use this source code you need to have Node.js, Git and Bower installed globally. After that you have to follow the steps below.
\n
# Clone this repository\ngit clone https://github.com/florianfe/Cells\n# Go into the repository\ncd Cells\n# Install npm dependencies\nnpm install\n# Install bower dependencies\nbower install\n# Run the app in test mode\nnpm start\n# build application for release\nnpm run-script dist
The aim of this project is to make us more efficient by offering a pretty cool tool : a kind of notepad for our code 😃📝
\n
Demo
\n
\n
\n
\n
Download
\n
Go the the download section of our website to download Code Notes on your OS.
\n
Contributing
\n
For the moment, the project is pretty young. But if we work together to build the \"bloc-notes\" we dream, we can build pretty things for sure ! \nSo, feel free to contribute. Follow this guide🤓
\n
Build Setup
\n
# install dependencies\nnpm install\n\n# serve with hot reload at localhost:9080\nnpm run dev\n\n# build electron application for production\nnpm run build\n\n# run unit & end-to-end tests\nnpm test\n\n# lint all JS/Vue component files in `src/`\nnpm run eslint
\n
Support Code Notes
\n
\n
Code Contributors
\n
This project exists thanks to all the people who contribute. [Contribute].\n
\n
Financial Contributors
\n
Become a financial contributor and help us sustain our community. [Contribute]
\n
Individuals
\n
\n
Organizations
\n
Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]
The aim of this project is to make us more efficient by offering a pretty cool tool : a kind of notepad for our code 😃📝
\n
Demo
\n
\n
\n
\n
Download
\n
Go the the download section of our website to download Code Notes on your OS.
\n
Contributing
\n
For the moment, the project is pretty young. But if we work together to build the \"bloc-notes\" we dream, we can build pretty things for sure ! \nSo, feel free to contribute. Follow this guide🤓
\n
Build Setup
\n
# install dependencies\nnpm install\n\n# serve with hot reload at localhost:9080\nnpm run dev\n\n# build electron application for production\nnpm run build\n\n# run unit & end-to-end tests\nnpm test\n\n# lint all JS/Vue component files in `src/`\nnpm run eslint
\n
Support Code Notes
\n
\n
Code Contributors
\n
This project exists thanks to all the people who contribute. [Contribute].\n
\n
Financial Contributors
\n
Become a financial contributor and help us sustain our community. [Contribute]
\n
Individuals
\n
\n
Organizations
\n
Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]
This repository is archived. To help us better improve the product and protect our intellectual assets, the development has been moved to Photon, a new core with closed source code base.
\n
Introduction
\n
The source code of the Neutron - the core that powers:
in Mac App Store mode: yarn electron-dev:mac-app-store.
\n
in Microsoft Store mode: yarn electron-dev:appx.
\n
in Snap mode: yarn electron-dev:snap.
\n
in Skywhale (standalone) mode: yarn electron-dev:standalone:skywhale.
\n
in Skywhale (Mac App Store) mode: yarn electron-dev:mac-app-store:skywhale.
\n
\n
\n
\n
Distribution
\n
Release as/for:
\n
\n
template: yarn release:template.
\n
Mac App Store: yarn release:mac-app-store.
\n
APPX (Microsoft Store): yarn release:appx.
\n
standalone: yarn release:standalone.
\n
\n
",
"readmeOriginal": "
Neutron
\n
Archived
\n
This repository is archived. To help us better improve the product and protect our intellectual assets, the development has been moved to Photon, a new core with closed source code base.
\n
Introduction
\n
The source code of the Neutron - the core that powers:
Cocos Engine is the framework for Cocos Creator editor. Cocos Creator is the new generation of game development tool in Cocos family, it brings a complete set of 3D features and provides an intuitive, low cost and collaboration friendly workflow to game developers.
\n
Cocos Creator inherited many good qualities and cool features from its previous versions, such as cross-platform support including instant gaming platforms like WeChat mini game, asset management, powerful animation editing, etc. Furthermore, Cocos Creator has pushed our technology to a whole new level. Our GFX implementation is designed to adapt to the latest graphic backend APIs, it already supports WebGL 2 and can be seamlessly fall back to WebGL 1, it will support Vulkan and Metal in the native build. The material system is built on our own effect format which uses GLSL 300 and can be easily adapted to lower version on low end devices. Developers can produce high performance, extremely expressive shaders with good compatibility. Along with physical based camera and lighting, high level game graphic can be easily achieved. Our pure GPU driven skeleton animation also make sure your game runs as smooth as possible. Besides all these exciting features, Cocos Creator have builtin physics support, terrain editing support, visual effect editing, ui system, TypeScript support, instant preview etc.
\n
\n
This repo is the engine part of Cocos Creator, it's mainly written in TypeScript and support users to use TypeScript or ES6 to write game logics. The engine itself is mostly self-contained, with full-fledged runtime modules including lighting, material, particle, animation, physical, UI, terrain, sound, resource and scene-graph management, etc. It supports both native and web platforms, including Windows, Mac, iOS, Android, Web. What's more exciting is that it supports rapidly expanding instant gaming platforms like WeChat Mini Game and Facebook Instant Games.
\n
The engine is naturally integrated within Cocos Creator, designed to only be the essential runtime library and not to be used independently.
Cocos Engine is the framework for Cocos Creator editor. Cocos Creator is the new generation of game development tool in Cocos family, it brings a complete set of 3D features and provides an intuitive, low cost and collaboration friendly workflow to game developers.
\n
Cocos Creator inherited many good qualities and cool features from its previous versions, such as cross-platform support including instant gaming platforms like WeChat mini game, asset management, powerful animation editing, etc. Furthermore, Cocos Creator has pushed our technology to a whole new level. Our GFX implementation is designed to adapt to the latest graphic backend APIs, it already supports WebGL 2 and can be seamlessly fall back to WebGL 1, it will support Vulkan and Metal in the native build. The material system is built on our own effect format which uses GLSL 300 and can be easily adapted to lower version on low end devices. Developers can produce high performance, extremely expressive shaders with good compatibility. Along with physical based camera and lighting, high level game graphic can be easily achieved. Our pure GPU driven skeleton animation also make sure your game runs as smooth as possible. Besides all these exciting features, Cocos Creator have builtin physics support, terrain editing support, visual effect editing, ui system, TypeScript support, instant preview etc.
\n
\n
This repo is the engine part of Cocos Creator, it's mainly written in TypeScript and support users to use TypeScript or ES6 to write game logics. The engine itself is mostly self-contained, with full-fledged runtime modules including lighting, material, particle, animation, physical, UI, terrain, sound, resource and scene-graph management, etc. It supports both native and web platforms, including Windows, Mac, iOS, Android, Web. What's more exciting is that it supports rapidly expanding instant gaming platforms like WeChat Mini Game and Facebook Instant Games.
\n
The engine is naturally integrated within Cocos Creator, designed to only be the essential runtime library and not to be used independently.
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/color-ramp-formulator\n# Go into the repository\ncd color-ramp-formulator\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting color-ramp-formulator-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Color Ramp Formulator.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/color-ramp-formulator\n# Go into the repository\ncd color-ramp-formulator\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting color-ramp-formulator-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Color Ramp Formulator.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
A cross platform tool to read & query JSON aka CLEF log files created by Serilog
\n
\n
\n
Download
\n
Releases are available on this GitHub Repository along on the Windows Store
\n
Windows
\n
\n
MacOS
\n
The metrics for the MacOS usage was too little & I don't currently build/release any other Apple apps, so my Apple Developer subscription lapsed. I assumed the application would still be available to download but that I would not be able to push any new updates. However it seems Apple just removes the listing :(
\n
For now I recommend you build it manually. In future I may do auto-updates via GitHub releases instead of app stores.
dotnet publish LogViewer.Server --runtime osx-x64 --output bin/dist/osx --configuration release -p:PublishSingleFile=true generates a self contained application for our WebAPI
\n
dotnet publish LogViewer.Server --runtime win-x64 --output bin/dist/win --configuration release -p:PublishSingleFile=true same but creates the Windows version
\n
Change terminal directory to LogViewer.Client folder
\n
Install TypeScript if missing npm install -g typescript
\n
npm install
\n
tsc --watch This will compile the TypeScript files & continue to watch them
\n
Open a new terminal in LogViewer.Client
\n
npm run start Will run the Electron app for development with Chrome DevTools open/launched
\n
\n
\n
Note: If you npm run start before you have compiled the TypeScript files then Electron will complain about not finding the entry point file. Additionally if you have also not run dotnet publish then the underlying WebAPI which we communicate with will not be running.
A cross platform tool to read & query JSON aka CLEF log files created by Serilog
\n
\n
\n
Download
\n
Releases are available on this GitHub Repository along on the Windows Store
\n
Windows
\n
\n
MacOS
\n
The metrics for the MacOS usage was too little & I don't currently build/release any other Apple apps, so my Apple Developer subscription lapsed. I assumed the application would still be available to download but that I would not be able to push any new updates. However it seems Apple just removes the listing :(
\n
For now I recommend you build it manually. In future I may do auto-updates via GitHub releases instead of app stores.
dotnet publish LogViewer.Server --runtime osx-x64 --output bin/dist/osx --configuration release -p:PublishSingleFile=true generates a self contained application for our WebAPI
\n
dotnet publish LogViewer.Server --runtime win-x64 --output bin/dist/win --configuration release -p:PublishSingleFile=true same but creates the Windows version
\n
Change terminal directory to LogViewer.Client folder
\n
Install TypeScript if missing npm install -g typescript
\n
npm install
\n
tsc --watch This will compile the TypeScript files & continue to watch them
\n
Open a new terminal in LogViewer.Client
\n
npm run start Will run the Electron app for development with Chrome DevTools open/launched
\n
\n
\n
Note: If you npm run start before you have compiled the TypeScript files then Electron will complain about not finding the entry point file. Additionally if you have also not run dotnet publish then the underlying WebAPI which we communicate with will not be running.
The Commandeer Developer IDE - Manage 30+ of the best Cloud Services
\n
\n
Available on Mac, Windows, and Linux
\n
\n
\n
Commandeer is a tool built by developers for developers that solves three things in the cloud. First, we are focused on the deployment of your IAC. Secondly, we enable you to ‘Test your Plumbing’. Lastly, Commandeer provides you the ability to easily view your data. (Manage AWS, Algolia, Slack, Twilio, SendGrid, Serverless, LocalStack, Ansible, Docker and more from your desktop)
The code base for the Commandeer App is closed-source. To make a great product, we feel that is is better to only serve out a final, polished product with every release. If you look at our Release History you will notice that we have very few minor revisions, which are usually quick patches after a major release. This is because we have a hyper-focus on quality within all our tooling, but especially with our Desktop App, as it is a tool specifically meant to help you with your day to day work.
\n
Docker Compose
\n
This is the docker compose file to install Ansible runner, LocalStack, Portainer, Serverless, and Terraform.
\n
Tank Demo
\n
A demo application for help in creating a service to run in Commandeer
The Commandeer Developer IDE - Manage 30+ of the best Cloud Services
\n
\n
Available on Mac, Windows, and Linux
\n
\n
\n
Commandeer is a tool built by developers for developers that solves three things in the cloud. First, we are focused on the deployment of your IAC. Secondly, we enable you to ‘Test your Plumbing’. Lastly, Commandeer provides you the ability to easily view your data. (Manage AWS, Algolia, Slack, Twilio, SendGrid, Serverless, LocalStack, Ansible, Docker and more from your desktop)
The code base for the Commandeer App is closed-source. To make a great product, we feel that is is better to only serve out a final, polished product with every release. If you look at our Release History you will notice that we have very few minor revisions, which are usually quick patches after a major release. This is because we have a hyper-focus on quality within all our tooling, but especially with our Desktop App, as it is a tool specifically meant to help you with your day to day work.
\n
Docker Compose
\n
This is the docker compose file to install Ansible runner, LocalStack, Portainer, Serverless, and Terraform.
\n
Tank Demo
\n
A demo application for help in creating a service to run in Commandeer
With Pin, you can bring Colorpicker to the foreground. This makes it convenient to work quickly with different\napplications at the same time.
\n\n
Picker
\n
\n
The Picker allows you to quickly retrieve a color anywhere on the screen. Whether it's on your browser, Photoshop, or\nwhatever.
\n\n
Colorsbook
\n
\n
Colorsbook is a full-fledged application. It allows you to store your colors, categorize them, and easily retrieve them.\nIt is destined to mature over time.\nCool tip: you can save color from colorpicker with CMD+S or CTRL+S!
\n\n
Shading
\n
\n
With the shades, you can find the perfect color you need. You have a chromatic bar, a natural color bar and a shadow\nbar.
\n\n
Opacity [WIP]
\n
\n
This feature is a bit special. It allows you to render the application transparent. This can be useful to see the\nappearance of a transparent color.
\n\n
Focus Mode
\n
\n
Need to compare a color or clean up the interface? This feature is for you, this will hide the sliders and make the menu\nmore transparent.
\n\n
Magic Color [WIP]
\n
This functionality is still under development. Currently, it allows you to display the first color that is in your\nclipboard. This works with hexadecimal and RGB codes
\n\n
Random
\n
A traditional feature, it allows you to display a color randomly.
\n\n
Settings
\n
\n
The settings menu allows you to customize your Colorpicker, I let you discover it yourself :)!
To build C/C++ modules to the correct Electron version, use:
\n
\n
yarn rebuild
\n
\n
To build a new version:
\n
\n
# You can build nightly & release only for your current OS.\n# i.e. you can't build a OSX version if you use a Windows\n\n# build a nightly version\nyarn nightly\n\n# build a release version\nyarn release
With Pin, you can bring Colorpicker to the foreground. This makes it convenient to work quickly with different\napplications at the same time.
\n\n
Picker
\n
\n
The Picker allows you to quickly retrieve a color anywhere on the screen. Whether it's on your browser, Photoshop, or\nwhatever.
\n\n
Colorsbook
\n
\n
Colorsbook is a full-fledged application. It allows you to store your colors, categorize them, and easily retrieve them.\nIt is destined to mature over time.\nCool tip: you can save color from colorpicker with CMD+S or CTRL+S!
\n\n
Shading
\n
\n
With the shades, you can find the perfect color you need. You have a chromatic bar, a natural color bar and a shadow\nbar.
\n\n
Opacity [WIP]
\n
\n
This feature is a bit special. It allows you to render the application transparent. This can be useful to see the\nappearance of a transparent color.
\n\n
Focus Mode
\n
\n
Need to compare a color or clean up the interface? This feature is for you, this will hide the sliders and make the menu\nmore transparent.
\n\n
Magic Color [WIP]
\n
This functionality is still under development. Currently, it allows you to display the first color that is in your\nclipboard. This works with hexadecimal and RGB codes
\n\n
Random
\n
A traditional feature, it allows you to display a color randomly.
\n\n
Settings
\n
\n
The settings menu allows you to customize your Colorpicker, I let you discover it yourself :)!
To build C/C++ modules to the correct Electron version, use:
\n
\n
yarn rebuild
\n
\n
To build a new version:
\n
\n
# You can build nightly & release only for your current OS.\n# i.e. you can't build a OSX version if you use a Windows\n\n# build a nightly version\nyarn nightly\n\n# build a release version\nyarn release
Did you know Compy the companion? They are a friendly mini browser to pin on top of any other desktop app and keep doing your things while enjoying a live stream or a youtube video.
\n
Tested services
\n
\n\n
\n
Name
\n
Works
\n
Info
\n
\n\n\n
\n
Twitch
\n
✔️
\n
Ok
\n
\n
\n
Youtube
\n
✔️
\n
Ok
\n
\n
\n
SoundCloud
\n
✔️
\n
Ok
\n
\n
\n
Netflix
\n
❌
\n
DRM problem, needs Widevine
\n
\n
\n
DisneyPlus
\n
❌
\n
DRM problem
\n
\n\n
\n
Downloads
\n
⚠️Observation: At the moments the releases are made manually, I need time to create a proper continous distribution automation routine, follow the instruction on How to Compile if you want a specific version.
Run on the target platform: Windows, MacOS or Linux (In Linux it uses AppImage)
\n
Node.js
\n
\n
Install dependencies with:
\n
npm install
\n
Run the distribution command:
\n
# For Linux\nnpm run dist:linux\n\n# For Windows\nnpm run dist:win\n\n# For mac\nnpm run dist:mac
\n
",
"readmeOriginal": "
\n
Companion
\n
\n
\n
Did you know Compy the companion? They are a friendly mini browser to pin on top of any other desktop app and keep doing your things while enjoying a live stream or a youtube video.
\n
Tested services
\n
\n\n
\n
Name
\n
Works
\n
Info
\n
\n\n\n
\n
Twitch
\n
✔️
\n
Ok
\n
\n
\n
Youtube
\n
✔️
\n
Ok
\n
\n
\n
SoundCloud
\n
✔️
\n
Ok
\n
\n
\n
Netflix
\n
❌
\n
DRM problem, needs Widevine
\n
\n
\n
DisneyPlus
\n
❌
\n
DRM problem
\n
\n\n
\n
Downloads
\n
⚠️Observation: At the moments the releases are made manually, I need time to create a proper continous distribution automation routine, follow the instruction on How to Compile if you want a specific version.
To clone and run this application, you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\n$ git clone https://github.com/amitmerchant1990/correo\n\n# Go into the repository\n$ cd correo\n\n# Install dependencies\n$ npm install\n\n# Run the app\n$ npm start
\n
Note: If you're using Linux Bash for Windows, see this guide or use node from the command prompt.
\n
Download
\n
Download the portable version of Correo for Windows, macOS and Linux from here.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
To clone and run this application, you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\n$ git clone https://github.com/amitmerchant1990/correo\n\n# Go into the repository\n$ cd correo\n\n# Install dependencies\n$ npm install\n\n# Run the app\n$ npm start
\n
Note: If you're using Linux Bash for Windows, see this guide or use node from the command prompt.
\n
Download
\n
Download the portable version of Correo for Windows, macOS and Linux from here.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
This little app for OSX help you to manager your Docker containers.
\n
\n \n \n \n \n \n
\n\n\n
You must have Docker launched to make work this app.\nIt uses shell commands using the Node.jschild_processspawn module, thanks to @SebastianRuecker.
\n
You can see the list of all your containers, whether they are active or not.
\n
\n
\n
The full circle indicates that the container is active.
\n
The empty circle indicates that it is inactive.
\n
And the round with a full wave indicates that the container is restarting.
\n
\n
When hovering over a container, you will have additional information about it, as well as buttons to turn it on, off, restart, open a console (bash or sh) and delete it.
\n
Install or Download
\n
The latest release can be dowloaded via brew cask:
This little app for OSX help you to manager your Docker containers.
\n
\n \n \n \n \n \n
\n\n\n
You must have Docker launched to make work this app.\nIt uses shell commands using the Node.jschild_processspawn module, thanks to @SebastianRuecker.
\n
You can see the list of all your containers, whether they are active or not.
\n
\n
\n
The full circle indicates that the container is active.
\n
The empty circle indicates that it is inactive.
\n
And the round with a full wave indicates that the container is restarting.
\n
\n
When hovering over a container, you will have additional information about it, as well as buttons to turn it on, off, restart, open a console (bash or sh) and delete it.
\n
Install or Download
\n
The latest release can be dowloaded via brew cask:
Like Converse.js, Converse Desktop's files are released under the Mozilla Public License version 2 (MPLv2). The gist of this license is that the covered files must stay open source, and modifications to them need to be released under the same license, but new files (for example for your own plugin) don't have to be released under the same license.
\n
However, libsignal library, which is required for OMEMO support is released under the GPLv3. The MPLv2 license is compatible with GPLv3 and when GPLv3 code is included, the entire project effectively is licensed under the GPLv3.
\n
Any custom build of Converse Desktop without libsignal included will again be licensed\nunder the MPLv2.
\n
Acknowledgements
\n
This project started as a fork of Nick Denry's Chimeverse.
Like Converse.js, Converse Desktop's files are released under the Mozilla Public License version 2 (MPLv2). The gist of this license is that the covered files must stay open source, and modifications to them need to be released under the same license, but new files (for example for your own plugin) don't have to be released under the same license.
\n
However, libsignal library, which is required for OMEMO support is released under the GPLv3. The MPLv2 license is compatible with GPLv3 and when GPLv3 code is included, the entire project effectively is licensed under the GPLv3.
\n
Any custom build of Converse Desktop without libsignal included will again be licensed\nunder the MPLv2.
\n
Acknowledgements
\n
This project started as a fork of Nick Denry's Chimeverse.
Stand alone desktop app for Win/Osx/Linux that allows connecting to a local or remote Corda node. Examine transactions, run flows and view node and network properties in a few simple clicks.
\n
Downloading the Node Explorer Binaries
\n
If you're looking to download the node explorer and get started using it; download the latest packaged release on this repo's releases page.
\n
There are install packages for Linux, OSX and Windows.
\n
To login to your Corda node, you will need to provide the:
\n
\n
Hostname (domain, IP, or localhost)
\n
Rpc Port
\n
Username
\n
Password
\n
\n
Notes: You can find the Rpc port in your node config under rpcSettings->address or as displayed in a CraSH shell instance. If you have not explicitly set a username/password project defaults are user1 and test.
\n
Full instructions for using the Node-Explorer application at the documentation
\n\n
Setting up for Node Explorer for Development
\n
Note: This repository uses sub-modules. If cloning use git clone --recursive to automatically initialize and update the submodules.
Note this project uses the node-server submodule available at https://github.com/corda/node-server this must be initialised either by passing the --recursive option when running git clone OR executing the following commands.
\n\n
git submodule init
\n
git submodule update*
\n\n
*this command must also be run after any pull request which includes updates to the submodule. An alternative is to do pull requests with the following option:\ngit pull --recurse-submodules
\n
Other submodule commands:
\n
\n
\n
Fetch and merge the latest node-server submodule code
\n
\n
git submodule update --remote
\n
\n
\n
\n
Doing work on the submodule i.e. changing files in ./server
\n
\n
submodules default to a detached head, so change to server directory and checkout a branch
\n
cd ./server
\n
git checkout master
\n
Add or commit your changes as usual.
\n
\n
\n
\n
To PULL submodule updates from server side, if there are changes on your local branch either merge or rebase with the pull
\n
\n
From MAIN project directory
\n
git submodule update --remote --merge OR
\n
git submodule update --remote --rebase
\n
\n
\n
\n
To PUSH submodule updates to server side
\n
\n
From MAIN project directory
\n
git push --recurse-submodules=on-demand
\n
\n
\n
\n
Running the Node Explorer w/o packaging
\n
To test your changes or run the node explorer without packaging you must:
Note: You must have a compiled server jar in the directory root
\n
\n
cd ./server && ./gradlew bootJar, move compiled jar in ./server/build/libs to the root.
\n
\n
Then run: npm run electron-pack
\n\n
Deploy or Run Node Explorer with Docker
\n
You can build docker images using the provided DockerFile(s). You will need to build two images, one for the Node Explorer front end ./DockerFile and another for the backend Node Server ./server/DockerFile (the Node Server DockerFile utilizes layers so you will need to extract the jar - see A Better Dockerfile)
\n
If you DO NOT want to build your own images you can simply run Node Explorer using the docker-compose.yml and with contributed images. Follow the steps below:
Provide cordapps path as /cordapps in settings tab.
\n
/cordapps\n
\n
",
"readmeOriginal": "
Node Explorer
\n
Stand alone desktop app for Win/Osx/Linux that allows connecting to a local or remote Corda node. Examine transactions, run flows and view node and network properties in a few simple clicks.
\n
Downloading the Node Explorer Binaries
\n
If you're looking to download the node explorer and get started using it; download the latest packaged release on this repo's releases page.
\n
There are install packages for Linux, OSX and Windows.
\n
To login to your Corda node, you will need to provide the:
\n
\n
Hostname (domain, IP, or localhost)
\n
Rpc Port
\n
Username
\n
Password
\n
\n
Notes: You can find the Rpc port in your node config under rpcSettings->address or as displayed in a CraSH shell instance. If you have not explicitly set a username/password project defaults are user1 and test.
\n
Full instructions for using the Node-Explorer application at the documentation
\n\n
Setting up for Node Explorer for Development
\n
Note: This repository uses sub-modules. If cloning use git clone --recursive to automatically initialize and update the submodules.
Note this project uses the node-server submodule available at https://github.com/corda/node-server this must be initialised either by passing the --recursive option when running git clone OR executing the following commands.
\n\n
git submodule init
\n
git submodule update*
\n\n
*this command must also be run after any pull request which includes updates to the submodule. An alternative is to do pull requests with the following option:\ngit pull --recurse-submodules
\n
Other submodule commands:
\n
\n
\n
Fetch and merge the latest node-server submodule code
\n
\n
git submodule update --remote
\n
\n
\n
\n
Doing work on the submodule i.e. changing files in ./server
\n
\n
submodules default to a detached head, so change to server directory and checkout a branch
\n
cd ./server
\n
git checkout master
\n
Add or commit your changes as usual.
\n
\n
\n
\n
To PULL submodule updates from server side, if there are changes on your local branch either merge or rebase with the pull
\n
\n
From MAIN project directory
\n
git submodule update --remote --merge OR
\n
git submodule update --remote --rebase
\n
\n
\n
\n
To PUSH submodule updates to server side
\n
\n
From MAIN project directory
\n
git push --recurse-submodules=on-demand
\n
\n
\n
\n
Running the Node Explorer w/o packaging
\n
To test your changes or run the node explorer without packaging you must:
Note: You must have a compiled server jar in the directory root
\n
\n
cd ./server && ./gradlew bootJar, move compiled jar in ./server/build/libs to the root.
\n
\n
Then run: npm run electron-pack
\n\n
Deploy or Run Node Explorer with Docker
\n
You can build docker images using the provided DockerFile(s). You will need to build two images, one for the Node Explorer front end ./DockerFile and another for the backend Node Server ./server/DockerFile (the Node Server DockerFile utilizes layers so you will need to extract the jar - see A Better Dockerfile)
\n
If you DO NOT want to build your own images you can simply run Node Explorer using the docker-compose.yml and with contributed images. Follow the steps below:
Cozy Drive for Desktop allows you to synchronize the files stored in\nyour Cozy with your laptop and/or desktop computer. It\nreplicates your files on your hard drive and apply changes you made on them on\nother synced devices and on your online Cozy.
\n
This is where the app is being developped. If you just want to install it,\nplease see the Download page.
Cozy Drive for Desktop allows you to synchronize the files stored in\nyour Cozy with your laptop and/or desktop computer. It\nreplicates your files on your hard drive and apply changes you made on them on\nother synced devices and on your online Cozy.
\n
This is where the app is being developped. If you just want to install it,\nplease see the Download page.
CrossOver allows you to place a customizable crosshair overlay above any application window.\nImprove your aim and gain a competitive advantage with a permanent colored crosshair to mark center screen.
Other crosshair programs offer a single style or color option, and often don't allow you to reposition them. CrossOver is a small, unintrusive crosshair overlay which has plenty of configuration options to assist with aiming and vision of your crosshair. CrossOver offers a huge improvement to many games' default crosshairs for those with colorblindness or contrast issues.
\n
Thanks to Reddit user /u/IrisFlame for the premade library of crosshairs!
\n\n
Install
\n
macOS 10.10+, Linux, and Windows 7+ are supported.
\n
Download the latest version of CrossOver from the releases page
\n
Because this app is Free and Open-Source, we cannot afford to sign our code. This means Chrome may warn about an untrusted download, this is normal. Click the arrow icon -> Keep to finish downloading. Windows Defender and Mac Gatekeeper will prevent you from running the app the first time.
\n
Windows
\n
Download the .exe file. (CrossOver-Setup-x.x.x.exe)
Position: Click and drag the crosshair to anywhere on any screen. Double-click the bullseye to center the app.
\n
Choose Crosshair: Click the bullseye ◎ to select from tons of preloaded crosshairs. Drag an image to the window to use your own custom crosshair.
\n
Customize settings using the \"gear\" icon. See Settings below.
\n
Unlock the app to quit using Control-Alt-Shift-X, then click the close icon in the top-left corner. In Windows you can right-click on the crosshair window > Close.
\n
Default Keyboard Shortcuts
\n
\n\n
\n
Description
\n
Keys
\n
\n\n\n
\n
Toggle the settings window and lock the crosshair in place
\n
Control-Alt-Shift-X
\n
\n
\n
Move the crosshair a single pixel
\n
Control-Alt-Shift-Arrows
\n
\n
\n
Quickly hide/show the application
\n
Control-Alt-Shift-H
\n
\n
\n
Center the crosshair window
\n
Control-Alt-Shift-C
\n
\n
\n
Move the crosshair to the next connected display
\n
Control-Alt-Shift-M
\n
\n
\n
Duplicate your crosshair in a shadow window
\n
Control-Alt-Shift-D
\n
\n
\n
Display the \"About\" window details
\n
Control-Alt-Shift-A
\n
\n
\n
Reset all settings and center the window
\n
Control-Alt-Shift-R
\n
\n\n
\n
Mac: the Option key is used instead of Alt.
\n
Linux: Some distributions do not center on double-click.
\n
\n \n
\n\n
Settings
\n
Crosshair
\n
Choose from over 100 real and fictional crosshairs, or use your own by dragging an image to the window. You can change the size and opacity.
\n
Reticle
\n
The reticle is the small dot or cross at the center of the sight. You can select the shape and the color, or this can be turned off.
\n
Hide on ADS
\n
Choose a mouse button to use as your ADS button. The crosshair will be hidden while this button is held down.
\n
Harware acceleration
\n
A handful of users have reported FPS issues with certain games (#70), CrossOver should not add any FPS or latency so if you experience it, toggle this setting on or off and disable Hide on ADS
\n
Start on boot
\n
You can automatically set CrossOver to start when your system starts on your gaming PC, so you're always ready to pop heads.
\n
Automatic Updates
\n
By default CrossOver will automatically keep itself updated with bug fixes and improvements. You can disable this in the settings to prevent all network requests.\nCrossOver will only connect to GitHub to download published releases and does not send or store any personal data. I'm a solo developer and you aren't important to me 🙂 I just want to game.
\n
Keybinds
\n
\n
See default keyboard shortcuts.\nAll of the keybinds can be changed or disabled except for the bind to reset all settings. Click into the input and press your bind, or press Backspace or Delete to disable a bind.
\n
\n
Keep in mind that keybinds may conflict with other programs so be careful about what you choose. There's no real mechanism for preventing you from setting two conflicting keyinds within the app, so don't do that.
\n
Duplicate crosshairs
\n
Duplicate crosshair windows use the same settings as the main window and do not support all of the features of the main window. Settings for duplicate crosshairs will not be saved and all duplicate windows will be closed if the main window is closed. Duplicate crosshairs cannot follow the mouse.
\n
Reset
\n
To reset all settings and binds to default, press Control-Alt-Shift-R
TL,DR: If you enjoy this project, and are financially able, why not donate $3?
\n
\n
This project is entirely developed, built, and maintained by one person. I've put hundreds of hours into this and I love being able to give it away for free.
\n
Problem is, downloads don't pay the bills.\nIf you would like to see specific features or improvements added to CrossOver, consider donating on OpenCollective
\n
If you like this software and want to see it improved more often, consider supporting me on Patreon or through another channel:
CrossOver allows you to place a customizable crosshair overlay above any application window.\nImprove your aim and gain a competitive advantage with a permanent colored crosshair to mark center screen.
Other crosshair programs offer a single style or color option, and often don't allow you to reposition them. CrossOver is a small, unintrusive crosshair overlay which has plenty of configuration options to assist with aiming and vision of your crosshair. CrossOver offers a huge improvement to many games' default crosshairs for those with colorblindness or contrast issues.
\n
Thanks to Reddit user /u/IrisFlame for the premade library of crosshairs!
\n\n
Install
\n
macOS 10.10+, Linux, and Windows 7+ are supported.
\n
Download the latest version of CrossOver from the releases page
\n
Because this app is Free and Open-Source, we cannot afford to sign our code. This means Chrome may warn about an untrusted download, this is normal. Click the arrow icon -> Keep to finish downloading. Windows Defender and Mac Gatekeeper will prevent you from running the app the first time.
\n
Windows
\n
Download the .exe file. (CrossOver-Setup-x.x.x.exe)
Position: Click and drag the crosshair to anywhere on any screen. Double-click the bullseye to center the app.
\n
Choose Crosshair: Click the bullseye ◎ to select from tons of preloaded crosshairs. Drag an image to the window to use your own custom crosshair.
\n
Customize settings using the \"gear\" icon. See Settings below.
\n
Unlock the app to quit using Control-Alt-Shift-X, then click the close icon in the top-left corner. In Windows you can right-click on the crosshair window > Close.
\n
Default Keyboard Shortcuts
\n
\n\n
\n
Description
\n
Keys
\n
\n\n\n
\n
Toggle the settings window and lock the crosshair in place
\n
Control-Alt-Shift-X
\n
\n
\n
Move the crosshair a single pixel
\n
Control-Alt-Shift-Arrows
\n
\n
\n
Quickly hide/show the application
\n
Control-Alt-Shift-H
\n
\n
\n
Center the crosshair window
\n
Control-Alt-Shift-C
\n
\n
\n
Move the crosshair to the next connected display
\n
Control-Alt-Shift-M
\n
\n
\n
Duplicate your crosshair in a shadow window
\n
Control-Alt-Shift-D
\n
\n
\n
Display the \"About\" window details
\n
Control-Alt-Shift-A
\n
\n
\n
Reset all settings and center the window
\n
Control-Alt-Shift-R
\n
\n\n
\n
Mac: the Option key is used instead of Alt.
\n
Linux: Some distributions do not center on double-click.
\n
\n \n
\n\n
Settings
\n
Crosshair
\n
Choose from over 100 real and fictional crosshairs, or use your own by dragging an image to the window. You can change the size and opacity.
\n
Reticle
\n
The reticle is the small dot or cross at the center of the sight. You can select the shape and the color, or this can be turned off.
\n
Hide on ADS
\n
Choose a mouse button to use as your ADS button. The crosshair will be hidden while this button is held down.
\n
Harware acceleration
\n
A handful of users have reported FPS issues with certain games (#70), CrossOver should not add any FPS or latency so if you experience it, toggle this setting on or off and disable Hide on ADS
\n
Start on boot
\n
You can automatically set CrossOver to start when your system starts on your gaming PC, so you're always ready to pop heads.
\n
Automatic Updates
\n
By default CrossOver will automatically keep itself updated with bug fixes and improvements. You can disable this in the settings to prevent all network requests.\nCrossOver will only connect to GitHub to download published releases and does not send or store any personal data. I'm a solo developer and you aren't important to me 🙂 I just want to game.
\n
Keybinds
\n
\n
See default keyboard shortcuts.\nAll of the keybinds can be changed or disabled except for the bind to reset all settings. Click into the input and press your bind, or press Backspace or Delete to disable a bind.
\n
\n
Keep in mind that keybinds may conflict with other programs so be careful about what you choose. There's no real mechanism for preventing you from setting two conflicting keyinds within the app, so don't do that.
\n
Duplicate crosshairs
\n
Duplicate crosshair windows use the same settings as the main window and do not support all of the features of the main window. Settings for duplicate crosshairs will not be saved and all duplicate windows will be closed if the main window is closed. Duplicate crosshairs cannot follow the mouse.
\n
Reset
\n
To reset all settings and binds to default, press Control-Alt-Shift-R
TL,DR: If you enjoy this project, and are financially able, why not donate $3?
\n
\n
This project is entirely developed, built, and maintained by one person. I've put hundreds of hours into this and I love being able to give it away for free.
\n
Problem is, downloads don't pay the bills.\nIf you would like to see specific features or improvements added to CrossOver, consider donating on OpenCollective
\n
If you like this software and want to see it improved more often, consider supporting me on Patreon or through another channel:
csBooks is a smart solution to manage all your PDF, EPUB and MOBI files. csBooks will automatically generate thumbnails for your books so that you can easily browse them and read them without problems. csBooks is focused on clean and beautiful interface with excellent user experience. csBooks supports PDF format of books and maintains the read status for them.
\n
Tech stack love story
\n
csBooks is made with love 💖, ElectronJS, VueJS, EpubJS, and PdfJS. It is written almost 85% in Typescript for stability and 15% in Javascript for flexibility.
\n
Installing
\n
Ubuntu Software Center or Debian x86
\n\n
Run sudo snap install csbooks.
\n
Launch csBooks using the installed csbooks command.
\n\n
\n
You can also use software center app for your linux version to install the snap file. ;)
Make it executable sudo chmod a+x csBooks_<version>.dmg
\n
Run csBooks_<version>.dmg
\n\n
Windows Users
\n\n
Open your microsoft store app and search for csBooks.
\n
Click on Install button to install the app.
\n\n
Screenshots
\n
\n\n
Epub Support
\n\n
Light and Dark Mode
\n\n
List view
\n\n
PDF File Support
\n\n
Different Themes for Reading with Comfort
\n\n
Integration of Audiobooks from Librivox
\n\n
Audio book player
\n\n
\n
Feature Suggestions
\n
To request any features, please send an email to caesiumstudio@outlook.com OR create a feature request on GitHub to keep track of it.
\n
",
"readmeOriginal": "
\n\n
\n
\n
csBooks - A Smart Book Manager
\n\n
\n \n
\n\n
csBooks is a smart solution to manage all your PDF, EPUB and MOBI files. csBooks will automatically generate thumbnails for your books so that you can easily browse them and read them without problems. csBooks is focused on clean and beautiful interface with excellent user experience. csBooks supports PDF format of books and maintains the read status for them.
\n
Tech stack love story
\n
csBooks is made with love 💖, ElectronJS, VueJS, EpubJS, and PdfJS. It is written almost 85% in Typescript for stability and 15% in Javascript for flexibility.
\n
Installing
\n
Ubuntu Software Center or Debian x86
\n\n
Run sudo snap install csbooks.
\n
Launch csBooks using the installed csbooks command.
\n\n
\n
You can also use software center app for your linux version to install the snap file. ;)
Crypter is a cross-platform crypto app that makes encryption and decryption\nconvenient while still upholding strong security. It tackles one of the weakest\nlinks in most security systems today - weak passwords. It simplifies secure\npassword generation and management and requires you to only remember one bit -\nyour MasterPass.
\n
Crypter v4.0 is a crypto\napp that can decrypt and encrypt any arbitrary data this includes files and\nfolders. This version has been released and fully tested for macOS (OSX), Linux\n(for all distros via AppImage) and Windows (32 & 64\nbit). All core modules (modules that provide the core functionality) are fully\ntested.
\n
Crypter v5.0 will save your MasterPass\nin your OS's Keychain so you won't have to enter it every time you open the app.\nTo help speed up the development please send a PR for what's left do https://github.com/HR/Crypter/milestone/4
\n
Please open an issue if you have any suggestions and add improvements via PRs!
All prebuilt binaries for all major platforms are available under\nreleases.
\n
Crypter is also on Homebrew Cask for\nmacOS. So to install it, simply run the following command in the Terminal:
\n
$ brew install --cask crypter@4.0.0
\n \n
Screens
\n
\n \n \n \n \n
\n \n
Crypto
\n
\n
One key to derive them all!
\n
\n
Crypter derives a MasterPassKey from the MasterPass obtained at setup by using\nthe PBKDF2 key derivation algorithm (see below for the specification). It\nthen uses PBKDF2 to derive a number of encryption keys from the MasterPassKey\nthat can be used for the encryption of files. This method allows for the\ngeneration of very secure encryption keys for data encryption. Moreover, by\npublicly storing the credentials used to derive the MasterPassKey and the salts\nused to derive the encryption keys, you are able to produce the encryption keys\nat will and without needing to store them securely. Your MasterPass is the only\nthing that you need to remember.
\n
Crypter never directly encrypts anything with your MasterPass. Instead, it\nderives a MasterPassKey from it, which it then uses to derive the\nencryption key used to encrypt your file. Every time a file is decrypted,\nthe encryption key is re-derived from the MasterPassKey. Every time you set the\nMasterPass through the setup or reset it through Verify MasterPass, the\nMasterPassKey is derived from the MasterPass using a newly generated set of\n(random) credentials. These credentials are used to re-derive the MasterPassKey\nevery time that Crypter is executed (i.e. the app is launched).
\n
Authentication with the AES-256-GCM symmetric block cipher is used by default.\nThis ensures that data integrity is verified on decryption and allows the app\nto detect tampering or data corruption.
\n
The following are the crypto defaults and can be found under app/config.js:
When encrypting a file, Crypter first creates a temporary hidden directory,\nnamely '.crypting'. It then encrypts the user-selected file with the crypto\ndefaults and flushes the encrypted data to a file in the directory, namely\n'data'. If it is a directory then it is compressed first (tar). It also writes\nthe public credentials to a file within the same directory, namely 'creds'.\nFinally, Crypter compresses the directory to a tar archive with the name of the\nuser-selected file and the '.crypto' extension appended to it.
\n
Decryption process
\n
The decryption process is essentially the inverse of the encryption process.\nDuring decryption, Crypter creates a temporary hidden directory named\n'.decrypting'. It then reads the credentials from the creds file and decrypts\nthe data file into the original file or directory (after decompressing it) with\nits original name and extension, as deduced from the CRYPTO file name (e.g. the\nextension for \"file.txt.crypto\" would be \".txt\").
\n
Public credentials
\n
Certain credentials are required to decrypt the encrypted data. These are\nneeded to reconstruct the particular encryption key and to verify data integrity.\nThese can be stored publicly without compromising security since it is fairly\nimpossible (by current standards) to reconstruct the encryption key without the\nMasterPass and its credentials. These credentials are stored in the creds file of\nthe CRYPTO file archive (as delineated above) in the following\nformat:
A CRYPTO file is the product of the Crypter encryption process. This file\nstores both the encrypted version of the user file and the public credentials\nneeded to encrypt and decrypt it. It has a .crypto file extension, which\nis appended to the full file name (including the extension) of the file\noriginally encrypted. The file itself is a tar archive in the following\nstructure:
\n
someFile.crypto\n├── data // the encrypted version of the user selected file\n└── creds // the public credentials used to encrypt it
\n
Reusing the same MasterPass
\n
If you attempt to decrypt a CRYPTO file by resetting to a specific\nMasterPass or setting an identical MasterPass on a different machine,\nyou will likely encounter the following error:
\n
ERROR: Unsupported state or unable to authenticate data\n
\n
This issue occurs because the MasterPassKey that was originally used to\nderive the encryption key on is not the same as the MasterPassKey\nderived with the reused MasterPass. Since Crypter uses randomness to\ngenerate secure credentials, this second set of credentials will be quite\ndifferent from the original set. As a result, the derived encryption key is\nincorrect and yields this error.
To achieve portability on Crypter, the set of MasterPassKey credentials\nneed to be exported from Crypter on the source machine1\nand imported into Crypter on the target machine2.
Please refer to the FAQs for instructions on how to perform the above steps.
\n\n
[1] The machine where the CRYPTO file was initially\nencrypted.
\n
[2] The machine where you wish to decrypt the CRYPTO\nfile.
\n \n
Security
\n
Security-first practice
\n
Crypter follows a security-first practice. This means that security is its\nhighest priority and first consideration. Thus, while Crypter seeks\nto make encryption more convenient, it always defers to maintaining\na high level of security.
\n
MasterPass
\n
Crypter never stores your MasterPass in memory or on the filesystem. This\nsubstantially improves the security of your MasterPass. You are only asked to\nenter the MasterPass when you first set, reset or verify it. Whenever you enter\nyour MasterPass, Crypter derives a MasterPassKey (using a set of generated\ncredentials) and then immediately discards the MasterPass. The MasterPassKey is\nthen securely stored in memory and used to derive the encryption keys. Since\nthese credentials are derived via a one-way function, they cannot be used in\nany way to derive the MasterPass.
\n
MasterPassKey
\n
Crypter uses a WeakMap to store the MasterPassKey inside the MasterPassKey class\nusing a closure function. This makes the MasterPassKey data held in the object\n(externally) inaccessible, consequently increasing the protection of the\nMasterPassKey. The MasterPassKey is never flushed to the filesystem and is always\nstored in (main) memory. Since JS does not give control over or allow such a\nlow-level operation as wiping memory, the program relies on the garbage\ncollection and volatility of the main memory for the permanent erasure of the\nMasterPassKey stored in memory.
\n
A decent number of iterations (see the above specifications) are used in the\nderivation of the MasterPassKey to mitigate brute-force attacks. A good\namount of iterations are also used during the derivation of the encryption\nkeys from the MasterPassKey. Consequently, performance and speed are not\nsignificantly compromised. For critical applications, you may choose to\nselect 10,000,000 iterations instead of the default number\n(in app/core/crypto.js). Please refer to\nhttp://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-132.pdf for\nmore information.
\n
Crypter generates a new set of random credentials for deriving the MasterPassKey\nevery time the MasterPass is set (at setup) or reset. Crypter employs randomness\nto mitigate brute-force attacks and thus drastically improve security.
\n \n
FAQs
\n
How do I encrypt a file or folder?
\n
If you haven't already, walk through the setup and set your MasterPass.\nTo encrypt a file or folder, first launch Crypter and verify your MasterPass.\nAfter doing so successfully, you will see the main Crypter window with an orange\narea. Here, you can simply drag-and-drop or click to select the file/folder you\nwish to encrypt. Once Crypter is done encrypting your file/folder, it will show\nyou the encryption information (i.e. the encryption key and the path of the\nencrypted file) in a new window. To encrypt another file/folder simply click the\nback arrow at the bottom left and start-over ;)
\n
How do I decrypt a CRYPTO file?
\n
\n
The following instructions assume that the CRYPTO file that you wish to\ndecrypt is being used with the same MasterPass that you set at setup and also\nthat you have not reset it since that time. If this is not the case, please refer\nto Reusing the same MasterPass.
\n
\n
To decrypt a CRYPTO file, first launch Crypter and verify your MasterPass. After\ndoing so successfully, you will see the main Crypter window with an orange area.\nHere, you can simply drag-and-drop or click to select the CRYPTO file that you\nwish to decrypt. After a few seconds, the process will complete and you will see\nsome information about the file and its original encryption in a new window. By\ndefault, the decrypted file has the same name as the name of the original file\n(i.e. the encrypted file name without the .crypto at the end).
\n
How do I encrypt multiple files?
\n
Crypter can encrypt an entire folder so you can put them in a folder or,\nalternatively, compress them into an archive (like a .zip) and then just pass\nit to Crypter ;)
\n
Why am I getting the \"Corrupted Crypter file or trying to decrypt on a different machine.\" error?
\n
This error means that either your Crypter file (i.e. the data file) is\ncorrupt/tempered, that you are on a different machine than the one originally\nused to encrypt the file or that you have previously reset your MasterPass.\nFor the last two cases, please refer to\nReusing the same MasterPass and\nAchieving portability and same MasterPass reuse.
\n
Why can't I decrypt a CRYPTO file on a different machine with the same MasterPass?
Where are my encrypted/decrypted files/folders placed?
\n
By default, every source file that you encrypt/decrypt gets encrypted/decrypted\nto the same directory where the source file is located.
\n
How can I access Crypter's preferences?
\n
You can access Crypter's preferences by either clicking on the cog icon in the\nmain Crypter window or by going to Crypter > Preferences... from the menu.
\n
How can I reset my MasterPass?
\n
You can reset your MasterPass by clicking on the \"Forgot it\" link in the Verify\nMasterPass window. This takes you to a new screen where you can enter a new, valid\nMasterPass. Once you've entered it, click the 'Reset' button and you'll be sent\nback to the verify screen where you can verify your new MasterPass.
\n
What is a valid MasterPass?
\n
Crypter will not allow you to set an invalid MasterPass. A MasterPass is valid\nwhen it adheres to the following rules:
\n
\n
It is at least 8 characters long
\n
It has at least one uppercase alphabetic character (A-Z)
\n
It has at least one lowercase alphabetic character (a-z)
\n
It has at least one numeric character (0-9)
\n
It has at least one special character ($@!%*#?&)
\n
\n
These rules are enforced via the following regular expression:
MasterPass credentials are a set of values that are required to derive the\nMasterPassKey from the MasterPass. These values have a pseudo-random element and\nare cryptographically linked. Every MasterPass that is set or reset with Crypter\nhas a unique set of MasterPass credentials. These yield a distinct MasterPassKey,\neven when a MasterPass is reused.
\n
How can I export my MasterPass credentials?
\n
To export your MasterPass credentials, you can first open Crypter's\npreferences (see above). From this screen, click on the \"Export\" button. A\ndialog will appear from which you can select the folder where you wish to export\nthe credentials. A success message will confirm a successful export. The\nexported MasterPass credentials file is always named credentials.crypter.
\n
How can I import my MasterPass credentials?
\n
To import a set of MasterPass credentials, you can first open Crypter's\npreferences (see above). From this screen, click on the \"Import\" button. A\ndialog will appear from which you can locate your credentials.crypter file.\nAfter you select it, a success message will confirm a successful import and\nyou will have to verify the MasterPass for the credentials.
\n
NOTE: while Crypter does not require the MasterPass credentials file to be\nexactly named credentials.crypter, it does require the file's contents to\nbe unaltered from when it was exported from Crypter. If it has been altered,\nthe import may fail.
\n \n
Development
\n
Crypter is developed in the \"dev\" branch, which may be unstable at times.\nThis branch should typically be used for pull requests.
\n
The \"master\" branch will always be kept stable.
\n
Configurations
\n
All major configurations that you can apply are found under app/config.js.\nThis includes changes to certain cryptography settings. Please be advised\nthat altering these may break functionality and\nportability.
\n
Install (dependencies)
\n
To install all dependencies, run:
\n
$ yarn install\n
\n
Run
\n
Since Crypter uses gulp, please install it globally if you have not already\ndone so. To start Crypter, run:
\n
$ gulp\n
\n
Test
\n
Crypter primarily uses mocha and chai for testing. Since the project uses a\nlot of JS ES6 syntax, babel is also used as a transpiler. To run all the tests,\nexecute:
\n
$ yarn test\n
\n
Crypter uses istanbul for coverage. To run test coverage, execute:
\n
$ yarn run coverage\n
\n
Build
\n
Crypter's binaries (available under releases) have been built using\nElectron. Since Crypter uses electron-builder to build binaries,\nyou must install it globally:
Permission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished todo so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.
Crypter is a cross-platform crypto app that makes encryption and decryption\nconvenient while still upholding strong security. It tackles one of the weakest\nlinks in most security systems today - weak passwords. It simplifies secure\npassword generation and management and requires you to only remember one bit -\nyour MasterPass.
\n
Crypter v4.0 is a crypto\napp that can decrypt and encrypt any arbitrary data this includes files and\nfolders. This version has been released and fully tested for macOS (OSX), Linux\n(for all distros via AppImage) and Windows (32 & 64\nbit). All core modules (modules that provide the core functionality) are fully\ntested.
\n
Crypter v5.0 will save your MasterPass\nin your OS's Keychain so you won't have to enter it every time you open the app.\nTo help speed up the development please send a PR for what's left do https://github.com/HR/Crypter/milestone/4
\n
Please open an issue if you have any suggestions and add improvements via PRs!
All prebuilt binaries for all major platforms are available under\nreleases.
\n
Crypter is also on Homebrew Cask for\nmacOS. So to install it, simply run the following command in the Terminal:
\n
$ brew install --cask crypter@4.0.0
\n \n
Screens
\n
\n \n \n \n \n
\n \n
Crypto
\n
\n
One key to derive them all!
\n
\n
Crypter derives a MasterPassKey from the MasterPass obtained at setup by using\nthe PBKDF2 key derivation algorithm (see below for the specification). It\nthen uses PBKDF2 to derive a number of encryption keys from the MasterPassKey\nthat can be used for the encryption of files. This method allows for the\ngeneration of very secure encryption keys for data encryption. Moreover, by\npublicly storing the credentials used to derive the MasterPassKey and the salts\nused to derive the encryption keys, you are able to produce the encryption keys\nat will and without needing to store them securely. Your MasterPass is the only\nthing that you need to remember.
\n
Crypter never directly encrypts anything with your MasterPass. Instead, it\nderives a MasterPassKey from it, which it then uses to derive the\nencryption key used to encrypt your file. Every time a file is decrypted,\nthe encryption key is re-derived from the MasterPassKey. Every time you set the\nMasterPass through the setup or reset it through Verify MasterPass, the\nMasterPassKey is derived from the MasterPass using a newly generated set of\n(random) credentials. These credentials are used to re-derive the MasterPassKey\nevery time that Crypter is executed (i.e. the app is launched).
\n
Authentication with the AES-256-GCM symmetric block cipher is used by default.\nThis ensures that data integrity is verified on decryption and allows the app\nto detect tampering or data corruption.
\n
The following are the crypto defaults and can be found under app/config.js:
When encrypting a file, Crypter first creates a temporary hidden directory,\nnamely '.crypting'. It then encrypts the user-selected file with the crypto\ndefaults and flushes the encrypted data to a file in the directory, namely\n'data'. If it is a directory then it is compressed first (tar). It also writes\nthe public credentials to a file within the same directory, namely 'creds'.\nFinally, Crypter compresses the directory to a tar archive with the name of the\nuser-selected file and the '.crypto' extension appended to it.
\n
Decryption process
\n
The decryption process is essentially the inverse of the encryption process.\nDuring decryption, Crypter creates a temporary hidden directory named\n'.decrypting'. It then reads the credentials from the creds file and decrypts\nthe data file into the original file or directory (after decompressing it) with\nits original name and extension, as deduced from the CRYPTO file name (e.g. the\nextension for \"file.txt.crypto\" would be \".txt\").
\n
Public credentials
\n
Certain credentials are required to decrypt the encrypted data. These are\nneeded to reconstruct the particular encryption key and to verify data integrity.\nThese can be stored publicly without compromising security since it is fairly\nimpossible (by current standards) to reconstruct the encryption key without the\nMasterPass and its credentials. These credentials are stored in the creds file of\nthe CRYPTO file archive (as delineated above) in the following\nformat:
A CRYPTO file is the product of the Crypter encryption process. This file\nstores both the encrypted version of the user file and the public credentials\nneeded to encrypt and decrypt it. It has a .crypto file extension, which\nis appended to the full file name (including the extension) of the file\noriginally encrypted. The file itself is a tar archive in the following\nstructure:
\n
someFile.crypto\n├── data // the encrypted version of the user selected file\n└── creds // the public credentials used to encrypt it
\n
Reusing the same MasterPass
\n
If you attempt to decrypt a CRYPTO file by resetting to a specific\nMasterPass or setting an identical MasterPass on a different machine,\nyou will likely encounter the following error:
\n
ERROR: Unsupported state or unable to authenticate data\n
\n
This issue occurs because the MasterPassKey that was originally used to\nderive the encryption key on is not the same as the MasterPassKey\nderived with the reused MasterPass. Since Crypter uses randomness to\ngenerate secure credentials, this second set of credentials will be quite\ndifferent from the original set. As a result, the derived encryption key is\nincorrect and yields this error.
To achieve portability on Crypter, the set of MasterPassKey credentials\nneed to be exported from Crypter on the source machine1\nand imported into Crypter on the target machine2.
Please refer to the FAQs for instructions on how to perform the above steps.
\n\n
[1] The machine where the CRYPTO file was initially\nencrypted.
\n
[2] The machine where you wish to decrypt the CRYPTO\nfile.
\n \n
Security
\n
Security-first practice
\n
Crypter follows a security-first practice. This means that security is its\nhighest priority and first consideration. Thus, while Crypter seeks\nto make encryption more convenient, it always defers to maintaining\na high level of security.
\n
MasterPass
\n
Crypter never stores your MasterPass in memory or on the filesystem. This\nsubstantially improves the security of your MasterPass. You are only asked to\nenter the MasterPass when you first set, reset or verify it. Whenever you enter\nyour MasterPass, Crypter derives a MasterPassKey (using a set of generated\ncredentials) and then immediately discards the MasterPass. The MasterPassKey is\nthen securely stored in memory and used to derive the encryption keys. Since\nthese credentials are derived via a one-way function, they cannot be used in\nany way to derive the MasterPass.
\n
MasterPassKey
\n
Crypter uses a WeakMap to store the MasterPassKey inside the MasterPassKey class\nusing a closure function. This makes the MasterPassKey data held in the object\n(externally) inaccessible, consequently increasing the protection of the\nMasterPassKey. The MasterPassKey is never flushed to the filesystem and is always\nstored in (main) memory. Since JS does not give control over or allow such a\nlow-level operation as wiping memory, the program relies on the garbage\ncollection and volatility of the main memory for the permanent erasure of the\nMasterPassKey stored in memory.
\n
A decent number of iterations (see the above specifications) are used in the\nderivation of the MasterPassKey to mitigate brute-force attacks. A good\namount of iterations are also used during the derivation of the encryption\nkeys from the MasterPassKey. Consequently, performance and speed are not\nsignificantly compromised. For critical applications, you may choose to\nselect 10,000,000 iterations instead of the default number\n(in app/core/crypto.js). Please refer to\nhttp://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-132.pdf for\nmore information.
\n
Crypter generates a new set of random credentials for deriving the MasterPassKey\nevery time the MasterPass is set (at setup) or reset. Crypter employs randomness\nto mitigate brute-force attacks and thus drastically improve security.
\n \n
FAQs
\n
How do I encrypt a file or folder?
\n
If you haven't already, walk through the setup and set your MasterPass.\nTo encrypt a file or folder, first launch Crypter and verify your MasterPass.\nAfter doing so successfully, you will see the main Crypter window with an orange\narea. Here, you can simply drag-and-drop or click to select the file/folder you\nwish to encrypt. Once Crypter is done encrypting your file/folder, it will show\nyou the encryption information (i.e. the encryption key and the path of the\nencrypted file) in a new window. To encrypt another file/folder simply click the\nback arrow at the bottom left and start-over ;)
\n
How do I decrypt a CRYPTO file?
\n
\n
The following instructions assume that the CRYPTO file that you wish to\ndecrypt is being used with the same MasterPass that you set at setup and also\nthat you have not reset it since that time. If this is not the case, please refer\nto Reusing the same MasterPass.
\n
\n
To decrypt a CRYPTO file, first launch Crypter and verify your MasterPass. After\ndoing so successfully, you will see the main Crypter window with an orange area.\nHere, you can simply drag-and-drop or click to select the CRYPTO file that you\nwish to decrypt. After a few seconds, the process will complete and you will see\nsome information about the file and its original encryption in a new window. By\ndefault, the decrypted file has the same name as the name of the original file\n(i.e. the encrypted file name without the .crypto at the end).
\n
How do I encrypt multiple files?
\n
Crypter can encrypt an entire folder so you can put them in a folder or,\nalternatively, compress them into an archive (like a .zip) and then just pass\nit to Crypter ;)
\n
Why am I getting the \"Corrupted Crypter file or trying to decrypt on a different machine.\" error?
\n
This error means that either your Crypter file (i.e. the data file) is\ncorrupt/tempered, that you are on a different machine than the one originally\nused to encrypt the file or that you have previously reset your MasterPass.\nFor the last two cases, please refer to\nReusing the same MasterPass and\nAchieving portability and same MasterPass reuse.
\n
Why can't I decrypt a CRYPTO file on a different machine with the same MasterPass?
Where are my encrypted/decrypted files/folders placed?
\n
By default, every source file that you encrypt/decrypt gets encrypted/decrypted\nto the same directory where the source file is located.
\n
How can I access Crypter's preferences?
\n
You can access Crypter's preferences by either clicking on the cog icon in the\nmain Crypter window or by going to Crypter > Preferences... from the menu.
\n
How can I reset my MasterPass?
\n
You can reset your MasterPass by clicking on the \"Forgot it\" link in the Verify\nMasterPass window. This takes you to a new screen where you can enter a new, valid\nMasterPass. Once you've entered it, click the 'Reset' button and you'll be sent\nback to the verify screen where you can verify your new MasterPass.
\n
What is a valid MasterPass?
\n
Crypter will not allow you to set an invalid MasterPass. A MasterPass is valid\nwhen it adheres to the following rules:
\n
\n
It is at least 8 characters long
\n
It has at least one uppercase alphabetic character (A-Z)
\n
It has at least one lowercase alphabetic character (a-z)
\n
It has at least one numeric character (0-9)
\n
It has at least one special character ($@!%*#?&)
\n
\n
These rules are enforced via the following regular expression:
MasterPass credentials are a set of values that are required to derive the\nMasterPassKey from the MasterPass. These values have a pseudo-random element and\nare cryptographically linked. Every MasterPass that is set or reset with Crypter\nhas a unique set of MasterPass credentials. These yield a distinct MasterPassKey,\neven when a MasterPass is reused.
\n
How can I export my MasterPass credentials?
\n
To export your MasterPass credentials, you can first open Crypter's\npreferences (see above). From this screen, click on the \"Export\" button. A\ndialog will appear from which you can select the folder where you wish to export\nthe credentials. A success message will confirm a successful export. The\nexported MasterPass credentials file is always named credentials.crypter.
\n
How can I import my MasterPass credentials?
\n
To import a set of MasterPass credentials, you can first open Crypter's\npreferences (see above). From this screen, click on the \"Import\" button. A\ndialog will appear from which you can locate your credentials.crypter file.\nAfter you select it, a success message will confirm a successful import and\nyou will have to verify the MasterPass for the credentials.
\n
NOTE: while Crypter does not require the MasterPass credentials file to be\nexactly named credentials.crypter, it does require the file's contents to\nbe unaltered from when it was exported from Crypter. If it has been altered,\nthe import may fail.
\n \n
Development
\n
Crypter is developed in the \"dev\" branch, which may be unstable at times.\nThis branch should typically be used for pull requests.
\n
The \"master\" branch will always be kept stable.
\n
Configurations
\n
All major configurations that you can apply are found under app/config.js.\nThis includes changes to certain cryptography settings. Please be advised\nthat altering these may break functionality and\nportability.
\n
Install (dependencies)
\n
To install all dependencies, run:
\n
$ yarn install\n
\n
Run
\n
Since Crypter uses gulp, please install it globally if you have not already\ndone so. To start Crypter, run:
\n
$ gulp\n
\n
Test
\n
Crypter primarily uses mocha and chai for testing. Since the project uses a\nlot of JS ES6 syntax, babel is also used as a transpiler. To run all the tests,\nexecute:
\n
$ yarn test\n
\n
Crypter uses istanbul for coverage. To run test coverage, execute:
\n
$ yarn run coverage\n
\n
Build
\n
Crypter's binaries (available under releases) have been built using\nElectron. Since Crypter uses electron-builder to build binaries,\nyou must install it globally:
Permission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished todo so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.
This project is a Web application that allow the user to check daily cases and much more information about covid-19. (Example: daily cases, daily death, daily recovery, total cases, total death, total recovery, active cases and numbers of tests). This Web application has been made with React*, Nodejs and Electronjs for desktop version (Windows, MacOS, Linux). Mobile version (iOS, Android) can use PWA by adding the website to home screen and use it just like a native app.
This project is a Web application that allow the user to check daily cases and much more information about covid-19. (Example: daily cases, daily death, daily recovery, total cases, total death, total recovery, active cases and numbers of tests). This Web application has been made with React*, Nodejs and Electronjs for desktop version (Windows, MacOS, Linux). Mobile version (iOS, Android) can use PWA by adding the website to home screen and use it just like a native app.
Get real time updates about your performance in the current match.
\n
No ads, no account needed, everything is stored locally.
\n
\n
\n
\n
\n
Installation
\n
You can download the latest stable release for your OS here. Also, you can download the latest build from the Actions tab (you have to be logged into your GitHub account).
\n
The downloaded .zip folder will contain a .cfg file and an executable file. Before installing or running the app you need to place the .cfg file into the csgo/cfg directory inside the CS:GO installation folder. If your game was running when you placed the file, make sure to restart it to apply the configuration changes.
\n
To install the Windows version, you have to run the installer file. The Linux version is an AppImage so you can just run the executable to start the app.
\n
Usage
\n
To track a match, you have to run csgo-tracker before starting the match. If you close the app before the match ends, the match stats will be incomplete.
\n
To access your match history, go to the Matches tab. A list of matches will appear on the left hand side of the screen. Then you can click on any item of the list to see your performance in each match. You can also see your performance in any round by clicking on the chart at the bottom of the screen.
\n
Repository Structure
\n
The app has two main components:
\n
\n
A REST API (restapi folder) built using Node.js and Express. It receives, processes and stores the game info into an SQLite database. It also exposes endpoints to get the matches, rounds and stats stored in the database.
\n
A web app (webapp folder) built with Vue.js. It fetches info from the REST API and displays it to the user.
\n
\n
These two components are bundled together into an Electron app (electronapp folder) in order to easily distribute them.
Get real time updates about your performance in the current match.
\n
No ads, no account needed, everything is stored locally.
\n
\n
\n
\n
\n
Installation
\n
You can download the latest stable release for your OS here. Also, you can download the latest build from the Actions tab (you have to be logged into your GitHub account).
\n
The downloaded .zip folder will contain a .cfg file and an executable file. Before installing or running the app you need to place the .cfg file into the csgo/cfg directory inside the CS:GO installation folder. If your game was running when you placed the file, make sure to restart it to apply the configuration changes.
\n
To install the Windows version, you have to run the installer file. The Linux version is an AppImage so you can just run the executable to start the app.
\n
Usage
\n
To track a match, you have to run csgo-tracker before starting the match. If you close the app before the match ends, the match stats will be incomplete.
\n
To access your match history, go to the Matches tab. A list of matches will appear on the left hand side of the screen. Then you can click on any item of the list to see your performance in each match. You can also see your performance in any round by clicking on the chart at the bottom of the screen.
\n
Repository Structure
\n
The app has two main components:
\n
\n
A REST API (restapi folder) built using Node.js and Express. It receives, processes and stores the game info into an SQLite database. It also exposes endpoints to get the matches, rounds and stats stored in the database.
\n
A web app (webapp folder) built with Vue.js. It fetches info from the REST API and displays it to the user.
\n
\n
These two components are bundled together into an Electron app (electronapp folder) in order to easily distribute them.
CSV to SQLite is an electron application designed to convert comma-separated values files to SQLite databases with column type affinities. This desktop app allows a user to convert much more quickly when compared to command-line CSV to SQLite conversion methods. Instead of creating a custom conversion script for each SQLite database, a user is able to quickly adjust the parameters for how the CSV files should be converted.
\n
Compatibility
\n
CSV to SQLite is compatible with Windows, Mac OS, and Linux.
\n
Setup
\n
# clone the repository\ngit clone https://github.com/isaiahnields/csv-to-sqlite\n\n# install dependencies\nnpm install\n\n# serve with hot reload\nnpm run dev\n\n# build electron application for production\nnpm run build
CSV to SQLite is an electron application designed to convert comma-separated values files to SQLite databases with column type affinities. This desktop app allows a user to convert much more quickly when compared to command-line CSV to SQLite conversion methods. Instead of creating a custom conversion script for each SQLite database, a user is able to quickly adjust the parameters for how the CSV files should be converted.
\n
Compatibility
\n
CSV to SQLite is compatible with Windows, Mac OS, and Linux.
\n
Setup
\n
# clone the repository\ngit clone https://github.com/isaiahnields/csv-to-sqlite\n\n# install dependencies\nnpm install\n\n# serve with hot reload\nnpm run dev\n\n# build electron application for production\nnpm run build
КриптоАРМ ГОСТ - это новый уровень развития знакомой многим программы КриптоАРМ. Новое приложение обеспечивает возможность создания и проверки электронной подписи файлов с произвольным расширением на операционных системах Windows, Linux и macOS.
\n
КриптоАРМ ГОСТ работает с сертификатами и ключами усиленной квалифицированной электронной подписи и полностью совместим с криптопровайдером СКЗИ КриптоПро CSP начиная с версии 4.0.
\n
В приложении поддержаны стандарты для электронной подписи и хеширования ГОСТ Р 34.10-2012 и ГОСТ Р 34.11-2012, которые с должны заменить прекращающие свое действие стандарты ГОСТ Р 34.10-2001 и ГОСТ Р 34.11-94.
\n
\n
Функциональные возможности
\n
\n
Электронная подпись - создание (формирование) электронной подписи в двух вариантах: совмещенной и отделенной. Формат подписи CMS (PKCS#7). Проверка электронной подписи с учетом списков отозванных сертификатов. Добавление электронной подписи к уже существующей.
\n
\n
\n
Для создания усовершенствованной подписи, формата CAdES-X Long Type 1 выберите соответсвующий пункт в Параметрах и укажите ссылку TSP службы, наприvер http://qs.cryptopro.ru/tsp/tsp.srf
\n
\n
\n
Шифрование - шифрование файлов в адрес нескольких получателей. Расшифрование данных. Архивирование результатов после шифрования.
\n
\n
\n
\n
Управление сертификатами - импорт и экспорт сертификатов. Удаление выбранных сертификатов и ключей. Установка сертификатов с токенов (с контейнеров, расположенных на отчуждаемых носителях). Отправка запросов и получение сертификатов с использованием ПАК КриптоПро УЦ 2.0. Установка сертификатов из DSS. Автоматическое построение и проверка цепочки сертификатов.
\n
\n
\n
\n
Журнал операций - журналирование выполненных пользователем операций
\n
\n
\n
\n
Документы - быстрый доступ к документам, с возможностью выполнения операций (подпись, шифрование, архивация и т.д.)
Если у вас есть вопросы по технической поддержке, то напишите нам на support@trusted.ru или откройте обращение на странице GitHub Issues
\n
",
"readmeOriginal": "
КриптоАРМ ГОСТ
\n
\n
Описание
\n
КриптоАРМ ГОСТ - это новый уровень развития знакомой многим программы КриптоАРМ. Новое приложение обеспечивает возможность создания и проверки электронной подписи файлов с произвольным расширением на операционных системах Windows, Linux и macOS.
\n
КриптоАРМ ГОСТ работает с сертификатами и ключами усиленной квалифицированной электронной подписи и полностью совместим с криптопровайдером СКЗИ КриптоПро CSP начиная с версии 4.0.
\n
В приложении поддержаны стандарты для электронной подписи и хеширования ГОСТ Р 34.10-2012 и ГОСТ Р 34.11-2012, которые с должны заменить прекращающие свое действие стандарты ГОСТ Р 34.10-2001 и ГОСТ Р 34.11-94.
\n
\n
Функциональные возможности
\n
\n
Электронная подпись - создание (формирование) электронной подписи в двух вариантах: совмещенной и отделенной. Формат подписи CMS (PKCS#7). Проверка электронной подписи с учетом списков отозванных сертификатов. Добавление электронной подписи к уже существующей.
\n
\n
\n
Для создания усовершенствованной подписи, формата CAdES-X Long Type 1 выберите соответсвующий пункт в Параметрах и укажите ссылку TSP службы, наприvер http://qs.cryptopro.ru/tsp/tsp.srf
\n
\n
\n
Шифрование - шифрование файлов в адрес нескольких получателей. Расшифрование данных. Архивирование результатов после шифрования.
\n
\n
\n
\n
Управление сертификатами - импорт и экспорт сертификатов. Удаление выбранных сертификатов и ключей. Установка сертификатов с токенов (с контейнеров, расположенных на отчуждаемых носителях). Отправка запросов и получение сертификатов с использованием ПАК КриптоПро УЦ 2.0. Установка сертификатов из DSS. Автоматическое построение и проверка цепочки сертификатов.
\n
\n
\n
\n
Журнал операций - журналирование выполненных пользователем операций
\n
\n
\n
\n
Документы - быстрый доступ к документам, с возможностью выполнения операций (подпись, шифрование, архивация и т.д.)
Ever feel JIRA's UI is hard to use? Every small action it reloads the whole page or open a brand new one. That list of subtask really doesn't let you do anything. Searching doesn't really work the way you expected and if you find the thing, you don't know how you did it.
\n
Enter DarkJ! A fluid, dark themed native desktop UI for JIRA that helps you get by your daily JIRA workflow easier. With a custom built, Angular based UI, viewing issues has never been easier. A easy-to-use tab system manages all the issues you care about in one convenient place. Live update and pinning issues let you resume work faster and a custom built search page let you search almost everything.
\n
Interested? How about heading over to the Releases page and try it out? Oh, and it's free to use by the way.
This app is a fan created work and is not an official product of JIRA or endorsed by Atlassian.
\n
Highlights
\n
\n
Angular based UI with fluid transitions and animations, no more waiting for the whole page to load.
\n
Tab based issue viewing with pin and live update, all the issues you cared about are easily within reach.
\n
Full-text based search feature that lets you search the entire JIRA, no need to fiddle with that complicated JIRA search function.
\n
Custom created controls let you do your daily tasks within DarkJ, included custom controls are:\n
\n
Assignee picker
\n
Title editor
\n
Priority changer
\n
Status changer
\n
Simple description editor
\n
\n
\n
Minimizable create issue window.
\n
Conveniently placed \"Open in JIRA\" buttons, so you can always go to your JIRA UI easily.
\n
Support multiple accounts
\n
\n
Built On
\n
\n
\n
Download & Installation
\n
Head over to the Releases page and download the latest version to get started!
\n
Windows
\n
Download the latest setup.exe and follow the installation instruction.
\n
MacOS
\n
You can download either the .zip or .dmg to use DarkJ.
\n
If you downloaded the .zip:
\n\n
Extract the content of the .zip file.
\n
You can put the extracted file in your /Applications folder for it to show up in Launchpad.
\n\n
If you downloaded the .dmg:
\n\n
Open the .dmg file.
\n
After clicking \"Agree\", drag the DarkJ icon into the Applications folder icon on screen.
\n
DarkJ should now be available in Launchpad.
\n
If there's a separate DarkJ icon appears on your Desktop, you can remove that by draggin it to the Trashcan.
\n\n
How much does this app cost?
\n
0, 🆓! It's free to use! If you like the app, maybe consider Buy me a tea, a gazillion ton of black tea went into DarkJ 😉
\n
FAQ
\n
\n
\n
It doesn't start on MacOS.
\n
Before 0.1.1, DarkJ is not signed and this has been corrected in release 0.1.1. After 0.1.1, you should be able to click \"Open\" in the warning dialog that shows up when you first start DarkJ.
\n
\n
\n
On MacOS, it asks me for permission to use Keychain Access.
\n
DarkJ uses Keychain to store you JIRA token so it will need access to your Keychain to function properly. To prevent future warning, click \"Always Allow\".
\n
\n
\n
Is my JIRA data safe?
\n
DarkJ stores your JIRA API token with your computer's built-in credential manager, on Windows, it's Credential Manager; on MacOS, it's Keychain Access.
\n
Your API token and JIRA login information is only used for authentication purposes and DarkJ will only send your JIRA data and JIRA account information to your organization's JIRA service and not anywhere else.
\n
To improve your account safety, use a dedicated API token for DarkJ.
\n
\n
\n
Is there any keyboard shortcuts?
\n
Yep, common useful shortcuts are:
\n
Ctrl + f = Open Search Page\n Ctrl + n = Open Create Issue Window\n ESC = Exit current window\n
\n
There are other shortcuts available and they are listed in the menus. For MacOS, replace Ctrl with Command.
\n
\n
\n
I am getting some timeout warning.
\n
Try clicking the \"Refresh\" button on the top-right corner or press \"F5\" to reload the app.
\n
\n
\n
I can't transition, create issue or perform some actions.
\n
Although we try to create controls for most JIRA applications, there might be fields that DarkJ doesn't support and is required to fill in during issue creation or transition.
\n
In these cases, click the \"Open External\" button (looks like a square with arrow pointing out) in the related screen and you can perform the actions with JIRA's native UI.
\n
\n
\n
Issues
\n
For any issues or feature suggestions, feel free to post in the Issues.
\n
",
"readmeOriginal": "
DarkJ
\n
\n
Ever feel JIRA's UI is hard to use? Every small action it reloads the whole page or open a brand new one. That list of subtask really doesn't let you do anything. Searching doesn't really work the way you expected and if you find the thing, you don't know how you did it.
\n
Enter DarkJ! A fluid, dark themed native desktop UI for JIRA that helps you get by your daily JIRA workflow easier. With a custom built, Angular based UI, viewing issues has never been easier. A easy-to-use tab system manages all the issues you care about in one convenient place. Live update and pinning issues let you resume work faster and a custom built search page let you search almost everything.
\n
Interested? How about heading over to the Releases page and try it out? Oh, and it's free to use by the way.
This app is a fan created work and is not an official product of JIRA or endorsed by Atlassian.
\n
Highlights
\n
\n
Angular based UI with fluid transitions and animations, no more waiting for the whole page to load.
\n
Tab based issue viewing with pin and live update, all the issues you cared about are easily within reach.
\n
Full-text based search feature that lets you search the entire JIRA, no need to fiddle with that complicated JIRA search function.
\n
Custom created controls let you do your daily tasks within DarkJ, included custom controls are:\n
\n
Assignee picker
\n
Title editor
\n
Priority changer
\n
Status changer
\n
Simple description editor
\n
\n
\n
Minimizable create issue window.
\n
Conveniently placed \"Open in JIRA\" buttons, so you can always go to your JIRA UI easily.
\n
Support multiple accounts
\n
\n
Built On
\n
\n
\n
Download & Installation
\n
Head over to the Releases page and download the latest version to get started!
\n
Windows
\n
Download the latest setup.exe and follow the installation instruction.
\n
MacOS
\n
You can download either the .zip or .dmg to use DarkJ.
\n
If you downloaded the .zip:
\n\n
Extract the content of the .zip file.
\n
You can put the extracted file in your /Applications folder for it to show up in Launchpad.
\n\n
If you downloaded the .dmg:
\n\n
Open the .dmg file.
\n
After clicking \"Agree\", drag the DarkJ icon into the Applications folder icon on screen.
\n
DarkJ should now be available in Launchpad.
\n
If there's a separate DarkJ icon appears on your Desktop, you can remove that by draggin it to the Trashcan.
\n\n
How much does this app cost?
\n
0, 🆓! It's free to use! If you like the app, maybe consider Buy me a tea, a gazillion ton of black tea went into DarkJ 😉
\n
FAQ
\n
\n
\n
It doesn't start on MacOS.
\n
Before 0.1.1, DarkJ is not signed and this has been corrected in release 0.1.1. After 0.1.1, you should be able to click \"Open\" in the warning dialog that shows up when you first start DarkJ.
\n
\n
\n
On MacOS, it asks me for permission to use Keychain Access.
\n
DarkJ uses Keychain to store you JIRA token so it will need access to your Keychain to function properly. To prevent future warning, click \"Always Allow\".
\n
\n
\n
Is my JIRA data safe?
\n
DarkJ stores your JIRA API token with your computer's built-in credential manager, on Windows, it's Credential Manager; on MacOS, it's Keychain Access.
\n
Your API token and JIRA login information is only used for authentication purposes and DarkJ will only send your JIRA data and JIRA account information to your organization's JIRA service and not anywhere else.
\n
To improve your account safety, use a dedicated API token for DarkJ.
\n
\n
\n
Is there any keyboard shortcuts?
\n
Yep, common useful shortcuts are:
\n
Ctrl + f = Open Search Page\n Ctrl + n = Open Create Issue Window\n ESC = Exit current window\n
\n
There are other shortcuts available and they are listed in the menus. For MacOS, replace Ctrl with Command.
\n
\n
\n
I am getting some timeout warning.
\n
Try clicking the \"Refresh\" button on the top-right corner or press \"F5\" to reload the app.
\n
\n
\n
I can't transition, create issue or perform some actions.
\n
Although we try to create controls for most JIRA applications, there might be fields that DarkJ doesn't support and is required to fill in during issue creation or transition.
\n
In these cases, click the \"Open External\" button (looks like a square with arrow pointing out) in the related screen and you can perform the actions with JIRA's native UI.
\n
\n
\n
Issues
\n
For any issues or feature suggestions, feel free to post in the Issues.
The DataPixels.js source code facilitates production of pixel art that is entirely generated programmatically at runtime. Additionally, the accompanying desktop application, Data Pixels Playground, may be used to write and execute code for displaying both customized and automated pixel art.
\n
DataPixels.js
\n
The DataPixels.js source code features a modular, ES2015 Class design for accessible and effortless construction of new instances. Each instance contains both HTMLCanvasElement and HTMLImageElement public accessors whose sources consist of the programmatically generated pixel art.
\n
Install
\n
DataPixels.js package can be installed as a project dependency from NPM by entering the following CLI command:
\n
npm i data-pixels\n
\n
Create
\n
The DataPixels.js constructor requires 2 arguments:
\n\n
\n
pixelData: An array containing one or more arrays of equal length, consisting of strings composed of 0-255 integer values per 24-bit RGB color channel (e.g., “255, 255, 255”) or 32-bit RGBA color channel (e.g., “255, 255, 255, 255”). Additionally, the strings may optionally contain any kind of descriptive text (e.g., “Red: 255, G - 128, 64 for Blue, Transparency = 32”) as only the number values within the string will be parsed in RGB / RGBA order. Strings that contain more than 4 numbers will throw an error.
\n
\n
\n
pixelSize: The size of each color data unit in pixels. This value represents the size of each perceived pixel that forms the pixel art.
\n
\n\n
For more information see the Example Code section below.
\n
\n
Data Pixels Playground
\n
Data Pixels Playground is a lightweight, cross-platform, desktop application for Windows, Mac and Linux, which may be used to write and execute DataPixels.js instances for previewing and testing purposes.
\n
The application features built-in example code via the Help menu as well as the ability to parse pixel data from image files to produce automatically generated code through the File > Open Image File… menu item or through drag-and-drop gestures. Additionally, compiled Data Pixels visible in the View Panel can be easily dragged, scaled and reflected using the mouse or in-app controls to help you design the perfect images for your requirements.
\n
Note: pixel color values that are automatically interpreted from image files with an embedded color space may differ slightly from the image’s intended color values.
\n
\n
Desktop Application Release Builds
\n
Creating release builds for Windows, Mac and/or Linux is a 2-step process: code compilation, then application packaging, both of which are accomplished by running command-line NPM scripts.
\n
Compilation
\n
Production code compilation can be executed by entering the following CLI command at the project root folder [~/DataPixels/ ]:
\n
npm run prod\n
\n
For more detailed information concerning code compilation please refer to Project Foundation.
\n
Packaging
\n
Application packaging can be executed for individual platforms by entering one of the following CLI commands at the project build folder [~/DataPixels/resources/build/ ]:
\n
npm run package-linux\n
\n
npm run package-mac\n
\n
npm run package-windows\n
\n
Note: In order to avoid problems with code signing and other build issues it is highly recommended to execute packaging scripts for an individual platform from its own operating system.
\n
For more detailed information concerning application packaging please refer to Electron Packager.
The DataPixels.js source code facilitates production of pixel art that is entirely generated programmatically at runtime. Additionally, the accompanying desktop application, Data Pixels Playground, may be used to write and execute code for displaying both customized and automated pixel art.
\n
DataPixels.js
\n
The DataPixels.js source code features a modular, ES2015 Class design for accessible and effortless construction of new instances. Each instance contains both HTMLCanvasElement and HTMLImageElement public accessors whose sources consist of the programmatically generated pixel art.
\n
Install
\n
DataPixels.js package can be installed as a project dependency from NPM by entering the following CLI command:
\n
npm i data-pixels\n
\n
Create
\n
The DataPixels.js constructor requires 2 arguments:
\n\n
\n
pixelData: An array containing one or more arrays of equal length, consisting of strings composed of 0-255 integer values per 24-bit RGB color channel (e.g., “255, 255, 255”) or 32-bit RGBA color channel (e.g., “255, 255, 255, 255”). Additionally, the strings may optionally contain any kind of descriptive text (e.g., “Red: 255, G - 128, 64 for Blue, Transparency = 32”) as only the number values within the string will be parsed in RGB / RGBA order. Strings that contain more than 4 numbers will throw an error.
\n
\n
\n
pixelSize: The size of each color data unit in pixels. This value represents the size of each perceived pixel that forms the pixel art.
\n
\n\n
For more information see the Example Code section below.
\n
\n
Data Pixels Playground
\n
Data Pixels Playground is a lightweight, cross-platform, desktop application for Windows, Mac and Linux, which may be used to write and execute DataPixels.js instances for previewing and testing purposes.
\n
The application features built-in example code via the Help menu as well as the ability to parse pixel data from image files to produce automatically generated code through the File > Open Image File… menu item or through drag-and-drop gestures. Additionally, compiled Data Pixels visible in the View Panel can be easily dragged, scaled and reflected using the mouse or in-app controls to help you design the perfect images for your requirements.
\n
Note: pixel color values that are automatically interpreted from image files with an embedded color space may differ slightly from the image’s intended color values.
\n
\n
Desktop Application Release Builds
\n
Creating release builds for Windows, Mac and/or Linux is a 2-step process: code compilation, then application packaging, both of which are accomplished by running command-line NPM scripts.
\n
Compilation
\n
Production code compilation can be executed by entering the following CLI command at the project root folder [~/DataPixels/ ]:
\n
npm run prod\n
\n
For more detailed information concerning code compilation please refer to Project Foundation.
\n
Packaging
\n
Application packaging can be executed for individual platforms by entering one of the following CLI commands at the project build folder [~/DataPixels/resources/build/ ]:
\n
npm run package-linux\n
\n
npm run package-mac\n
\n
npm run package-windows\n
\n
Note: In order to avoid problems with code signing and other build issues it is highly recommended to execute packaging scripts for an individual platform from its own operating system.
\n
For more detailed information concerning application packaging please refer to Electron Packager.
DBcloner is a desktop app for cloning live remote databases in your desktop.
\n
It works by dumping remote dbs and mounting them into docker containers that you can easily manage by taking snapshots, restoring previous states, re-syncronize from remote, etc.
\n
Since it's Docker based, you will never ever need to deal with any database server runtime. 100% hassle-free.
\n
DBcloner was not built with a specific use case in mind, but you can use it to make some developer experiences better, like mounting local environments, running painless dml queries, safer debugging using real data.
\n
\n
\n
Current state of development and roadmap
\n
DBcloner is currently a closed source experimental project. It's being built using Vue over Electron, and dockerode node library to communicate with the Docker API.
\n
Only PostgreSQL is supported for the moment but MySQL and MariaDB support is almost ready for the next release.
\n
By the moment there's no roadmap, but here are some features I'm planning to add in the future:
\n
\n
Continuous replication instead of full dump to reduce synchronizations times for bigger databases
\n
Secured password storage
\n
Support for creating replicas using only a dump file, without the need of a remote connection
\n
Support for NoSQL engines (MongoDB, CouchDB, etc)
\n
Support for cloud-only databases (AWS Aurora, DynamoDB are some candidates)
\n
Search box for log viewer
\n
DBeaver integration (Open running replicas on DBeaver without having to type connection parameters)
\n
\n
I'm open to feedback and ideas. If you want to say something feel free to open an issue or send me an email to felipe@leiva.io.
\n
Issues
\n
Since DBcloner is closed source by now, this repo is for issues.
\n
",
"readmeOriginal": "
DBcloner
\n
DBcloner is a desktop app for cloning live remote databases in your desktop.
\n
It works by dumping remote dbs and mounting them into docker containers that you can easily manage by taking snapshots, restoring previous states, re-syncronize from remote, etc.
\n
Since it's Docker based, you will never ever need to deal with any database server runtime. 100% hassle-free.
\n
DBcloner was not built with a specific use case in mind, but you can use it to make some developer experiences better, like mounting local environments, running painless dml queries, safer debugging using real data.
\n
\n
\n
Current state of development and roadmap
\n
DBcloner is currently a closed source experimental project. It's being built using Vue over Electron, and dockerode node library to communicate with the Docker API.
\n
Only PostgreSQL is supported for the moment but MySQL and MariaDB support is almost ready for the next release.
\n
By the moment there's no roadmap, but here are some features I'm planning to add in the future:
\n
\n
Continuous replication instead of full dump to reduce synchronizations times for bigger databases
\n
Secured password storage
\n
Support for creating replicas using only a dump file, without the need of a remote connection
\n
Support for NoSQL engines (MongoDB, CouchDB, etc)
\n
Support for cloud-only databases (AWS Aurora, DynamoDB are some candidates)
\n
Search box for log viewer
\n
DBeaver integration (Open running replicas on DBeaver without having to type connection parameters)
\n
\n
I'm open to feedback and ideas. If you want to say something feel free to open an issue or send me an email to felipe@leiva.io.
\n
Issues
\n
Since DBcloner is closed source by now, this repo is for issues.
DbGate is cross-platform database manager.\nIt's designed to be simple to use and effective, when working with more databases simultaneously.\nBut there are also many advanced features like schema compare, visual query designer, chart visualisation or batch export and import.
\n
DbGate is licensed under MIT license and is completely free.
Create issue, if you find problem in app, or you have idea to new feature. If issue already exists, you could leave comment on it, to prioritise most wanted issues.
Platform independent - runs as web application in single docker container on server, or as application using Electron platform on Linux, Windows and Mac
\n
\n\n
How to run development environment
\n
Simple variant - runs WEB application:
\n
yarn\nyarn start
\n
If you want more control, run WEB application:
\n
yarn # install NPM packages
\n
And than run following 3 commands concurrently in 3 terminals:
\n
yarn start:api # run API on port 3000\nyarn start:web # run web on port 5000\nyarn lib # watch typescript libraries and plugins modifications\n
\n
This runs API on port 3000 and web application on port 5000 \nOpen http://localhost:5000 in your browser
\n
If you want to run electron app:
\n
yarn # install NPM packages\ncd app\nyarn # install NPM packages for electron
\n
And than run following 3 commands concurrently in 3 terminals:
\n
yarn start:web # run web on port 5000 (only static JS and HTML files)\nyarn lib # watch typescript libraries and plugins modifications\nyarn start:app # run electron app\n
\n
How to run built electron app locally
\n
This mode is very similar to production run of electron app. Electron doesn't use localhost:5000.
npm install -g yo # install yeoman\nnpm install -g generator-dbgate # install dbgate generator\ncd dbgate-plugin-my-new-plugin # this directory is created by wizard, edit, what you need to change\nyarn plugin # this compiles plugin and copies it into existing DbGate installation
\n
After restarting DbGate, you could use your new plugin from DbGate.
\n
",
"readmeOriginal": "
\n\n\n\n
\n
\n
DbGate - (no)SQL database client
\n
DbGate is cross-platform database manager.\nIt's designed to be simple to use and effective, when working with more databases simultaneously.\nBut there are also many advanced features like schema compare, visual query designer, chart visualisation or batch export and import.
\n
DbGate is licensed under MIT license and is completely free.
Create issue, if you find problem in app, or you have idea to new feature. If issue already exists, you could leave comment on it, to prioritise most wanted issues.
Platform independent - runs as web application in single docker container on server, or as application using Electron platform on Linux, Windows and Mac
\n
\n\n
How to run development environment
\n
Simple variant - runs WEB application:
\n
yarn\nyarn start
\n
If you want more control, run WEB application:
\n
yarn # install NPM packages
\n
And than run following 3 commands concurrently in 3 terminals:
\n
yarn start:api # run API on port 3000\nyarn start:web # run web on port 5000\nyarn lib # watch typescript libraries and plugins modifications\n
\n
This runs API on port 3000 and web application on port 5000 \nOpen http://localhost:5000 in your browser
\n
If you want to run electron app:
\n
yarn # install NPM packages\ncd app\nyarn # install NPM packages for electron
\n
And than run following 3 commands concurrently in 3 terminals:
\n
yarn start:web # run web on port 5000 (only static JS and HTML files)\nyarn lib # watch typescript libraries and plugins modifications\nyarn start:app # run electron app\n
\n
How to run built electron app locally
\n
This mode is very similar to production run of electron app. Electron doesn't use localhost:5000.
npm install -g yo # install yeoman\nnpm install -g generator-dbgate # install dbgate generator\ncd dbgate-plugin-my-new-plugin # this directory is created by wizard, edit, what you need to change\nyarn plugin # this compiles plugin and copies it into existing DbGate installation
\n
After restarting DbGate, you could use your new plugin from DbGate.
npm install # install dependencies\nnpm run dist :os # compile the app into an binary package
\n
FAQ
\n
How to speed up downloading Electron
\n
If you’re not in Europe or the US, you might want to use a different mirror for\nelectron. You can set the ELECTRON_MIRROR variable to point to a different\nprovider:
\n
# Europe / US\n$ npm install\n\n# Asia / Oceania\n$ ELECTRON_MIRROR=\"https://npm.taobao.org/mirrors/electron/\" npm install
SourceSansPro-Regular.ttf: Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries. SIL Open Font License, 1.1
\n
SourceCodePro-Regular.ttf: Copyright 2010, 2012 Adobe Systems Incorporated. All Rights Reserved. SIL Open Font License, 1.1
npm install # install dependencies\nnpm run dist :os # compile the app into an binary package
\n
FAQ
\n
How to speed up downloading Electron
\n
If you’re not in Europe or the US, you might want to use a different mirror for\nelectron. You can set the ELECTRON_MIRROR variable to point to a different\nprovider:
\n
# Europe / US\n$ npm install\n\n# Asia / Oceania\n$ ELECTRON_MIRROR=\"https://npm.taobao.org/mirrors/electron/\" npm install
SourceSansPro-Regular.ttf: Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries. SIL Open Font License, 1.1
\n
SourceCodePro-Regular.ttf: Copyright 2010, 2012 Adobe Systems Incorporated. All Rights Reserved. SIL Open Font License, 1.1
Extract it somewhere, and then run the executable.
\n
or
\n
Package app manually from sources
\n
To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\ngit clone https://github.com/web-pal/dbglass\n# Go into the repository\ncd dbglass\n# Install dependencies and run the app\nnpm install && npm run dev
\n
App will be running in development mode at this point, in which you can:
We add some module's peerDependencies to ignore option as default for application size reduction.
\n
\n
babel-core is required by babel-loader and its size is ~19 MB
\n
node-libs-browser is required by webpack and its size is ~3MB.
\n
\n
\n
Note: If you want to use any above modules in runtime, for example: require('babel/register'), you should move them form devDependencies to dependencies.
\n
\n
Pack into an app for your platform from command line:
Extract it somewhere, and then run the executable.
\n
or
\n
Package app manually from sources
\n
To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\ngit clone https://github.com/web-pal/dbglass\n# Go into the repository\ncd dbglass\n# Install dependencies and run the app\nnpm install && npm run dev
\n
App will be running in development mode at this point, in which you can:
We add some module's peerDependencies to ignore option as default for application size reduction.
\n
\n
babel-core is required by babel-loader and its size is ~19 MB
\n
node-libs-browser is required by webpack and its size is ~3MB.
\n
\n
\n
Note: If you want to use any above modules in runtime, for example: require('babel/register'), you should move them form devDependencies to dependencies.
\n
\n
Pack into an app for your platform from command line:
Create custom computer macro shortcuts and launch them through your device.\nNo more windows switching to open the folder or website, get Deckboard to simplify them and maximize your productivity!\nWith OBS Studio and Streamlabs OBS supported, bring Deckboard as your personal streaming companion tool!\nConnect your computer to your device through local WiFi connection by entering IP address or scanning QR code.
\n
Features
\n
\n
Custom macro button with image and label
\n
Unlimited macros with 4 x 3 buttons per board (15 x 15 buttons on pro version)
\n
OBS Studio and Streamlabs OBS control for streaming (OBS Websocket plugin required)
\n
Easy connect through local WiFi connection by entering IP address or scanning QR code.
\n
\n
Available Macros
\n
\n
Keyboard macro
\n
Open website
\n
Open folder
\n
Multimedia controls (play, next track, prev track , etc)
\n
Run executable
\n
Twitch chat controls
\n
Spotify playback controls (Premium user only)
\n
Switch scenes (OBS Studio and Streamlabs OBS)
\n
Toggle resources (OBS Studio and Streamlabs OBS)
\n
Toggle streaming and recording (OBS Studio and Streamlabs OBS)
Love the app? You can support the development by purchasing PRO version or donate.
\n
\n
Privacy Policy
\n
The application Deckboard (Android), hereby defined as the app, requests the following potentially sensitive data:
\n
\n
android.permission.CAMERA
\n
\n
This potentially sensitive data is not transmitted over the internet, and is not stored by the app. It is not handled by any system other than the device the app is installed on.
\n
",
"readmeOriginal": "
\n \n
Deckboard
\n
\n \n \n \n \n
\n\n
Create custom computer macro shortcuts and launch them through your device.\nNo more windows switching to open the folder or website, get Deckboard to simplify them and maximize your productivity!\nWith OBS Studio and Streamlabs OBS supported, bring Deckboard as your personal streaming companion tool!\nConnect your computer to your device through local WiFi connection by entering IP address or scanning QR code.
\n
Features
\n
\n
Custom macro button with image and label
\n
Unlimited macros with 4 x 3 buttons per board (15 x 15 buttons on pro version)
\n
OBS Studio and Streamlabs OBS control for streaming (OBS Websocket plugin required)
\n
Easy connect through local WiFi connection by entering IP address or scanning QR code.
\n
\n
Available Macros
\n
\n
Keyboard macro
\n
Open website
\n
Open folder
\n
Multimedia controls (play, next track, prev track , etc)
\n
Run executable
\n
Twitch chat controls
\n
Spotify playback controls (Premium user only)
\n
Switch scenes (OBS Studio and Streamlabs OBS)
\n
Toggle resources (OBS Studio and Streamlabs OBS)
\n
Toggle streaming and recording (OBS Studio and Streamlabs OBS)
Love the app? You can support the development by purchasing PRO version or donate.
\n
\n
Privacy Policy
\n
The application Deckboard (Android), hereby defined as the app, requests the following potentially sensitive data:
\n
\n
android.permission.CAMERA
\n
\n
This potentially sensitive data is not transmitted over the internet, and is not stored by the app. It is not handled by any system other than the device the app is installed on.
Yu-Gi-Oh! DeckMaster is a deck editor for the Yu-Gi-Oh! trading card game.\nIt features a full deck editor and a combo editor for live probabilities.
\n
Installation
\n
You can install DeckMaster via one of our installers, or by building from source.\nVisit the documentation for instructions.
\n
Support
\n
If you encounter any issues when using DeckMaster, or simply have a suggestion on how to improve it, please open an issue in our issue tracker and I'll get back to you.
\n
Alternatively, if you do not have a GitHub account, please use the Discord server.
\n
Contributing
\n
DeckMaster is completely open-source and accepts contributions from the community.\nIf you wish to contribute to DeckMaster, please read our contributing guide.
Card data is served from the YGOProDeck database API
\n
\n
",
"readmeOriginal": "
Yu-Gi-Oh! DeckMaster
\n
\n
\n
\n
Yu-Gi-Oh! DeckMaster is a deck editor for the Yu-Gi-Oh! trading card game.\nIt features a full deck editor and a combo editor for live probabilities.
\n
Installation
\n
You can install DeckMaster via one of our installers, or by building from source.\nVisit the documentation for instructions.
\n
Support
\n
If you encounter any issues when using DeckMaster, or simply have a suggestion on how to improve it, please open an issue in our issue tracker and I'll get back to you.
\n
Alternatively, if you do not have a GitHub account, please use the Discord server.
\n
Contributing
\n
DeckMaster is completely open-source and accepts contributions from the community.\nIf you wish to contribute to DeckMaster, please read our contributing guide.
The all-in-one solution for building React Native applications.
\n
You can get started right away on your React Native project by installing Deco and creating a new project — it's fast and there's no manual setup needed. File scaffolding handles your boilerplate. Ready-made components drop right into your code. Properties are graphically editable through the property inspector. It's an entirely new way to write, tweak, and re-use code.
$ git clone git@github.com:decosoftware/deco-ide\n$ cd ./deco-ide/web\n$ npm install\n$ bundle install\n$ cd ../desktop\n$ npm install\n$ npm run copy-libs\n$ cd ../shared\n$ npm install\n$ cd ../desktop/libs/Scripts/sync-service\n$ npm install\n
Shared constants for communicating over our IPC (inter-process communication) abstraction layer.
\n
\n
Quick Start
\n
$ cd ./deco-ide\n$ ./run-dev.js\n
\n
Manual Start
\n
Occasionally it is helpful to stop and restart the desktop gulp task without stopping the web gulp task. To do this you can run the following commands...
\n
$ cd ./web\n$ npm run watch\n\n
\n
This command will:
\n\n
Watch the ./web/src directory and re-build on any changes to the code
\n
Serve the build on localhost:8080
\n\n
# Open a new terminal window\n$ cd ./desktop\n$ npm run start\n
\n
This command will:
\n\n
Build ./desktop/src and place the result into ./desktop/build/app.js
\n
Launch a local Electron binary and load in the bundle from desktop/build/app.js
\n\n
Testing a Production Build
\n
$ cd ./desktop\n$ npm run pack\n
\n
The resulting .pkg file will be output to ./dist/osx/Deco-$VERSION.pkg
\n
This build is for local testing only. When you install, the system will generate a warning about this being from an unapproved developer — this is because the package is not signed when building locally.
\n
Contributing
\n
Opening Issues
\n
Issues are intended for bug reporting and feature requests.
\n
Before you open a new issue, make sure it isn't already in the list of existing issues. If you believe you've found a new bug, it helps to include any relevant logs in your description.
\n
You can find the logs file at ~/Library/Application Support/com.decosoftware.Deco/logs.out
The all-in-one solution for building React Native applications.
\n
You can get started right away on your React Native project by installing Deco and creating a new project — it's fast and there's no manual setup needed. File scaffolding handles your boilerplate. Ready-made components drop right into your code. Properties are graphically editable through the property inspector. It's an entirely new way to write, tweak, and re-use code.
$ git clone git@github.com:decosoftware/deco-ide\n$ cd ./deco-ide/web\n$ npm install\n$ bundle install\n$ cd ../desktop\n$ npm install\n$ npm run copy-libs\n$ cd ../shared\n$ npm install\n$ cd ../desktop/libs/Scripts/sync-service\n$ npm install\n
Shared constants for communicating over our IPC (inter-process communication) abstraction layer.
\n
\n
Quick Start
\n
$ cd ./deco-ide\n$ ./run-dev.js\n
\n
Manual Start
\n
Occasionally it is helpful to stop and restart the desktop gulp task without stopping the web gulp task. To do this you can run the following commands...
\n
$ cd ./web\n$ npm run watch\n\n
\n
This command will:
\n\n
Watch the ./web/src directory and re-build on any changes to the code
\n
Serve the build on localhost:8080
\n\n
# Open a new terminal window\n$ cd ./desktop\n$ npm run start\n
\n
This command will:
\n\n
Build ./desktop/src and place the result into ./desktop/build/app.js
\n
Launch a local Electron binary and load in the bundle from desktop/build/app.js
\n\n
Testing a Production Build
\n
$ cd ./desktop\n$ npm run pack\n
\n
The resulting .pkg file will be output to ./dist/osx/Deco-$VERSION.pkg
\n
This build is for local testing only. When you install, the system will generate a warning about this being from an unapproved developer — this is because the package is not signed when building locally.
\n
Contributing
\n
Opening Issues
\n
Issues are intended for bug reporting and feature requests.
\n
Before you open a new issue, make sure it isn't already in the list of existing issues. If you believe you've found a new bug, it helps to include any relevant logs in your description.
\n
You can find the logs file at ~/Library/Application Support/com.decosoftware.Deco/logs.out
DECK's inbuilt SSL engine powered by LetsEncrypt and a supercharged proxy layer enables full HTTPS on localhost apps.
\n
Unlimited projects, multiple server configurations
\n
\n
Create any number of development environments right from your localhost. DECK's integrated marketplace lets you spin up stacks with just a click of a button. Popular web technologies such as LAMP, LEMP, MERN, MEAN, Laravel, Symfony, WordPress, Magento & many more are available out of the box
\n
Built-in Log output and Terminal
\n
\n
See real-time logs from your projects, access terminal to run shell commands, composer or npm
\n
Native support for Docker without Docker Desktop
\n
DECK has NO dependency on Docker Desktop app to run Docker containers. It just works out of the box with native support for Docker powered by Multipass on macOS & WSL 2 on Windows
DECK's inbuilt SSL engine powered by LetsEncrypt and a supercharged proxy layer enables full HTTPS on localhost apps.
\n
Unlimited projects, multiple server configurations
\n
\n
Create any number of development environments right from your localhost. DECK's integrated marketplace lets you spin up stacks with just a click of a button. Popular web technologies such as LAMP, LEMP, MERN, MEAN, Laravel, Symfony, WordPress, Magento & many more are available out of the box
\n
Built-in Log output and Terminal
\n
\n
See real-time logs from your projects, access terminal to run shell commands, composer or npm
\n
Native support for Docker without Docker Desktop
\n
DECK has NO dependency on Docker Desktop app to run Docker containers. It just works out of the box with native support for Docker powered by Multipass on macOS & WSL 2 on Windows
An Open Source electron plugin ecosystem for JS developers that makes tools for the desktop on Windows, Mac and Linux\neasily deployable and manageable as plugins.
Deskfiler is published under the GPLv3. You will find the license within the code tree.
\n
",
"readmeOriginal": "
Deskfiler
\n\n
\n
An Open Source electron plugin ecosystem for JS developers that makes tools for the desktop on Windows, Mac and Linux\neasily deployable and manageable as plugins.
\n \n DevHub: GitHub Notifications & Activities on your Desktop \n Android, iOS, Web & Desktop with 95%+ code sharing between them thanks to React Native + React Native Web \n
\n \n \n
\n\n
Why
\n
DevHub is a mobile and desktop app to help you manage GitHub Notifications and stay on top of repository activities. Save custom searches, apply filters and don't miss anything important.
brew tap devhubapp/devhub\n brew install --cask devhub\n
\n
\n
\n
\n
\n \n
Features
\n
\n
Multi-column layout: See at a quick glance everything that is going on (like TweetDeck!);
\n
Filters: Apply different filters to each column, save your custom searches to make your life easier;
\n
Inbox Zero: Mark columns as done and gain peace of mind;
\n
Notifications manager: See all the relevant information before opening the notification, like comment content, issue/pull request status, release description, etc.;
\n
Repository watcher: Keep up to date with repositories' activities without using the watch feature so your notifications don't get cluttered;
\n
User stalking: Follow user activities without using the follow button; see activities that GitHub doesn't show on your feed, like their issue comments and pushed commits;
\n
Home/Dashboard: See yours or other users' home screen (a.k.a. GitHub Dashboard), a great way to discover interesting repositories;
\n
Save for later: Save any activity or notification for later, so you don't forget to get back to them;
\n
Keyboard shortcuts: Do anything using only the keyboard (press Shift+? in the web or desktop app to see all available shortcuts);
\n
Theme support: Choose between 6 light or dark themes; Automatically detect system preference;
\n
And more!: Desktop apps, native mobile apps, open source, modern tech stack, ...
\n
\n \n
Next features:
\n
\n
Issues/PR management: Manage all issues and PRs, filter the ones related to you, take actions, etc. (vote: #110);
\n
Trending: New column type to show Trending repositories (vote: #48);
\n
Push notifications: Enable push notifications for your filtered columns on mobile and/or desktop (vote: #51);
\n
Drag & Drop: Allow moving columns using drag&drop (vote: #42)
\n
GitHub Enterprise: Support for self hosted GitHubs on local networks (vote: #165)
\n
\n
\n
Which one do you want first? Any other recommendations? Search for existing feature requests and add a 👍 reaction on them, or create a new one. Feel free to ping me (@brunolemos) if you feel it's something important.
This project is provided as is without any warranties. Use at your own risk. \nBy using DevHub you agree with its privacy policy and license.
\n
",
"readmeOriginal": "
\n \n DevHub: GitHub Notifications & Activities on your Desktop \n Android, iOS, Web & Desktop with 95%+ code sharing between them thanks to React Native + React Native Web \n
\n \n \n
\n\n
Why
\n
DevHub is a mobile and desktop app to help you manage GitHub Notifications and stay on top of repository activities. Save custom searches, apply filters and don't miss anything important.
brew tap devhubapp/devhub\n brew install --cask devhub\n
\n
\n
\n
\n
\n \n
Features
\n
\n
Multi-column layout: See at a quick glance everything that is going on (like TweetDeck!);
\n
Filters: Apply different filters to each column, save your custom searches to make your life easier;
\n
Inbox Zero: Mark columns as done and gain peace of mind;
\n
Notifications manager: See all the relevant information before opening the notification, like comment content, issue/pull request status, release description, etc.;
\n
Repository watcher: Keep up to date with repositories' activities without using the watch feature so your notifications don't get cluttered;
\n
User stalking: Follow user activities without using the follow button; see activities that GitHub doesn't show on your feed, like their issue comments and pushed commits;
\n
Home/Dashboard: See yours or other users' home screen (a.k.a. GitHub Dashboard), a great way to discover interesting repositories;
\n
Save for later: Save any activity or notification for later, so you don't forget to get back to them;
\n
Keyboard shortcuts: Do anything using only the keyboard (press Shift+? in the web or desktop app to see all available shortcuts);
\n
Theme support: Choose between 6 light or dark themes; Automatically detect system preference;
\n
And more!: Desktop apps, native mobile apps, open source, modern tech stack, ...
\n
\n \n
Next features:
\n
\n
Issues/PR management: Manage all issues and PRs, filter the ones related to you, take actions, etc. (vote: #110);
\n
Trending: New column type to show Trending repositories (vote: #48);
\n
Push notifications: Enable push notifications for your filtered columns on mobile and/or desktop (vote: #51);
\n
Drag & Drop: Allow moving columns using drag&drop (vote: #42)
\n
GitHub Enterprise: Support for self hosted GitHubs on local networks (vote: #165)
\n
\n
\n
Which one do you want first? Any other recommendations? Search for existing feature requests and add a 👍 reaction on them, or create a new one. Feel free to ping me (@brunolemos) if you feel it's something important.
Diffuse is a static web application, which means it's just HTML, CSS and Javascript. No REST API, database, or anything backend-related involved. The app uses a hash, aka. fragment, based routing system, so you don't need any special server rules for routing. You can download a pre-build web-only version of Diffuse on the releases page. Diffuse uses service workers, so you may need HTTPS for it to work smoothly in certain browsers.
\n
I should also note that some source services use OAuth, so you'll need to use your own application credentials (eg. google drive client id + secret). That said, if you're working locally you can use http://localhost:5000 or http://127.0.0.1:44999 to use the default ones, that's what the old Electron app was using.
\n
In short:
\n
\n
Diffuse is a static, serverless, web application
\n
Routing is done using hashes/fragments (eg. diffuse.sh/#/sources)
May need own OAuth application credentials for some source services
\n
\n\n
Building it yourself
\n
This project uses Nix to manage the project's environment. If you'd like to build this project without Nix, check out the dependencies in the shell.nix file (most are available through Homebrew as well).
\n
# 🍱\n\n# 1. Setup Nix environment\n# https://nixos.org/download.html\n\n# 2. Install js dependencies\njust install-deps\n\n# 3. Build, start server & watch for changes\njust
\n
",
"readmeOriginal": "
\n
A music player that connects to your cloud/distributed storage, \nin the form of a static, serverless, web application.
Diffuse is a static web application, which means it's just HTML, CSS and Javascript. No REST API, database, or anything backend-related involved. The app uses a hash, aka. fragment, based routing system, so you don't need any special server rules for routing. You can download a pre-build web-only version of Diffuse on the releases page. Diffuse uses service workers, so you may need HTTPS for it to work smoothly in certain browsers.
\n
I should also note that some source services use OAuth, so you'll need to use your own application credentials (eg. google drive client id + secret). That said, if you're working locally you can use http://localhost:5000 or http://127.0.0.1:44999 to use the default ones, that's what the old Electron app was using.
\n
In short:
\n
\n
Diffuse is a static, serverless, web application
\n
Routing is done using hashes/fragments (eg. diffuse.sh/#/sources)
May need own OAuth application credentials for some source services
\n
\n\n
Building it yourself
\n
This project uses Nix to manage the project's environment. If you'd like to build this project without Nix, check out the dependencies in the shell.nix file (most are available through Homebrew as well).
\n
# 🍱\n\n# 1. Setup Nix environment\n# https://nixos.org/download.html\n\n# 2. Install js dependencies\njust install-deps\n\n# 3. Build, start server & watch for changes\njust
DevDocs.io combines multiple API documentations in a fast, organized, and searchable interface. This is an unofficial desktop app for it.
\n
\n
Features
\n
Background behavior
\n
When closing the window, the app will continue running in the background, in the dock on macOS and the tray on Linux/Windows. Right-click the dock/tray icon and choose Quit to completely quit the app. On macOS, click the dock icon to show the window. On Linux, right-click the tray icon and choose Toggle to toggle the window. On Windows, click the tray icon to toggle the window.
\n
Build-in shortcuts
\n
devdocs the website itself has great built-in shortcuts support, just check the help page in the app.
\n
\n
Planned features
\n
Please consider sponsoring me to accelerate development.
\n
\n
Menubar mode: switch beween desktop mode and menubar mode
\n
Tabs support: allow to open documentation in a new tab
\n
\n
Global shortcut
\n
Use Ctrl+Shift+D (or Command+Shift+D on macOS) to toggle the app.
\n
Install
\n
Using Homebrew
\n
brew install --cask devdocs\n
\n
Manual download
\n
You can manually download the latest release here.
\n
Development
\n
It's really easy to develop this app, no build tools like Webpack needed here, checkout ./app to get more:
\n
npm install\n\nnpm run app\n# edit files, save, refresh and it's done.
DevDocs.io combines multiple API documentations in a fast, organized, and searchable interface. This is an unofficial desktop app for it.
\n
\n
Features
\n
Background behavior
\n
When closing the window, the app will continue running in the background, in the dock on macOS and the tray on Linux/Windows. Right-click the dock/tray icon and choose Quit to completely quit the app. On macOS, click the dock icon to show the window. On Linux, right-click the tray icon and choose Toggle to toggle the window. On Windows, click the tray icon to toggle the window.
\n
Build-in shortcuts
\n
devdocs the website itself has great built-in shortcuts support, just check the help page in the app.
\n
\n
Planned features
\n
Please consider sponsoring me to accelerate development.
\n
\n
Menubar mode: switch beween desktop mode and menubar mode
\n
Tabs support: allow to open documentation in a new tab
\n
\n
Global shortcut
\n
Use Ctrl+Shift+D (or Command+Shift+D on macOS) to toggle the app.
\n
Install
\n
Using Homebrew
\n
brew install --cask devdocs\n
\n
Manual download
\n
You can manually download the latest release here.
\n
Development
\n
It's really easy to develop this app, no build tools like Webpack needed here, checkout ./app to get more:
\n
npm install\n\nnpm run app\n# edit files, save, refresh and it's done.
display-dj is a cross platform desktop application that supports brightness adjustment for integrated laptop monitor as well as external monitors and dark mode toggle supporting Windows and MacOSX at the moment. Adjustment brightness will be quicker and does not require tinkering with the external monitor controls.
As of right now, it requires physical controls to change the brightness of external monitors. It is very time consuming and quirky to get the brightness notch just right. Also some external monitors bury the brightness under sub-menus within the on screen display, which requires a lot of mental strength to figure out.
\n
There are applications out there that do these things: adjust external monitor brightness, integrated laptop monitor brightness and dark mode, but they are completely different apps and require more context switching. These applications sometimes don't support shortcuts or key bindings. And most importantly none of them are cross platform and only support either Windows or Mac OSX.
\n
Windows and Mac OSX have their own built in controls that allow you to adjust brightness and dark mode. But this built-in option only works for integrated displays such as your laptop monitors or certain proprietary monitors such as Apple Displays. The built-in solution does not work for third party displays.
\n
Another issue with built-in solution is sometimes the user interface is not intuitive and requires extra clicks and navigations to get to because they are buried deep inside a set of nested menus.
The challenge of work from home in the last 2 years with 2 young toddlers is that they can charge into your room any time of the day and playing with the light switch. This is my defense mechanism for those sudden changes in light intensity. I can toggle between 2 different modes rather quickly with a key stroke: going to the dark side vs going to the light side of the force.
\n
\n
\n
Screenshots / Demo
\n
Windows 11
\n
\n
\n
Mac OSX Monterey
\n
\n
Supported Platforms
\n
The following version of OS has been tested and working.
\n
\n
Windows (tested on Windows 11)
\n
Mac OSX (tested on Monterey)
\n
\n
Features / Configs / Preferences
\n
Renaming the display
\n
By default, we will give each display a name. You can rename the display to something more friendly by clicking on the name of the display and finish by hitting Enter key.
\n
\n
\n
\n
Monitor Configs
\n
At the moment, there is no UI to modify the configs. This can also be accessed via right clicking the tray icon of display-dj and choose Open Monitor Configs.
\n
\n
disabled: flag can be used to hide a monitor off the list
\n
sortOrder: flag can be used to change which monitor showing up first
Below are default Key Bindings, you can modify the default keybinding in preferences.json, refer to the sample preferences file section.
\n
Key Bindings' command can be an array in case you want to mix and match multiple commands. In this case, Shift + F1, minimize brightness and also turn off darkmode.
\n
\n\n
\n
Keys
\n
Command
\n
\n\n\n
\n
Shift + Escape
\n
Toggle Dark Mode
\n
\n
\n
Shift + F1
\n
Change brightness to 10% and turn dark mode off
\n
\n
\n
Shift + F2
\n
Change brightness to 100% and turn dark mode on
\n
\n
\n
Shift + F3
\n
Change brightness to 0%
\n
\n
\n
Shift + F4
\n
Change brightness to 50%
\n
\n
\n
Shift + F5
\n
Change brightness to 100%
\n
\n
\n
Shift + F6
\n
Change volume to 0% (Muted)
\n
\n
\n
Shift + F7
\n
Change volume to 100%
\n
\n\n
\n
Preferences / Key Bindings
\n
At the moment, there is no UI to modify the preferences. This can also be accessed via right clicking the tray icon of display-dj and choose Open App Preferences.
\n
\n
showIndividualDisplays: flag can be used to show a single brightness control for all displays or individual ones.
\n
brightnessDelta: a delta value / step value for brightness adjustment (applicable only for keyboard shortcut).
\n
keyBindings: a list of shortcuts / bindings to adjust brightness based on the keyboard shortcuts. Below is a list of all supported commands. Refer to this list for a set of all supported commands
\n
\n
# brightness commands\ncommand/changeBrightness/down\ncommand/changeBrightness/up\ncommand/changeBrightness/0\ncommand/changeBrightness/10\ncommand/changeBrightness/50\ncommand/changeBrightness/100\n\n# dark mode commands\ncommand/changeDarkMode/toggle\ncommand/changeDarkMode/dark\ncommand/changeDarkMode/light\n\n# volumes commands\ncommand/changeVolume/0\ncommand/changeVolume/50\ncommand/changeVolume/100
Support for vertical task bar or top placement taskbar.
\n
Properly run the app on startup.
\n
Change brightness based on time of day.
\n
Change dark mode based on time of day.
\n
Allow creation of display profiles so the profile can be selected from context menu or a shortcut. This profile should apply all individual display brightness.
\n
Shortcut key for dark mode change.
\n
Keyboard shortcuts to be dynamically managed in the preference file.
\n
Windows build - Properly package the build as exe file instead of plain zipped files.
\n
Mac build - Properly package the build as dmg file instead of plain zipped files.
\n
Properly hookup the icons for mac.
\n
Properly set up CI/CD pipeline for releases and main page content.
\n
MacOSX - Fix an issue where the positioning of the app is misplaced in the main display regardless of mouse click.
\n
Support changing contrast (is this possible?).
\n
\n
Contributing?
\n
If you are interested in contributing, you can refer to this doc to get started
Due to the complexity and quirks of ddc/ci protocol, unfortunately it's nearly impossible to support every single monitor out there. So if you run into issue where this app doesn't work, we will not guarantee support.
\n
Suggestion?
\n
Use the following link to file a bug or a suggestion. Please indicate which OS and monitor.
display-dj is a cross platform desktop application that supports brightness adjustment for integrated laptop monitor as well as external monitors and dark mode toggle supporting Windows and MacOSX at the moment. Adjustment brightness will be quicker and does not require tinkering with the external monitor controls.
As of right now, it requires physical controls to change the brightness of external monitors. It is very time consuming and quirky to get the brightness notch just right. Also some external monitors bury the brightness under sub-menus within the on screen display, which requires a lot of mental strength to figure out.
\n
There are applications out there that do these things: adjust external monitor brightness, integrated laptop monitor brightness and dark mode, but they are completely different apps and require more context switching. These applications sometimes don't support shortcuts or key bindings. And most importantly none of them are cross platform and only support either Windows or Mac OSX.
\n
Windows and Mac OSX have their own built in controls that allow you to adjust brightness and dark mode. But this built-in option only works for integrated displays such as your laptop monitors or certain proprietary monitors such as Apple Displays. The built-in solution does not work for third party displays.
\n
Another issue with built-in solution is sometimes the user interface is not intuitive and requires extra clicks and navigations to get to because they are buried deep inside a set of nested menus.
The challenge of work from home in the last 2 years with 2 young toddlers is that they can charge into your room any time of the day and playing with the light switch. This is my defense mechanism for those sudden changes in light intensity. I can toggle between 2 different modes rather quickly with a key stroke: going to the dark side vs going to the light side of the force.
\n
\n
\n
Screenshots / Demo
\n
Windows 11
\n
\n
\n
Mac OSX Monterey
\n
\n
Supported Platforms
\n
The following version of OS has been tested and working.
\n
\n
Windows (tested on Windows 11)
\n
Mac OSX (tested on Monterey)
\n
\n
Features / Configs / Preferences
\n
Renaming the display
\n
By default, we will give each display a name. You can rename the display to something more friendly by clicking on the name of the display and finish by hitting Enter key.
\n
\n
\n
\n
Monitor Configs
\n
At the moment, there is no UI to modify the configs. This can also be accessed via right clicking the tray icon of display-dj and choose Open Monitor Configs.
\n
\n
disabled: flag can be used to hide a monitor off the list
\n
sortOrder: flag can be used to change which monitor showing up first
Below are default Key Bindings, you can modify the default keybinding in preferences.json, refer to the sample preferences file section.
\n
Key Bindings' command can be an array in case you want to mix and match multiple commands. In this case, Shift + F1, minimize brightness and also turn off darkmode.
\n
\n\n
\n
Keys
\n
Command
\n
\n\n\n
\n
Shift + Escape
\n
Toggle Dark Mode
\n
\n
\n
Shift + F1
\n
Change brightness to 10% and turn dark mode off
\n
\n
\n
Shift + F2
\n
Change brightness to 100% and turn dark mode on
\n
\n
\n
Shift + F3
\n
Change brightness to 0%
\n
\n
\n
Shift + F4
\n
Change brightness to 50%
\n
\n
\n
Shift + F5
\n
Change brightness to 100%
\n
\n
\n
Shift + F6
\n
Change volume to 0% (Muted)
\n
\n
\n
Shift + F7
\n
Change volume to 100%
\n
\n\n
\n
Preferences / Key Bindings
\n
At the moment, there is no UI to modify the preferences. This can also be accessed via right clicking the tray icon of display-dj and choose Open App Preferences.
\n
\n
showIndividualDisplays: flag can be used to show a single brightness control for all displays or individual ones.
\n
brightnessDelta: a delta value / step value for brightness adjustment (applicable only for keyboard shortcut).
\n
keyBindings: a list of shortcuts / bindings to adjust brightness based on the keyboard shortcuts. Below is a list of all supported commands. Refer to this list for a set of all supported commands
\n
\n
# brightness commands\ncommand/changeBrightness/down\ncommand/changeBrightness/up\ncommand/changeBrightness/0\ncommand/changeBrightness/10\ncommand/changeBrightness/50\ncommand/changeBrightness/100\n\n# dark mode commands\ncommand/changeDarkMode/toggle\ncommand/changeDarkMode/dark\ncommand/changeDarkMode/light\n\n# volumes commands\ncommand/changeVolume/0\ncommand/changeVolume/50\ncommand/changeVolume/100
Support for vertical task bar or top placement taskbar.
\n
Properly run the app on startup.
\n
Change brightness based on time of day.
\n
Change dark mode based on time of day.
\n
Allow creation of display profiles so the profile can be selected from context menu or a shortcut. This profile should apply all individual display brightness.
\n
Shortcut key for dark mode change.
\n
Keyboard shortcuts to be dynamically managed in the preference file.
\n
Windows build - Properly package the build as exe file instead of plain zipped files.
\n
Mac build - Properly package the build as dmg file instead of plain zipped files.
\n
Properly hookup the icons for mac.
\n
Properly set up CI/CD pipeline for releases and main page content.
\n
MacOSX - Fix an issue where the positioning of the app is misplaced in the main display regardless of mouse click.
\n
Support changing contrast (is this possible?).
\n
\n
Contributing?
\n
If you are interested in contributing, you can refer to this doc to get started
Due to the complexity and quirks of ddc/ci protocol, unfortunately it's nearly impossible to support every single monitor out there. So if you run into issue where this app doesn't work, we will not guarantee support.
\n
Suggestion?
\n
Use the following link to file a bug or a suggestion. Please indicate which OS and monitor.
An application can install many convenient tools for platforms of OS X 、Windows and Linux .\nIt can get more and more convenience tool in the future and no need reinstall Application.
You will see your packages in Package Store page after new store config saved.
\n
\n
\n
",
"readmeOriginal": "
\n
DN Tool Container
\n
\n
An application can install many convenient tools for platforms of OS X 、Windows and Linux .\nIt can get more and more convenience tool in the future and no need reinstall Application.
Better access to computer hardware (microphone and speakers)
\n
Improved system notifications when a conversation is offered
\n
Support for click-to-call (tel:+18889107555)
\n
Busylight support
\n
Auto-update and installation of new versions in the background
\n
Copy/paste support
\n
Native menu
\n
Prevent system sleep
\n
\n
About:
\n
Dixa is a born global customer service tech company on a mission to solve customer chaos, eliminate bad customer service and build strong bonds between companies and their customers - much like the connection between friends.
\n
Our software eliminates chaos caused by using disconnected systems and unifies the customer experience across email, chat, messaging and phone.
\n
Dixa has customers in 20+ countries and has rocketed from new entrant to the #1 ranked SaaS Contact Center platform in just over 1 year.
Better access to computer hardware (microphone and speakers)
\n
Improved system notifications when a conversation is offered
\n
Support for click-to-call (tel:+18889107555)
\n
Busylight support
\n
Auto-update and installation of new versions in the background
\n
Copy/paste support
\n
Native menu
\n
Prevent system sleep
\n
\n
About:
\n
Dixa is a born global customer service tech company on a mission to solve customer chaos, eliminate bad customer service and build strong bonds between companies and their customers - much like the connection between friends.
\n
Our software eliminates chaos caused by using disconnected systems and unifies the customer experience across email, chat, messaging and phone.
\n
Dixa has customers in 20+ countries and has rocketed from new entrant to the #1 ranked SaaS Contact Center platform in just over 1 year.
Domain Book app, an easy and straightforward way to monitor your domains' expiration date.\nIt is like a phonebook for your domains.
\n
\n
You can buy the macOS version via AppSumo for only $10 down from $14.99.
\n
Features
\n
One Platforms
\n
You can run the application on macOS (intel/M1).
\n
Simple and Easy to use
\n
A simple UI to give you the critical information about your domains, especially when you have many domains with various registrars. All you need to do is adding your domain, and the app will get all the information required from the Internet. We support a long list of domains WHOIS servers. Also, you can refresh the domain information at any time.
\n
\n
Modify the local domain information
\n
If for some reason, we were not able to get a piece of accurate information about your domains, you can use the edit screen to correct this information. Also, you can add notes and tags to help remember anything about a specific domain name.
\n
Once you modified the expiration date, a red dot will be shown near the domain to identify what you have changed. Meanwhile, if you added notes, a small page icon will appear which you can click to read these notes.
\n
\n
\n
Auto import
\n
By utilizing the powerful API that each registrar provide, we were able to provide this feature which allows you to auto import the list of your domains directly without the need to add them manually. Right now we only support four companies, and we are planning to add more shortly.
\n
\n
What will expire soon?
\n
We all know how it feels when you forget to renew your domain, that's why we have added two menus to our application, one to show you a list of all the domains which will expire in 30 days, the other one display the domains which will expire in 60 days. This way you will know when your domain will be renewed, no surprise payments anymore.
\n
\n
More info
\n
More info about the application can be seen at Darawish website.
\n
",
"readmeOriginal": "
Domain book application
\n
Domain Book app, an easy and straightforward way to monitor your domains' expiration date.\nIt is like a phonebook for your domains.
\n
\n
You can buy the macOS version via AppSumo for only $10 down from $14.99.
\n
Features
\n
One Platforms
\n
You can run the application on macOS (intel/M1).
\n
Simple and Easy to use
\n
A simple UI to give you the critical information about your domains, especially when you have many domains with various registrars. All you need to do is adding your domain, and the app will get all the information required from the Internet. We support a long list of domains WHOIS servers. Also, you can refresh the domain information at any time.
\n
\n
Modify the local domain information
\n
If for some reason, we were not able to get a piece of accurate information about your domains, you can use the edit screen to correct this information. Also, you can add notes and tags to help remember anything about a specific domain name.
\n
Once you modified the expiration date, a red dot will be shown near the domain to identify what you have changed. Meanwhile, if you added notes, a small page icon will appear which you can click to read these notes.
\n
\n
\n
Auto import
\n
By utilizing the powerful API that each registrar provide, we were able to provide this feature which allows you to auto import the list of your domains directly without the need to add them manually. Right now we only support four companies, and we are planning to add more shortly.
\n
\n
What will expire soon?
\n
We all know how it feels when you forget to renew your domain, that's why we have added two menus to our application, one to show you a list of all the domains which will expire in 30 days, the other one display the domains which will expire in 60 days. This way you will know when your domain will be renewed, no surprise payments anymore.
\n
\n
More info
\n
More info about the application can be seen at Darawish website.
DomTerm - a terminal emulator and console using DOM and JavaScript
\n
DomTerm is a combined terminal emulator and REPL console using web\ntechnlogies - i.e. JavaScript and DOM: Users can type commands which\ngets sent to an application, which evaluates the command, and displays\nthe results, typically in some kind of type-script format.
DomTerm - a terminal emulator and console using DOM and JavaScript
\n
DomTerm is a combined terminal emulator and REPL console using web\ntechnlogies - i.e. JavaScript and DOM: Users can type commands which\ngets sent to an application, which evaluates the command, and displays\nthe results, typically in some kind of type-script format.
Dopamine is an elegant audio player which tries to make organizing and listening to music as simple and pretty as possible. This version is written using Electron, Angular and Typescript. The original Dopamine (for Windows), which is written in WPF and C#, remains available here.
libarchive-tools: contains bsdtar, which is required to build pacman package.
\n
\n
Build prerequisites on Ubuntu:
\n
\n
Install Node.js LTS
\n
Install Visual Studio Code
\n
Install rpm (required to build rpm package) and libarchive-tools (contains bsdtar, which is required to build pacman package): sudo apt install rpm libarchive-tools
\n
\n
Follow the build instructions below to start or build Dopamine for your platform.
\n
Build prerequisites on Manjaro:
\n
\n
Install Node.js LTS:\n
\n
yay -S nvm
\n
nvm install 14
\n
\n
\n
Install Visual Studio Code: yay -S visual-studio-code-bin
Follow the build instructions below to start or build Dopamine for your platform.
\n
Build prerequisites on Windows:
\n
\n
Download and install Node.js LTS from https://nodejs.org (During the installation, select all features and check the box to install Tools for Native Modules).
\n
After the installation of Node.js, restart computer to ensure that npm is added to the path.
Open Visual Studio Code and open the \"dopamine\" folder (the folder containing package.json)
\n
\n
Build instructions
\n
Due to the native dependency better-sqlite3, this project cannot be built for all platforms on GNU/Linux. The GNU/Linux packages must be built on GNU/Linux, the Windows package must be built on Windows and the MacOS package must be built on MacOS.
\n
$ git clone https://github.com/digimezzo/dopamine.git\n$ cd dopamine\n$ npm install # Install dependencies\n$ npm start # Start Dopamine\n$ npm run electron:windows # Build for Windows\n$ npm run electron:linux # Build for Linux\n$ npm run electron:mac # Build for Mac
\n
Pacman installation notes
\n
The pacman package contains a dependency to package libappindicator-sharp, which is no longer distributed with Arch Linux. I cannot remove this dependency for now, because it is an issue in electron-builder (the packaging tool which is used in this project). It is, however, possible to install Dopamine on Arch Linux or Manjaro using this command:
Dopamine is an elegant audio player which tries to make organizing and listening to music as simple and pretty as possible. This version is written using Electron, Angular and Typescript. The original Dopamine (for Windows), which is written in WPF and C#, remains available here.
libarchive-tools: contains bsdtar, which is required to build pacman package.
\n
\n
Build prerequisites on Ubuntu:
\n
\n
Install Node.js LTS
\n
Install Visual Studio Code
\n
Install rpm (required to build rpm package) and libarchive-tools (contains bsdtar, which is required to build pacman package): sudo apt install rpm libarchive-tools
\n
\n
Follow the build instructions below to start or build Dopamine for your platform.
\n
Build prerequisites on Manjaro:
\n
\n
Install Node.js LTS:\n
\n
yay -S nvm
\n
nvm install 14
\n
\n
\n
Install Visual Studio Code: yay -S visual-studio-code-bin
Follow the build instructions below to start or build Dopamine for your platform.
\n
Build prerequisites on Windows:
\n
\n
Download and install Node.js LTS from https://nodejs.org (During the installation, select all features and check the box to install Tools for Native Modules).
\n
After the installation of Node.js, restart computer to ensure that npm is added to the path.
Open Visual Studio Code and open the \"dopamine\" folder (the folder containing package.json)
\n
\n
Build instructions
\n
Due to the native dependency better-sqlite3, this project cannot be built for all platforms on GNU/Linux. The GNU/Linux packages must be built on GNU/Linux, the Windows package must be built on Windows and the MacOS package must be built on MacOS.
\n
$ git clone https://github.com/digimezzo/dopamine.git\n$ cd dopamine\n$ npm install # Install dependencies\n$ npm start # Start Dopamine\n$ npm run electron:windows # Build for Windows\n$ npm run electron:linux # Build for Linux\n$ npm run electron:mac # Build for Mac
\n
Pacman installation notes
\n
The pacman package contains a dependency to package libappindicator-sharp, which is no longer distributed with Arch Linux. I cannot remove this dependency for now, because it is an issue in electron-builder (the packaging tool which is used in this project). It is, however, possible to install Dopamine on Arch Linux or Manjaro using this command:
Across windows in different virtual desktops/workspaces
\n
\n
📦 How to Install (Normal Installation)
\n
Go to the Releases Page to download the latest releases
\n
\n
Windows\n
\n
Download DropPoint-1.x.x-win.zip from Releases and extract to a blank folder. Run DropPoint.exe.
\n
To enable stickyness across Virtual Desktops (Windows) go to Task view while DropPoint is running, right click it and tick \"Show Window from this app on all Desktops\". Stickyness in other Operating Systems works by default.
\n
\n
\n
Mac\n
\n
Download DropPoint-1.x.x-intel.dmg or DropPoint-1.x.x-arm64-Apple-Silicon.dmg(for Apple M1 Devices only) from Releases and install. Open \"System Preferences > Security & Privacy > Open Anyway\"
\n
\n
\n
Linux\n
\n
All Linux Distros: Download DropPoint-1.x.x.AppImage to run.
RHEL-based Distros (Fedora, Red Hat, etc): Download droppoint-1.x.x.x86_64.rpm.
\n
\n
\n
\n
✌️ Usage
\n
\n
\n
Drag and drop any file(s) or folder from the system into DropPoint, go to your desired location and drag it out.
\n
\n
\n
App minimises to tray by default when you close the instance. To open instance, click on system tray. To quit, right click on tray icon > Quit.
\n
\n
\n
While DropPoint is in the system tray, pressing Shift + Caps Lock anywhere in your PC would toggle an instance of DropPoint. (as tested on Windows and Linux) (the shortcut is Shift + Tab on MacOs)
Across windows in different virtual desktops/workspaces
\n
\n
📦 How to Install (Normal Installation)
\n
Go to the Releases Page to download the latest releases
\n
\n
Windows\n
\n
Download DropPoint-1.x.x-win.zip from Releases and extract to a blank folder. Run DropPoint.exe.
\n
To enable stickyness across Virtual Desktops (Windows) go to Task view while DropPoint is running, right click it and tick \"Show Window from this app on all Desktops\". Stickyness in other Operating Systems works by default.
\n
\n
\n
Mac\n
\n
Download DropPoint-1.x.x-intel.dmg or DropPoint-1.x.x-arm64-Apple-Silicon.dmg(for Apple M1 Devices only) from Releases and install. Open \"System Preferences > Security & Privacy > Open Anyway\"
\n
\n
\n
Linux\n
\n
All Linux Distros: Download DropPoint-1.x.x.AppImage to run.
RHEL-based Distros (Fedora, Red Hat, etc): Download droppoint-1.x.x.x86_64.rpm.
\n
\n
\n
\n
✌️ Usage
\n
\n
\n
Drag and drop any file(s) or folder from the system into DropPoint, go to your desired location and drag it out.
\n
\n
\n
App minimises to tray by default when you close the instance. To open instance, click on system tray. To quit, right click on tray icon > Quit.
\n
\n
\n
While DropPoint is in the system tray, pressing Shift + Caps Lock anywhere in your PC would toggle an instance of DropPoint. (as tested on Windows and Linux) (the shortcut is Shift + Tab on MacOs)
Download & mount the dmg, drag Discord RPC Maker into the Applications folder > Double click on Applications folder > Right click Discord RPC Maker > Open > Open
Download, tar -xvf /path/to/discordrpcmaker-linux.tar.gz > Run: discordrpcmaker-2.1.1/discordrpcmaker; To install, mv ./discordrpcmaker-2.1.1 /bin/drpcm && ln -s /bin/drpcm/discordrpcmaker /bin/discordrpcmaker, and run discordrpcmaker.
\n
\n\n
From source
\n
⚠ Don't do this unless you intend to modify the code!
\n
\n
Install NodeJS/NPM, Yarn, & Electron
\n
git clone https://github.com/thatonecalculator/discordrpcmaker && cd discordrpcmaker && yarn install && npm run start
\n
\n\n
Supporters
\n
You can to get your name here!
\n
We're trying to raise $150 to pay for online services for the next update and code signing!
Made by ThatOneCalculator and KraXen72. Not officially affiliated with Discord. Thank you discord.js, electron-builder, fosscord-ui, and all our lovely stargazers, helpers, translators, and users for making this project possible. Full credits are in the Instructions & Info menu in the program.
Download & mount the dmg, drag Discord RPC Maker into the Applications folder > Double click on Applications folder > Right click Discord RPC Maker > Open > Open
Download, tar -xvf /path/to/discordrpcmaker-linux.tar.gz > Run: discordrpcmaker-2.1.1/discordrpcmaker; To install, mv ./discordrpcmaker-2.1.1 /bin/drpcm && ln -s /bin/drpcm/discordrpcmaker /bin/discordrpcmaker, and run discordrpcmaker.
\n
\n\n
From source
\n
⚠ Don't do this unless you intend to modify the code!
\n
\n
Install NodeJS/NPM, Yarn, & Electron
\n
git clone https://github.com/thatonecalculator/discordrpcmaker && cd discordrpcmaker && yarn install && npm run start
\n
\n\n
Supporters
\n
You can to get your name here!
\n
We're trying to raise $150 to pay for online services for the next update and code signing!
Made by ThatOneCalculator and KraXen72. Not officially affiliated with Discord. Thank you discord.js, electron-builder, fosscord-ui, and all our lovely stargazers, helpers, translators, and users for making this project possible. Full credits are in the Instructions & Info menu in the program.
git clone https://github.com/xushengfeng/eSearch.git\ncd eSearch\nnpm install\n# 运行\nnpx electron .\n# 编译\nnpm run rebuild\nnpm run dist\n# 将在build目录生产安装包和解压的目录
git clone https://github.com/xushengfeng/eSearch.git\ncd eSearch\nnpm install\n# 运行\nnpx electron .\n# 编译\nnpm run rebuild\nnpm run dist\n# 将在build目录生产安装包和解压的目录
EBTCalc (Desktop) is a Reverse Polish Notation (RPN) calculator with custom buttons, programmed in Javascript, using a convenient editor. EBTCalc runs on Windows 10, OSX, and Linux. EBTCalc is open source.
EBTCalc (Desktop) is a Reverse Polish Notation (RPN) calculator with custom buttons, programmed in Javascript, using a convenient editor. EBTCalc runs on Windows 10, OSX, and Linux. EBTCalc is open source.
A minimalistic music player, designed for simplicity. Built on electron, uses Howler for handling music playback, Svelte for the UI, and music-metadata to retrieve ID3 tags.
\n
This can also serve as a starting point to implement your own front-end/UI for a music Player.
Download the build for your OS. Start the application and then click on the Folders tab on the top left corner, this will bring up a window where you can select the folder where you want to play your audio files from.\nOnce you select a folder with songs, just click play.
\n
Building from the repo
\n
Clone the repository, make it your working directory, and then on your terminal run npm install.\nOnce all the dependencies have finished downloading, run npm run app-dev to test it, and npm run build to build it for your platform.
\n
Features
\n
\n
Supports: mp3, opus, ogg, wav, aac, m4a and webm.
\n
Reads ID3 tags and displays the artist and album art (if it exists).
\n
Quickly switch tracks from the playlist.
\n
Search for songs from the search bar.
\n
Instantly switch between Dark, Light and Disco modes.
\n
Use keyboard shortcuts to control playback.
\n
\n
Shortcuts
\n
Next track: 🠊 |\nPrevious track: 🠈 |\nVolume up: 🠉 |\nVolume down: 🠋 |\nPlay/pause: Space
\n
Screenshots
\n
\n\n
\n
\n\n
\n
Upcoming Features
\n
Some new features and under the hood stuff that will be or has already been implemented. They'll be included in the next update.
\n
\n
Added auto update when new version is available.
\n
\n
Contributing
\n
Please read CONTRIBUTING.md before raising a PR or creating an issue.
A minimalistic music player, designed for simplicity. Built on electron, uses Howler for handling music playback, Svelte for the UI, and music-metadata to retrieve ID3 tags.
\n
This can also serve as a starting point to implement your own front-end/UI for a music Player.
Download the build for your OS. Start the application and then click on the Folders tab on the top left corner, this will bring up a window where you can select the folder where you want to play your audio files from.\nOnce you select a folder with songs, just click play.
\n
Building from the repo
\n
Clone the repository, make it your working directory, and then on your terminal run npm install.\nOnce all the dependencies have finished downloading, run npm run app-dev to test it, and npm run build to build it for your platform.
\n
Features
\n
\n
Supports: mp3, opus, ogg, wav, aac, m4a and webm.
\n
Reads ID3 tags and displays the artist and album art (if it exists).
\n
Quickly switch tracks from the playlist.
\n
Search for songs from the search bar.
\n
Instantly switch between Dark, Light and Disco modes.
\n
Use keyboard shortcuts to control playback.
\n
\n
Shortcuts
\n
Next track: 🠊 |\nPrevious track: 🠈 |\nVolume up: 🠉 |\nVolume down: 🠋 |\nPlay/pause: Space
\n
Screenshots
\n
\n\n
\n
\n\n
\n
Upcoming Features
\n
Some new features and under the hood stuff that will be or has already been implemented. They'll be included in the next update.
\n
\n
Added auto update when new version is available.
\n
\n
Contributing
\n
Please read CONTRIBUTING.md before raising a PR or creating an issue.
No more! Stop copy/pasting magnet links and uploading torrent files through a tedious webinterface. Electorrent is your new desktop remote torrenting application. Remote control your NAS, VPS, seedbox - you name it.
\n
Support
\n
Electorrent can connect to the following bittorrent clients:
When using rTorrent you have to configure your http server correctly. Follow this guide to make sure you have it set up correctly. Alternative you may be able to use /plugins/httprpc/action.php as the path if your have the HTTPRPC plugin installed.
No more! Stop copy/pasting magnet links and uploading torrent files through a tedious webinterface. Electorrent is your new desktop remote torrenting application. Remote control your NAS, VPS, seedbox - you name it.
\n
Support
\n
Electorrent can connect to the following bittorrent clients:
When using rTorrent you have to configure your http server correctly. Follow this guide to make sure you have it set up correctly. Alternative you may be able to use /plugins/httprpc/action.php as the path if your have the HTTPRPC plugin installed.
ElectroCRUD is Open Source Database CRUD (Create, Read, Update, Delete) Software. No Code Needed — Just in a few clicks, you can create a Database Admin/Dashboard/Whatever. Its Open Source — It's Free.
\n
Why?
\n
After a failed search for a basic admin panel that does not involve writing code or installs web-based solutions, I came up with ElectroCRUD idea.
\n
ElectroCRUD v1
\n
The ElectroCRUD v1 was born in 2016. An Electron application that made it possible to create a friendly dashboard with data tables, search, widgets, filter & relations with few clicks without any experience in programming.
\n
ElectroCRUD v2
\n
After a few years of the project being inactive, I decided to bring it to life again. The codebase was built from scratch using Electron+Angular8. The new version contains most of the features of the first version, and new features are added on a weekly basis.
\n
From version 2.7.0 SQLite has been added, currently its very limited support but we working on full support for next version.
\n
\n
\n
Functionality
\n
\n
MySQL Support
\n
PostgreSQL Support
\n
SQLite Support (limited support, work in progress)
\n
SSH Tunnels (Keys & Password)
\n
Accounts (represent a database)\n
\n
Add / Edit
\n
Test connection (ssh, db)
\n
Export / Import
\n
\n
\n
Views (represent a table)\n
\n
Add new view & Edit view configurations
\n
Data table with pagination
\n
Search
\n
Permissions (C,R,U,D)
\n
Terminology
\n
Selection of columns to display or search by
\n
Add new record / Edit record
\n
Edit record
\n
Connect existing view as sub views
\n
Export data in various formats like: csv, dump
\n
\n
\n
Custom SQL Queries
\n
Subviews (represent a sub table)
\n
Views relations\n
\n
Drill from view to view (subview)
\n
Column based tables relation (left join)
\n
\n
\n
View widgets (display aggragated data in the view)\n
\n
Add / Edit / Remove widgets
\n
Aggregation functions (AVG, SUM, MIN, MAX, COUNT)
\n
Apply filters on widget data
\n
\n
\n
View filters (build where clauses to filter the data)\n
\n
Add / Edit / Remove filter in each view
\n
One click apply / unapply on view data
\n
Simple & friendly interface to build where clauses
CSC_IDENTITY_AUTO_DISCOVERY=false npm run electron:mac-win-linux
\n
\n\n
\n
",
"readmeOriginal": "
\n
ElectroCRUD 2
\n
ElectroCRUD?
\n
ElectroCRUD is Open Source Database CRUD (Create, Read, Update, Delete) Software. No Code Needed — Just in a few clicks, you can create a Database Admin/Dashboard/Whatever. Its Open Source — It's Free.
\n
Why?
\n
After a failed search for a basic admin panel that does not involve writing code or installs web-based solutions, I came up with ElectroCRUD idea.
\n
ElectroCRUD v1
\n
The ElectroCRUD v1 was born in 2016. An Electron application that made it possible to create a friendly dashboard with data tables, search, widgets, filter & relations with few clicks without any experience in programming.
\n
ElectroCRUD v2
\n
After a few years of the project being inactive, I decided to bring it to life again. The codebase was built from scratch using Electron+Angular8. The new version contains most of the features of the first version, and new features are added on a weekly basis.
\n
From version 2.7.0 SQLite has been added, currently its very limited support but we working on full support for next version.
\n
\n
\n
Functionality
\n
\n
MySQL Support
\n
PostgreSQL Support
\n
SQLite Support (limited support, work in progress)
\n
SSH Tunnels (Keys & Password)
\n
Accounts (represent a database)\n
\n
Add / Edit
\n
Test connection (ssh, db)
\n
Export / Import
\n
\n
\n
Views (represent a table)\n
\n
Add new view & Edit view configurations
\n
Data table with pagination
\n
Search
\n
Permissions (C,R,U,D)
\n
Terminology
\n
Selection of columns to display or search by
\n
Add new record / Edit record
\n
Edit record
\n
Connect existing view as sub views
\n
Export data in various formats like: csv, dump
\n
\n
\n
Custom SQL Queries
\n
Subviews (represent a sub table)
\n
Views relations\n
\n
Drill from view to view (subview)
\n
Column based tables relation (left join)
\n
\n
\n
View widgets (display aggragated data in the view)\n
\n
Add / Edit / Remove widgets
\n
Aggregation functions (AVG, SUM, MIN, MAX, COUNT)
\n
Apply filters on widget data
\n
\n
\n
View filters (build where clauses to filter the data)\n
\n
Add / Edit / Remove filter in each view
\n
One click apply / unapply on view data
\n
Simple & friendly interface to build where clauses
A clipboard manger that support text and images for now.\nThis cliboard is inspired by Ditto for Windows.\nif you on windows use ditto instead of this. Hence it is far better than this at current stage.\ni needed a same solution for linux and mac so i built it for myself.
\n
Since it is not configurable right now so let me give you a tour.\nIt allows you to copy and paste images/text while keeping your cliboard histroy as well. voila!\nYou can search through your texts using pannel.\nYou can hide/show tha app using alt+space for mac/windows/linux.
\n
The main thing i wanted was to be able to have a hot key for recent copied commands.
\n
So,\nYou have ctrl+1 to ... ctrl + 5 for your most recent 5 copied text or images at your disposal.\nif your are on mac use cmnd + 1 to achieve the desire effect.\nthere is a catch here Ditto allows you to paste using the hot keys as well. Since it is writter on electron i was unable to get the funcationality. i have found the way around but it's not that good.\nSo, to be able to use that functionality you need to have the jdk (java) installed on your computer since it uses the node module that uses the jar file to trigerr keys.\nThe above solution is kind a slow and unresponsive espacially for mac.\nSo, for mac i have used the apple script within this app. so you have to allow this application accesbility feature in order to use this functionality. other wise you can use the defualt settingss which is to press the desired hot key and then press ctrl/cmnd+ v manually to paste the text on that number.
\n
\n
\n
Todo Design a fine logo ;-)
\n
\n
\n
Add about Window.
\n
\n
\n
Allow user to change keys for hiding and pasting shortcuts through gui.
\n
\n
\n
Find a perfect way to trigger pasting using hot keys without delay.
\n
\n
\n
Auto Launch on startup
\n
Any suggestion hit me up or create a pull request if you want in on fun!\n
\n
\n
\n
",
"readmeOriginal": "
Clippy
\n
Clipboard manager that makes sense
\n
A clipboard manger that support text and images for now.\nThis cliboard is inspired by Ditto for Windows.\nif you on windows use ditto instead of this. Hence it is far better than this at current stage.\ni needed a same solution for linux and mac so i built it for myself.
\n
Since it is not configurable right now so let me give you a tour.\nIt allows you to copy and paste images/text while keeping your cliboard histroy as well. voila!\nYou can search through your texts using pannel.\nYou can hide/show tha app using alt+space for mac/windows/linux.
\n
The main thing i wanted was to be able to have a hot key for recent copied commands.
\n
So,\nYou have ctrl+1 to ... ctrl + 5 for your most recent 5 copied text or images at your disposal.\nif your are on mac use cmnd + 1 to achieve the desire effect.\nthere is a catch here Ditto allows you to paste using the hot keys as well. Since it is writter on electron i was unable to get the funcationality. i have found the way around but it's not that good.\nSo, to be able to use that functionality you need to have the jdk (java) installed on your computer since it uses the node module that uses the jar file to trigerr keys.\nThe above solution is kind a slow and unresponsive espacially for mac.\nSo, for mac i have used the apple script within this app. so you have to allow this application accesbility feature in order to use this functionality. other wise you can use the defualt settingss which is to press the desired hot key and then press ctrl/cmnd+ v manually to paste the text on that number.
\n
\n
\n
Todo Design a fine logo ;-)
\n
\n
\n
Add about Window.
\n
\n
\n
Allow user to change keys for hiding and pasting shortcuts through gui.
\n
\n
\n
Find a perfect way to trigger pasting using hot keys without delay.
\n
\n
\n
Auto Launch on startup
\n
Any suggestion hit me up or create a pull request if you want in on fun!\n
In order to use this source code you need to have Node.js, Git and Bower installed globally. After that you have to follow the steps below.
\n
# Clone this repository\ngit clone https://github.com/florianfe/Elements\n# Go into the repository\ncd Elements\n# Install npm dependencies\nnpm install\n# Install bower dependencies\nbower install\n# Run the app in test mode\nnpm start\n# build application for release\nnpm run-script dist
In order to use this source code you need to have Node.js, Git and Bower installed globally. After that you have to follow the steps below.
\n
# Clone this repository\ngit clone https://github.com/florianfe/Elements\n# Go into the repository\ncd Elements\n# Install npm dependencies\nnpm install\n# Install bower dependencies\nbower install\n# Run the app in test mode\nnpm start\n# build application for release\nnpm run-script dist
Encrypt and Decrypt files on a Mac, Windows or Linux using a Passphrase
\n
\n
💡 Motivation
\n
Sometimes you just need a quick way to encrypt files securely using a passphrase. I started this project to explore the world of Electron and learn about cryptography.
\n
encrypt0r provides a simple drag and drop interface to encrypt/decrypt your files using a password.
\n
🔏 Signing Issues
\n
When running the app on Mac/Windows, you might get an untrusted developer warning. This is because the app is not signed by the developer (aka me). Signing an app requires a Signing Certificate that costs hundreds of dollars per year. Apart from the warning, the app works as advertised.
Encrypt and Decrypt files on a Mac, Windows or Linux using a Passphrase
\n
\n
💡 Motivation
\n
Sometimes you just need a quick way to encrypt files securely using a passphrase. I started this project to explore the world of Electron and learn about cryptography.
\n
encrypt0r provides a simple drag and drop interface to encrypt/decrypt your files using a password.
\n
🔏 Signing Issues
\n
When running the app on Mac/Windows, you might get an untrusted developer warning. This is because the app is not signed by the developer (aka me). Signing an app requires a Signing Certificate that costs hundreds of dollars per year. Apart from the warning, the app works as advertised.
Download the latest version for Windows 10 and 11 at Microsoft Store.
\n
\n
🌈 Embedded Sizes
\n
\n\n
\n
Dimension
\n
ICO
\n
ICNS
\n
\n\n\n
\n
16x16
\n
✅
\n
✅
\n
\n
\n
16x16@2x
\n
\n
✅
\n
\n
\n
24x24
\n
✅
\n
\n
\n
\n
32x32
\n
✅
\n
✅
\n
\n
\n
32x32@2x
\n
\n
✅
\n
\n
\n
48x48
\n
✅
\n
\n
\n
\n
64x64
\n
✅
\n
\n
\n
\n
72x72
\n
✅
\n
\n
\n
\n
96x96
\n
✅
\n
\n
\n
\n
128x128
\n
✅
\n
✅
\n
\n
\n
128x128@2x
\n
\n
✅
\n
\n
\n
256x256
\n
✅
\n
✅
\n
\n
\n
256x256@2x
\n
\n
✅
\n
\n
\n
512x512
\n
\n
✅
\n
\n
\n
512x512@2x
\n
\n
✅
\n
\n\n
\n
📚 Supported Languages (App Menu)
\n
\n\n
\n
Language
\n
Code
\n
\n\n\n
\n
English 🇺🇸🇬🇧🌎
\n
en
\n
\n
\n
日本語 🇯🇵
\n
ja
\n
\n
\n
Deutsch 🇩🇪
\n
de
\n
\n
\n
Русский 🇷🇺
\n
ru
\n
\n
\n
Português 🇵🇹🇧🇷
\n
pt
\n
\n
\n
Italiano 🇮🇹
\n
it
\n
\n
\n
简体中文 🇨🇳
\n
zh_CN
\n
\n
\n
Türkçe 🇹🇷
\n
tr
\n
\n
\n
Malayalam 🇮🇳
\n
ml
\n
\n\n
\n
🔐 Security
\n
\n\n
\n
API
\n
Value
\n
\n\n\n
\n
Content-Security-Policy
\n
default-src self
\n
\n
\n
nodeIntegration
\n
false
\n
\n
\n
enableRemoteModule
\n
false
\n
\n
\n
contextIsolation
\n
true
\n
\n
\n
safeDialogs
\n
true
\n
\n
\n
sandbox
\n
true
\n
\n\n
\n
🛠️ Development
\n
You can build this repository as follows:
\n
# clone this repo.\ngit clone https://github.com/sprout2000/elephicon.git\n\n# install dependencies\ncd elephicon\nnpm install\n\n# on development\nnpm run dev\n\n# on production\nnpm run build && npm run package
\n
🩹 Contributing
\n
You can easily contribute to this repository by providing translation files.
Import the locale into src/setLocales.ts as follows:
\n\n
{\n i18next.init({\n lng: locale,\n fallbackLng: 'en',\n resources: {\n en: { translation: en },\n ja: { translation: ja },\n+ de: { translation: de },\n },\n });\n };\">
import en from './locales/en.json';\n import ja from './locales/ja.json';\n+ import de from './locales/de.json';\n\n export const setLocales = (locale: string): void => {\n i18next.init({\n lng: locale,\n fallbackLng: 'en',\n resources: {\n en: { translation: en },\n ja: { translation: ja },\n+ de: { translation: de },\n },\n });\n };
Download the latest version for Windows 10 and 11 at Microsoft Store.
\n
\n
🌈 Embedded Sizes
\n
\n\n
\n
Dimension
\n
ICO
\n
ICNS
\n
\n\n\n
\n
16x16
\n
✅
\n
✅
\n
\n
\n
16x16@2x
\n
\n
✅
\n
\n
\n
24x24
\n
✅
\n
\n
\n
\n
32x32
\n
✅
\n
✅
\n
\n
\n
32x32@2x
\n
\n
✅
\n
\n
\n
48x48
\n
✅
\n
\n
\n
\n
64x64
\n
✅
\n
\n
\n
\n
72x72
\n
✅
\n
\n
\n
\n
96x96
\n
✅
\n
\n
\n
\n
128x128
\n
✅
\n
✅
\n
\n
\n
128x128@2x
\n
\n
✅
\n
\n
\n
256x256
\n
✅
\n
✅
\n
\n
\n
256x256@2x
\n
\n
✅
\n
\n
\n
512x512
\n
\n
✅
\n
\n
\n
512x512@2x
\n
\n
✅
\n
\n\n
\n
📚 Supported Languages (App Menu)
\n
\n\n
\n
Language
\n
Code
\n
\n\n\n
\n
English 🇺🇸🇬🇧🌎
\n
en
\n
\n
\n
日本語 🇯🇵
\n
ja
\n
\n
\n
Deutsch 🇩🇪
\n
de
\n
\n
\n
Русский 🇷🇺
\n
ru
\n
\n
\n
Português 🇵🇹🇧🇷
\n
pt
\n
\n
\n
Italiano 🇮🇹
\n
it
\n
\n
\n
简体中文 🇨🇳
\n
zh_CN
\n
\n
\n
Türkçe 🇹🇷
\n
tr
\n
\n
\n
Malayalam 🇮🇳
\n
ml
\n
\n\n
\n
🔐 Security
\n
\n\n
\n
API
\n
Value
\n
\n\n\n
\n
Content-Security-Policy
\n
default-src self
\n
\n
\n
nodeIntegration
\n
false
\n
\n
\n
enableRemoteModule
\n
false
\n
\n
\n
contextIsolation
\n
true
\n
\n
\n
safeDialogs
\n
true
\n
\n
\n
sandbox
\n
true
\n
\n\n
\n
🛠️ Development
\n
You can build this repository as follows:
\n
# clone this repo.\ngit clone https://github.com/sprout2000/elephicon.git\n\n# install dependencies\ncd elephicon\nnpm install\n\n# on development\nnpm run dev\n\n# on production\nnpm run build && npm run package
\n
🩹 Contributing
\n
You can easily contribute to this repository by providing translation files.
Import the locale into src/setLocales.ts as follows:
\n\n
import en from './locales/en.json';\n import ja from './locales/ja.json';\n+ import de from './locales/de.json';\n\n export const setLocales = (locale: string): void => {\n i18next.init({\n lng: locale,\n fallbackLng: 'en',\n resources: {\n en: { translation: en },\n ja: { translation: ja },\n+ de: { translation: de },\n },\n });\n };
Erin has been created as an attempt to solve just one seemingly easy and, as I figured out later on, fairly common problem: getting used to your desktop wallpaper way too quickly while downloading them manually being too big of a hassle. If one's a software engineer, it's their moral duty to spend 100+ hours trying to automate a task that would take 10 minutes to complete manually in the worst of conditions, so that's exactly how Erin was born.
\n
Screenshots
\n
\n\n
\n
\n
\n
\n\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n
Installation
\n
Download an installation file corresponding to your OS from GitHub releases
Change req.main and req.time to whatever your API returns instead\n)
\n
\n
\n
GOOGLE_API_KEY
\n
GH_TOKEN (optional, but auto-updater won't work without it)
\n
\n
Steps to run locally
\n
\n
Install dependencies: yarn install
\n
Run react app: yarn react-start
\n
Transpile electron code: yarn electron-compile
\n
Run electron app: yarn electron-start
\n
\n
Commands to build the app on each platform
\n
\n
Windows: yarn build-win
\n
Linux: yarn build-linux
\n
MacOS: yarn build-mac
\n
All three: yarn build-mwl
\n
\n
",
"readmeOriginal": "
\n \n
Erin
\n
A cross-platform app for changing wallpaper
\n
\n
Goal
\n
Erin has been created as an attempt to solve just one seemingly easy and, as I figured out later on, fairly common problem: getting used to your desktop wallpaper way too quickly while downloading them manually being too big of a hassle. If one's a software engineer, it's their moral duty to spend 100+ hours trying to automate a task that would take 10 minutes to complete manually in the worst of conditions, so that's exactly how Erin was born.
\n
Screenshots
\n
\n\n
\n
\n
\n
\n\n\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n
Installation
\n
Download an installation file corresponding to your OS from GitHub releases
ElectronMail is an Electron-based unofficial desktop client for ProtonMail. The app aims to provide enhanced desktop user experience enabling features that are not supported by the official in-browser web clients.\nIt is written in TypeScript and uses Angular.
\n
\n\n
\n
\n
Download
\n
The download page with Linux/OSX/Windows installation packages is here.
\n
The way of verifying that the installation packages attached to the releases have been assembled from the source code is being provided.
\n
Some package types are available for installing from the repositories (AUR/Pacman and Snap repositories are being maintained by @joshirio and MPR/Debian repo by @hiddeninthesand):
⚙️Cross platform. The app works on Linux/OSX/Windows platforms. Binary installation packages located here.
\n
\n
\n
🔎Full-text search. Including email body content scanning capability. Enabled with v2.2.0 release. See the respective issue for details.
\n
\n
\n
🔎JavaScript-based/unlimited messages filtering. Enabled since v4.11.0 release. See the respective #257 for details. Requires local store feature to be enabled.
\n
\n
\n
📦Offline access to the email messages (attachments content not stored locally, but emails body content). The local store feature enables storing your messages in the encrypted database.bin file (see FAQ for file purpose details). So the app allows you to view your messages offline, running full-text search against them, exporting them to EML/JSON files. etc. Enabled since v2.0.0 release.
\n
\n
\n
📫Multi accounts support including supporting individual API entry points. For example, you can force the specific email account added in the app connect to the email provider via the Tor only by selecting the Tor version 3 address API entry point in the dropdown list and configuring a proxy as described in this message.
\n
\n
\n
🔓Automatic login into the app with a remembered the system keychain remembered master (keep me signed in feature). Integration with as a system keychain is done with the keytar module. By the way, on Linux KeePassXC implements the Secret Service interface and so it can be acting as a system keychain (for details, see the \"automatic login into the app\"-related point in the FAQ).
\n
\n
\n
🔓Automatic login into the email accounts, including filling 2FA tokens. Two auto-login delay scenarios supported in order to make it harder to correlate the identities, see the respective issue.
\n
\n
\n
🔓Persistent email account sessions. The feature introduced since v4.2.0 version with the experimental label, #227. The feature enables the scenario when you to enter the account credentials on the login form only once, manually or automatically by the app, and then you never see the login form anymore for this email account even if you restart the app (unless you explicitly dropped the session in the admin area or it got dropped by the service due to the inactivity/expiration). If this feature is enabled for the account, manual credentials filling is the preferred option as a more secure option since you don't save the account credentials anywhere (credentials are encrypted though even if saved, see settings.bin file description in the FAQ).
\n
\n
\n
🔐Encrypted local storage with switchable predefined key derivation and encryption presets. Argon2 is used as the default key derivation function.
\n
\n
\n
⚙️Switchable accounts handle buttons positioning (top , left, left-thin). See details in #36 and #175. Demo screenshots placed in the images folder (specifically this image).
\n
\n
\n
📦Batch emails export to EML files (attachments can optionally be exported in online / live mode, not available in offline mode since not stored locally). Feature released with v2.0.0-beta.4 version, requires local store feature to be enabled.
\n
\n
\n
🔐Built-in/prepackaged web clients. The prepackaged with the app proton web clients assembled from source code, see the respective official repositories. See 79 and 80 issues for details.
\n
\n
\n
⚙️Configuring proxy per account support. Enabled since v3.0.0 release. See 113 and 120 issues for details.
🔔System tray icon with a total number of unread messages shown on top of it. Enabling local store improves this feature, see #30.
\n
\n
\n
⚙️Starting minimized to tray and closing to tray opt-out features.
\n
\n
\n
🔔Native notifications for individual accounts clicking on which focuses the app window and selects respective account in the accounts list.
\n
\n
\n
📆Calendar notifications / alarms regardless of the open page (mail/calendar/settings/account/drive). The opt-in feature has been enabled since v4.9.0. See #229 for details.
\n
\n
\n
😎Making all email \"read\" in a single mouse click. Enabled since v3.8.0. Requires local store feature to be enabled.
\n
\n
\n
😎Routing images through proxy. The opt-in feature has been enabled since v4.9.0. See #312 for details.
\n
\n
\n
😎Batch mails removing bypassing the trash. Enabled since v4.9.0. Requires local store feature to be enabled.
\n
\n
\n
😎Batch mails moving between folders. Enabled since v4.5.0. Requires local store feature to be enabled.
\n
\n
\n
😎Per-account custom CSS injection (per-account styling). Enabled since v4.10.0. See #355 for details.
How to build your own installation package from source code
\n
Building on Continuous Integration server
\n
The reproducible builds idea is respected by the project. So the simplest way to prepare your own installation package from the source code is to clone the project. The respective GitHub Actions CI config file comes with the project.
\n
Building locally
\n
\n
Regardless of the platform you are working on, you will need to have Node.js v16.13.x installed. You might want to use Node Version Manager to be able to switch between the Node.js versions:\n
Make sure you are using npm v7+, not the v6 (run npm -v to see the version).
\n
Some native modules require compiling process to be involved and for that Python and C++ compiler need to be installed on the system:\n
\n
On Windows: the simplest way to install all the needed stuff on Windows is to run npm install --global --production windows-build-tools CLI command.
\n
On Linux: python, make and a C/C++ compiler toolchain, like GCC are most likely already installed. Besides keytar needs libsecret library to be installed.
\n
On macOS: python and Xcode need to be installed. You also need to install the Command Line Tools via Xcode, can be found under the Xcode -> Preferences -> Downloads menu.
\n
\n
\n
ProtonMail's WebClient requires addition environment setup if you run Windows, see.
\n
Clone this project to your local device. If you are going to contribute, consider cloning the forked into your own GitHub account project.
Install dependencies running pnpm install --frozen-lockfile (setting PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 environment variable might speed up the process).
\n
Build app running pnpm run app:dist.
\n
Build a package to install running pnpm run electron-builder:dist command to build Windows/Mac OS X package and one of the following commands to build Linux package:\n
\n
pnpm run electron-builder:dist:linux:appimage
\n
pnpm run electron-builder:dist:linux:deb
\n
pnpm run electron-builder:dist:linux:freebsd
\n
pnpm run electron-builder:dist:linux:pacman
\n
pnpm run electron-builder:dist:linux:rpm
\n
pnpm run electron-builder:dist:linux:snap
\n
\n
\n
The assembled installation package comes into the ./dist folder.
\n
\n
To recap, considering that all the described build requirements are met, the short command to build let's say Arch Linux package will be pnpm install --frozen-lockfile && pnpm run app:dist && pnpm run electron-builder:dist:linux:pacman.
\n
Data/config files created and used by the app
\n
If you want to backup the app data these are only files you need to take care of (files localed in the settings folder):
\n
\n
config.json file keeps config parameters. There is no sensitive data in this file, so unencrypted.
\n
settings.bin file keeps added to the app accounts including credentials if a user decided to save them. The file is encrypted with 32 bytes length key derived from the master password.
\n
database.bin file is a local database that keeps fetched emails/folders/contacts entities if the local store feature was enabled for at least one account. The file is encrypted with 32 bytes length key randomly generated and stored in settings.bin. The app by design flushes and loads to memory the database.bin file as a whole thing but not like encrypting only the specific columns of the database. It's of course not an optimal approach in terms of performance and resource consumption but it allows keeping the metadata hidden. You can see some details here.
\n
database-session.bin file is being used in the same way and for the same purpose as database.bin but it holds the current session data only. The data from this file will be merged to the database.bin on the next app unlocking with the master password.
\n
session.bin file holds the session data of the email accounts. The file is used if the Persistent Session feature is enabled for at least one account (the feature introduced since v4.2.0 version with experimental label, #227). The file is encrypted with 32 bytes length key randomly generated and stored in settings.bin.
\n
log.log file keeps log lines. The log level by default is set to error (see config.json file).
\n
\n
Removing the app
\n
It's recommended to perform the following actions before uninstalling the app:
\n
\n
If you had the Keep me signed in feature enabled (see screenshot), click Log-out action in the app menu (see screenshot). That will remove locally stored master password (done with node-keytar). You can also remove it having the app already uninstalled, but that would be a more complicated way as you will have to manually edit the system's keychain.
\n
Remove settings folder manually. You can locate settings folder path clicking Open setting folder app/tray menu item (see screenshot) or reading app.getPath(name =\"userData\") related app.getPath(name) section here.
\n
\n
",
"readmeOriginal": "
\n \n
\n
ElectronMail is an Electron-based unofficial desktop client for ProtonMail. The app aims to provide enhanced desktop user experience enabling features that are not supported by the official in-browser web clients.\nIt is written in TypeScript and uses Angular.
\n
\n\n
\n
\n
Download
\n
The download page with Linux/OSX/Windows installation packages is here.
\n
The way of verifying that the installation packages attached to the releases have been assembled from the source code is being provided.
\n
Some package types are available for installing from the repositories (AUR/Pacman and Snap repositories are being maintained by @joshirio and MPR/Debian repo by @hiddeninthesand):
⚙️Cross platform. The app works on Linux/OSX/Windows platforms. Binary installation packages located here.
\n
\n
\n
🔎Full-text search. Including email body content scanning capability. Enabled with v2.2.0 release. See the respective issue for details.
\n
\n
\n
🔎JavaScript-based/unlimited messages filtering. Enabled since v4.11.0 release. See the respective #257 for details. Requires local store feature to be enabled.
\n
\n
\n
📦Offline access to the email messages (attachments content not stored locally, but emails body content). The local store feature enables storing your messages in the encrypted database.bin file (see FAQ for file purpose details). So the app allows you to view your messages offline, running full-text search against them, exporting them to EML/JSON files. etc. Enabled since v2.0.0 release.
\n
\n
\n
📫Multi accounts support including supporting individual API entry points. For example, you can force the specific email account added in the app connect to the email provider via the Tor only by selecting the Tor version 3 address API entry point in the dropdown list and configuring a proxy as described in this message.
\n
\n
\n
🔓Automatic login into the app with a remembered the system keychain remembered master (keep me signed in feature). Integration with as a system keychain is done with the keytar module. By the way, on Linux KeePassXC implements the Secret Service interface and so it can be acting as a system keychain (for details, see the \"automatic login into the app\"-related point in the FAQ).
\n
\n
\n
🔓Automatic login into the email accounts, including filling 2FA tokens. Two auto-login delay scenarios supported in order to make it harder to correlate the identities, see the respective issue.
\n
\n
\n
🔓Persistent email account sessions. The feature introduced since v4.2.0 version with the experimental label, #227. The feature enables the scenario when you to enter the account credentials on the login form only once, manually or automatically by the app, and then you never see the login form anymore for this email account even if you restart the app (unless you explicitly dropped the session in the admin area or it got dropped by the service due to the inactivity/expiration). If this feature is enabled for the account, manual credentials filling is the preferred option as a more secure option since you don't save the account credentials anywhere (credentials are encrypted though even if saved, see settings.bin file description in the FAQ).
\n
\n
\n
🔐Encrypted local storage with switchable predefined key derivation and encryption presets. Argon2 is used as the default key derivation function.
\n
\n
\n
⚙️Switchable accounts handle buttons positioning (top , left, left-thin). See details in #36 and #175. Demo screenshots placed in the images folder (specifically this image).
\n
\n
\n
📦Batch emails export to EML files (attachments can optionally be exported in online / live mode, not available in offline mode since not stored locally). Feature released with v2.0.0-beta.4 version, requires local store feature to be enabled.
\n
\n
\n
🔐Built-in/prepackaged web clients. The prepackaged with the app proton web clients assembled from source code, see the respective official repositories. See 79 and 80 issues for details.
\n
\n
\n
⚙️Configuring proxy per account support. Enabled since v3.0.0 release. See 113 and 120 issues for details.
🔔System tray icon with a total number of unread messages shown on top of it. Enabling local store improves this feature, see #30.
\n
\n
\n
⚙️Starting minimized to tray and closing to tray opt-out features.
\n
\n
\n
🔔Native notifications for individual accounts clicking on which focuses the app window and selects respective account in the accounts list.
\n
\n
\n
📆Calendar notifications / alarms regardless of the open page (mail/calendar/settings/account/drive). The opt-in feature has been enabled since v4.9.0. See #229 for details.
\n
\n
\n
😎Making all email \"read\" in a single mouse click. Enabled since v3.8.0. Requires local store feature to be enabled.
\n
\n
\n
😎Routing images through proxy. The opt-in feature has been enabled since v4.9.0. See #312 for details.
\n
\n
\n
😎Batch mails removing bypassing the trash. Enabled since v4.9.0. Requires local store feature to be enabled.
\n
\n
\n
😎Batch mails moving between folders. Enabled since v4.5.0. Requires local store feature to be enabled.
\n
\n
\n
😎Per-account custom CSS injection (per-account styling). Enabled since v4.10.0. See #355 for details.
How to build your own installation package from source code
\n
Building on Continuous Integration server
\n
The reproducible builds idea is respected by the project. So the simplest way to prepare your own installation package from the source code is to clone the project. The respective GitHub Actions CI config file comes with the project.
\n
Building locally
\n
\n
Regardless of the platform you are working on, you will need to have Node.js v16.13.x installed. You might want to use Node Version Manager to be able to switch between the Node.js versions:\n
Make sure you are using npm v7+, not the v6 (run npm -v to see the version).
\n
Some native modules require compiling process to be involved and for that Python and C++ compiler need to be installed on the system:\n
\n
On Windows: the simplest way to install all the needed stuff on Windows is to run npm install --global --production windows-build-tools CLI command.
\n
On Linux: python, make and a C/C++ compiler toolchain, like GCC are most likely already installed. Besides keytar needs libsecret library to be installed.
\n
On macOS: python and Xcode need to be installed. You also need to install the Command Line Tools via Xcode, can be found under the Xcode -> Preferences -> Downloads menu.
\n
\n
\n
ProtonMail's WebClient requires addition environment setup if you run Windows, see.
\n
Clone this project to your local device. If you are going to contribute, consider cloning the forked into your own GitHub account project.
Install dependencies running pnpm install --frozen-lockfile (setting PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 environment variable might speed up the process).
\n
Build app running pnpm run app:dist.
\n
Build a package to install running pnpm run electron-builder:dist command to build Windows/Mac OS X package and one of the following commands to build Linux package:\n
\n
pnpm run electron-builder:dist:linux:appimage
\n
pnpm run electron-builder:dist:linux:deb
\n
pnpm run electron-builder:dist:linux:freebsd
\n
pnpm run electron-builder:dist:linux:pacman
\n
pnpm run electron-builder:dist:linux:rpm
\n
pnpm run electron-builder:dist:linux:snap
\n
\n
\n
The assembled installation package comes into the ./dist folder.
\n
\n
To recap, considering that all the described build requirements are met, the short command to build let's say Arch Linux package will be pnpm install --frozen-lockfile && pnpm run app:dist && pnpm run electron-builder:dist:linux:pacman.
\n
Data/config files created and used by the app
\n
If you want to backup the app data these are only files you need to take care of (files localed in the settings folder):
\n
\n
config.json file keeps config parameters. There is no sensitive data in this file, so unencrypted.
\n
settings.bin file keeps added to the app accounts including credentials if a user decided to save them. The file is encrypted with 32 bytes length key derived from the master password.
\n
database.bin file is a local database that keeps fetched emails/folders/contacts entities if the local store feature was enabled for at least one account. The file is encrypted with 32 bytes length key randomly generated and stored in settings.bin. The app by design flushes and loads to memory the database.bin file as a whole thing but not like encrypting only the specific columns of the database. It's of course not an optimal approach in terms of performance and resource consumption but it allows keeping the metadata hidden. You can see some details here.
\n
database-session.bin file is being used in the same way and for the same purpose as database.bin but it holds the current session data only. The data from this file will be merged to the database.bin on the next app unlocking with the master password.
\n
session.bin file holds the session data of the email accounts. The file is used if the Persistent Session feature is enabled for at least one account (the feature introduced since v4.2.0 version with experimental label, #227). The file is encrypted with 32 bytes length key randomly generated and stored in settings.bin.
\n
log.log file keeps log lines. The log level by default is set to error (see config.json file).
\n
\n
Removing the app
\n
It's recommended to perform the following actions before uninstalling the app:
\n
\n
If you had the Keep me signed in feature enabled (see screenshot), click Log-out action in the app menu (see screenshot). That will remove locally stored master password (done with node-keytar). You can also remove it having the app already uninstalled, but that would be a more complicated way as you will have to manually edit the system's keychain.
\n
Remove settings folder manually. You can locate settings folder path clicking Open setting folder app/tray menu item (see screenshot) or reading app.getPath(name =\"userData\") related app.getPath(name) section here.
A Desktop app for processing all rows of Excel files
\n
Simply generates an array of items from the rows of an Excel file and does the repetitive tedious operations step by step\nrecursively till every item of the array is processed. For example downloads all the URL's in an Excel file.
Just select or drag & drop an Excel file, then select the output folder for the downloaded images or files. All the items\nin the Excel file will be downloaded into the selected folder, and you will be notified about the state of ongoing progress.
Asset URL ( can be any type of file jpg, jpeg, png, txt, doc, etc)
\n
\n
\n
\n\n
\n \n
Currently there is no limit for n, I tested with 4000 items and unless your IP is banned from the publisher there\nis no problem to download as much as you can.
\n
Demo
\n
\n
Development
\n
You need to have Node.js installed on your computer in order to develop & build this app.
\n
$ git clone https://github.com/btargac/excel-parser-processor.git\n$ cd excel-parser-processor\n$ npm install\n$ npm run build\n$ npm start
\n
If you are changing the view or renderer related things, you can use Webpack's watch feature with
\n
$ npm run start-renderer-dev
\n
After running this command, you'll see a webpack process watching your files after a new renderer.bundle.js is generated\nyou can refresh the Excel parser processor app window with cmd + R or ctrl + R depending on your system.
\n
To generate binaries on your computer after your development is completed, you can run;
\n
$ npm run dist
\n
This will add binaries under /release folder on your project folder.
\n
/release folder is ignored at the repository. Github Actions will be building the binaries after your branch is merged with master.
\n
Contributors
\n
This project exists thanks to all the people who contribute. [Code of Conduct].\n
A Desktop app for processing all rows of Excel files
\n
Simply generates an array of items from the rows of an Excel file and does the repetitive tedious operations step by step\nrecursively till every item of the array is processed. For example downloads all the URL's in an Excel file.
Just select or drag & drop an Excel file, then select the output folder for the downloaded images or files. All the items\nin the Excel file will be downloaded into the selected folder, and you will be notified about the state of ongoing progress.
Asset URL ( can be any type of file jpg, jpeg, png, txt, doc, etc)
\n
\n
\n
\n\n
\n \n
Currently there is no limit for n, I tested with 4000 items and unless your IP is banned from the publisher there\nis no problem to download as much as you can.
\n
Demo
\n
\n
Development
\n
You need to have Node.js installed on your computer in order to develop & build this app.
\n
$ git clone https://github.com/btargac/excel-parser-processor.git\n$ cd excel-parser-processor\n$ npm install\n$ npm run build\n$ npm start
\n
If you are changing the view or renderer related things, you can use Webpack's watch feature with
\n
$ npm run start-renderer-dev
\n
After running this command, you'll see a webpack process watching your files after a new renderer.bundle.js is generated\nyou can refresh the Excel parser processor app window with cmd + R or ctrl + R depending on your system.
\n
To generate binaries on your computer after your development is completed, you can run;
\n
$ npm run dist
\n
This will add binaries under /release folder on your project folder.
\n
/release folder is ignored at the repository. Github Actions will be building the binaries after your branch is merged with master.
\n
Contributors
\n
This project exists thanks to all the people who contribute. [Code of Conduct].\n
EnderFramework enables you to build cross-platform applications using JavaScript, HTML, and CSS. It is based on Electron. Why make a new framework out of another framework? Glad you asked! This framework will be more focused on introducing custom elements, custom designs, and custom APIs on top of the originals! And giving the user the ability to build a full-on custom app, with a fully customizable UI using CSS, in a matter of minutes.
\n
You can find out more about this framework in here!
\n
Note: the framework is still in the very early development stages. We are open to suggestions.
\n
Installation
\n
To run EnderFramework, you need to have NodeJS and VS Build Tools 2017 installed on your device. Execute npm install to install all the modules. And then, after the installation process is done, execute npm start.
\n
You can change the start file code (core/start.js) to start any app! Look for the ready event in the file.
\n
app.on(\"ready\",function(){\n for(vari=0;i<process.argv.length;i++){\n if(process.argv[i].includes(\"--start=\")){//You can change this to true!\n done=true;\n varappID=process.argv[i].replace(/\\s/g,'').substring(8),\n length=appID.replace(/[^.]/g,\"\").length;\n /*And replace the code above with any value you want, such as:\n var appID = \"com.enderadel.test\",\n length = appID.replace(/[^.]/g, \"\").length;*/\n [...]\n }elseif(process.argv[i]==\"--store\"){//You can change this to true!\n [...]\n }elseif(process.argv[i]==\"--installer\"){//You can change this to true!\n [...]\n }elseif(process.argv[i]==\"--studio\"){//You can change this to true!\n [...]\n }elseif(process.argv[i]==\"--settings\"){//You can change this to true!\n [...]\n }\n }\n [...]\n});
\n
Quick start
\n
Coming soon!
\n
Reporting Bugs and requesting Features
\n
You can report bugs and request new features by opening a new issue.
\n
Contributing
\n
If you are interested in reporting/fixing issues and contributing directly to the code base, feel free to do so! Please read CONTRIBUTING.md for more information!
\n
Note:As you can see, I'm not very active on GitHub. The reason is because I'm a student. You can contact me on my email (adel.sbeh.email@gmail.com) regarding any concern!
\n
Screenshots
\n
\n
\n
The framework supports light mode and dark mode!\n\n
When using the logos of EnderFramework, or GitHub, be sure to follow the GitHub logo guidelines.
\n
More
\n
Follow @_EnderCommunity on Twitter to keep yourself up-to-date on everything related to the framework. You can also join our Discord server.
\n
EnderFramework is the property of EnderCommunity
\n
",
"readmeOriginal": "
\n
\n
EnderFramework enables you to build cross-platform applications using JavaScript, HTML, and CSS. It is based on Electron. Why make a new framework out of another framework? Glad you asked! This framework will be more focused on introducing custom elements, custom designs, and custom APIs on top of the originals! And giving the user the ability to build a full-on custom app, with a fully customizable UI using CSS, in a matter of minutes.
\n
You can find out more about this framework in here!
\n
Note: the framework is still in the very early development stages. We are open to suggestions.
\n
Installation
\n
To run EnderFramework, you need to have NodeJS and VS Build Tools 2017 installed on your device. Execute npm install to install all the modules. And then, after the installation process is done, execute npm start.
\n
You can change the start file code (core/start.js) to start any app! Look for the ready event in the file.
\n
app.on(\"ready\",function(){\n for(vari=0;i<process.argv.length;i++){\n if(process.argv[i].includes(\"--start=\")){//You can change this to true!\n done=true;\n varappID=process.argv[i].replace(/\\s/g,'').substring(8),\n length=appID.replace(/[^.]/g,\"\").length;\n /*And replace the code above with any value you want, such as:\n var appID = \"com.enderadel.test\",\n length = appID.replace(/[^.]/g, \"\").length;*/\n [...]\n }elseif(process.argv[i]==\"--store\"){//You can change this to true!\n [...]\n }elseif(process.argv[i]==\"--installer\"){//You can change this to true!\n [...]\n }elseif(process.argv[i]==\"--studio\"){//You can change this to true!\n [...]\n }elseif(process.argv[i]==\"--settings\"){//You can change this to true!\n [...]\n }\n }\n [...]\n});
\n
Quick start
\n
Coming soon!
\n
Reporting Bugs and requesting Features
\n
You can report bugs and request new features by opening a new issue.
\n
Contributing
\n
If you are interested in reporting/fixing issues and contributing directly to the code base, feel free to do so! Please read CONTRIBUTING.md for more information!
\n
Note:As you can see, I'm not very active on GitHub. The reason is because I'm a student. You can contact me on my email (adel.sbeh.email@gmail.com) regarding any concern!
\n
Screenshots
\n
\n
\n
The framework supports light mode and dark mode!\n\n
This is a free, cross-platform ETCD v3 client and GUI. The goal of the project is twofold:
\n
\n
Provide an efficient, modern GUI for desktop (Windows, Linux, Mac), mobile (iOS and Android) and web.
\n
Cover all ETCD functionality. Anything you can do with etcdctl, you should be able to do with this tool as well. This app should be useful for simple and power users alike.
\n
\n
Please note that currently ETCD V2 API is not supported! At the moment, we support V3 only.
\n
Features
\n
Available now (v1.2)
\n
Currently, the following features are implemented:
\n
\n
Key management:\n
\n
Manage (browse, create, edit, delete) keys.
\n
Create keys with TTL
\n
Key browser has multiple views: tree or list with paging.
\n
Key list live updates: refresh list when the value of any key changes.
\n
Manage revisions: list revisions of any key and revert to any previous value.
\n
\n
\n
Settings and config:\n
\n
Able to use multiple config profiles, allowing you to manage any number of ETCD clusters with dedicated settings.
\n
Import / export settings: save settings to or load from file.
\n
\n
\n
Authentication and security:\n
\n
Basic authentication: (username / password)
\n
HTTPS client certificate authentication
\n
Supports both HTTP and HTTPS (secure) connections
\n
Supports no auth (ETCD with authentication disabled)
\n
\n
\n
Other functions:\n
\n
Display basic info about ETCD cluster and its nodes, perform health checks.
\n
Manage leases: list and revoke leases, view details.
This release is mainly for contributors. There will be no new features in this one. Instead, we gonna focus solely on making it easier to understand how the code works and how to get started with contributing. In order to achieve this, we'll refactor many parts of the code and we'll also try to provide better documentation for contributors and a project dashboard.
\n
As for refactoring, some of the things we gonna change are:
\n
\n
Better typing (we gonna add missing types, no \"any\", \"unknown\" and crap like that)
\n
Better tests (we are planning to replace Spectron with Cypress)
\n
Smaller, more focused, easy to maintain components. We are going to to use the Vue 3 Composition API here.
\n
Better folder structure for source files.
\n
Proper Dependency Injection support (for services, filters etc).
We plan to add tons of cool features in the future. The most important ones are listed below.:
\n
Features
\n
\n
Watchers: more responders, such as Email, Log to file, Log to REST API as well as app integrations like Slack, Google Chat, Viber etc.
\n
Cluster: maintenance / admin features and more detailed cluster info
\n
ETCD Dashboard: live dashboard with graphs.
\n
Complex queries using transactions.
\n
Diff tool: compare the revisions of any two keys (much like Total Commander).
\n
Report generation in different formats (HTML, PDF, XML etc)
\n
Better in-app console
\n
... and much more!
\n
\n
Future platforms
\n
\n
Android and iOS
\n
Web (browser version)
\n
\n
A better organized overview of these plans will be available soon. Stay tuned :)
\n
Installation
\n
End users..
\n
The current stable (prod) version is 1.2. It's available for Mac OS X (10.15.5 Catalina+), MS Windows (7, 8, 10+) and some major Linux distros (Ubuntu 10.04+, Arch etc). The following are pre-built binaries and this is the recommended way to install.
\n
If you are using a more or less recent major Linux distro (Ubuntu, Redhat, Suse etc), or Ubuntu LTS or some up-to-date rolling release distro like Arch, everything should work fine. Most older Linux systems should be supported as well. However, very old Linux versions might not work as expected. If you have difficulties installing the app, please report the problem using our issue tracker.
Once you have the code, simply execute the following commands:
\n
yarn install\n
\n
The next step is to compile the GRPC Node extension. This requires the usual build tools (gcc, make etc) to be installed. Make sure you have these, then run:
... where ELECTRON_VERSION is the exact version number of the Electron framework the app uses. You can determine this by running:
\n
yarn list electron\n
\n
Finally, start the dev server in the following way:
\n
yarn electron:serve\n
\n
This will start a dev build and the app should appear shortly.
\n
Usage and support
\n
First of all, in order to work properly, ETCD Manager must be configured.
\n
You need to provide only two mandatory settings: the host and the port ETCD is running at. You'll find these on the settings screen, under the ETCD tab.\nIf your ETCD host requires authentication, you will also need to provide a password / username pair or certificates / keys, which you can do under the auth tab.\nThere are several additional configuration options, but those are all optional.
\n
Detailed documentation is not available (yet), but you may want to activate quick help, which is available everywhere. Press CTRL / CMD + H to open the help pane. Here you'll find some basic info as well as all the keyboard shortcuts. This should be enough to get you started.
\n
If you still need help, please feel free to contact us. Create a issue (question / support request).
\n
Once the documentation is ready, we'll upload it to the website.
\n
Upgrading
\n
If you've installed the app using the Windows or Mac installer or the Linux AppImage, you'll be notified automatically whenever a new release is available. Simply restart the app, and it'll check for updates.
\n
Otherwise, you have to download and install the new version manually.
\n
As for the dev version, you may update that by the usual means (Yarn or Git). In any case, please read our changelog for an overview of the most recent changes.
\n
Bugs and feature requests
\n
If you find a bug, please report it using our issue tracker.
\n
This is also the place for requesting new features or asking questions. Please label your issue appropriately, use the \"bug\", \"enchantment\" and \"question\" labels, respectively.
This is a free, cross-platform ETCD v3 client and GUI. The goal of the project is twofold:
\n
\n
Provide an efficient, modern GUI for desktop (Windows, Linux, Mac), mobile (iOS and Android) and web.
\n
Cover all ETCD functionality. Anything you can do with etcdctl, you should be able to do with this tool as well. This app should be useful for simple and power users alike.
\n
\n
Please note that currently ETCD V2 API is not supported! At the moment, we support V3 only.
\n
Features
\n
Available now (v1.2)
\n
Currently, the following features are implemented:
\n
\n
Key management:\n
\n
Manage (browse, create, edit, delete) keys.
\n
Create keys with TTL
\n
Key browser has multiple views: tree or list with paging.
\n
Key list live updates: refresh list when the value of any key changes.
\n
Manage revisions: list revisions of any key and revert to any previous value.
\n
\n
\n
Settings and config:\n
\n
Able to use multiple config profiles, allowing you to manage any number of ETCD clusters with dedicated settings.
\n
Import / export settings: save settings to or load from file.
\n
\n
\n
Authentication and security:\n
\n
Basic authentication: (username / password)
\n
HTTPS client certificate authentication
\n
Supports both HTTP and HTTPS (secure) connections
\n
Supports no auth (ETCD with authentication disabled)
\n
\n
\n
Other functions:\n
\n
Display basic info about ETCD cluster and its nodes, perform health checks.
\n
Manage leases: list and revoke leases, view details.
This release is mainly for contributors. There will be no new features in this one. Instead, we gonna focus solely on making it easier to understand how the code works and how to get started with contributing. In order to achieve this, we'll refactor many parts of the code and we'll also try to provide better documentation for contributors and a project dashboard.
\n
As for refactoring, some of the things we gonna change are:
\n
\n
Better typing (we gonna add missing types, no \"any\", \"unknown\" and crap like that)
\n
Better tests (we are planning to replace Spectron with Cypress)
\n
Smaller, more focused, easy to maintain components. We are going to to use the Vue 3 Composition API here.
\n
Better folder structure for source files.
\n
Proper Dependency Injection support (for services, filters etc).
We plan to add tons of cool features in the future. The most important ones are listed below.:
\n
Features
\n
\n
Watchers: more responders, such as Email, Log to file, Log to REST API as well as app integrations like Slack, Google Chat, Viber etc.
\n
Cluster: maintenance / admin features and more detailed cluster info
\n
ETCD Dashboard: live dashboard with graphs.
\n
Complex queries using transactions.
\n
Diff tool: compare the revisions of any two keys (much like Total Commander).
\n
Report generation in different formats (HTML, PDF, XML etc)
\n
Better in-app console
\n
... and much more!
\n
\n
Future platforms
\n
\n
Android and iOS
\n
Web (browser version)
\n
\n
A better organized overview of these plans will be available soon. Stay tuned :)
\n
Installation
\n
End users..
\n
The current stable (prod) version is 1.2. It's available for Mac OS X (10.15.5 Catalina+), MS Windows (7, 8, 10+) and some major Linux distros (Ubuntu 10.04+, Arch etc). The following are pre-built binaries and this is the recommended way to install.
\n
If you are using a more or less recent major Linux distro (Ubuntu, Redhat, Suse etc), or Ubuntu LTS or some up-to-date rolling release distro like Arch, everything should work fine. Most older Linux systems should be supported as well. However, very old Linux versions might not work as expected. If you have difficulties installing the app, please report the problem using our issue tracker.
Once you have the code, simply execute the following commands:
\n
yarn install\n
\n
The next step is to compile the GRPC Node extension. This requires the usual build tools (gcc, make etc) to be installed. Make sure you have these, then run:
... where ELECTRON_VERSION is the exact version number of the Electron framework the app uses. You can determine this by running:
\n
yarn list electron\n
\n
Finally, start the dev server in the following way:
\n
yarn electron:serve\n
\n
This will start a dev build and the app should appear shortly.
\n
Usage and support
\n
First of all, in order to work properly, ETCD Manager must be configured.
\n
You need to provide only two mandatory settings: the host and the port ETCD is running at. You'll find these on the settings screen, under the ETCD tab.\nIf your ETCD host requires authentication, you will also need to provide a password / username pair or certificates / keys, which you can do under the auth tab.\nThere are several additional configuration options, but those are all optional.
\n
Detailed documentation is not available (yet), but you may want to activate quick help, which is available everywhere. Press CTRL / CMD + H to open the help pane. Here you'll find some basic info as well as all the keyboard shortcuts. This should be enough to get you started.
\n
If you still need help, please feel free to contact us. Create a issue (question / support request).
\n
Once the documentation is ready, we'll upload it to the website.
\n
Upgrading
\n
If you've installed the app using the Windows or Mac installer or the Linux AppImage, you'll be notified automatically whenever a new release is available. Simply restart the app, and it'll check for updates.
\n
Otherwise, you have to download and install the new version manually.
\n
As for the dev version, you may update that by the usual means (Yarn or Git). In any case, please read our changelog for an overview of the most recent changes.
\n
Bugs and feature requests
\n
If you find a bug, please report it using our issue tracker.
\n
This is also the place for requesting new features or asking questions. Please label your issue appropriately, use the \"bug\", \"enchantment\" and \"question\" labels, respectively.
Desktop app to clean metadata from images, videos, PDFs, and other files.
\n
\n
\n
!!!!! NOTE - UPGRADE TO 3.6.0+ ASAP !!!!!
\n
If you are running a version of ExifCleaner before 3.6.0, upgrade immediately! A security vulnerability was found in exiftool, the command-line application that powers ExifCleaner under the hood, and this was updated in ExifCleaner 3.5.0. There was also an XSS and Electron remote shell vulnerability due to unsanitized HTML output that was fixed in ExifCleaner 3.6.0.
\n
Benefits
\n
\n
Fast
\n
Drag & Drop
\n
Free and open source (MIT)
\n
Windows, Mac, and Linux
\n
Supports popular image formats such as PNG, JPG, GIF, and TIFF
\n
Supports popular video formats such as M4A, MOV, and MP4
Below is a full list of supported file types that ExifCleaner will remove metadata for. It's based on which file types ExifTool supports write operations for.
\n
\n
3G2, 3GP2 – 3rd Gen. Partnership Project 2 a/v (QuickTime-based)
\n
3GP, 3GPP – 3rd Gen. Partnership Project a/v (QuickTime-based)
ExifCleaner has the same writer limitations as the underlying exiftool it depends on. Taken from the official website:
\n
\n
ExifTool will not rewrite a file if it detects a significant problem with the file format.
\n
ExifTool has been tested with a wide range of different images, but since it is not possible to test it with every known image type, there is the possibility that it will corrupt some files. Be sure to keep backups of your files.
\n
Even though ExifTool does some validation of the information written, it is still possible to write illegal values which may cause problems when reading the images with other software. So take care to validate the information you are writing.
\n
ExifTool is not guaranteed to remove metadata completely from a file when attempting to delete all metadata. For JPEG images, all APP segments (except Adobe APP14, which is not removed by default) and trailers are removed which effectively removes all metadata, but for other formats the results are less complete:\n
\n
JPEG - APP segments (except Adobe APP14) and trailers are removed.
\n
TIFF - XMP, IPTC, ICC_Profile and the ExifIFD are removed, but some EXIF may remain in IFD0. (The CommonIFD0 Shortcut tag is provided to simplify removal of common metadata tags from IFD0.)
\n
PNG - Only XMP, EXIF, ICC_Profile and native PNG textual data chunks are removed.
\n
PDF - The original metadata is never actually removed.
\n
PS - Only XMP and some native PostScript tags may be deleted.
\n
MOV/MP4 - Most top-level metadata is removed.
\n
RAW formats - It is not recommended to remove all metadata from RAW images because this will likely remove some proprietary information that is necessary for proper rendering of the image.
\n
\n
\n
\n
Translations
\n
New translations and corrections to existing translations are welcome! See the Adding a Translation section if there is a language you would like to add. Here is the current translations status:
Verifying checksum of downloads from the Github releases page
\n
Download the latest.yml (Windows), latest-mac.yml (Mac), or latest-linux.yml (Linux) file from the release page that corresponds to your operating system. Then run the following command to generate a sha checksum. ExifCleaner 3.5.0 is used here as an example.
\n
On Mac, Linux, and on Windows using the Linux Subsystem for Windows:
The output should match the sha512 value in the latest.yml file for the version you downloaded. As of now there is no checksum generated for the Linux RPM version (appears to be an electron-build issue, see Github issue here).
\n
Development
\n
Built with Electron. Uses node-exiftool as a wrapper for Exiftool binaries. To see the current list of NPM dependencies, run:
Pull down the latest ExifTool binaries (in Windows, run this within the Linux Subsystem for Windows):
\n
yarn run update-exiftool
\n
Finally, launch the application. This supports Hot Module Reload (HMR) so you will automatically see your changes every time you save a file.
\n
yarn run dev
\n
Contributing
\n
This app is mostly feature complete. I want to keep it simple and not add a bunch of bloat to it. And I want to avoid release churn. That said, there are a couple small features that might be worth adding. And there are a few minor bugs or points of cleanup that would be worth polishing. If you'd like to help check out the Issue Tracker which contains an exhaustive list of known issues. Just pick one and submit a Pull Request or leave a comment and I can provide guidance or help if you need it. Make sure to test the app out to see if it still works though. There isn't much going on in this app so it should be easy enough to do. I might add some automated tests later on to help with this. For now it's just been me working on the app so manual testing has worked out fine.
\n
TypeScript code is formatted using Prettier.
\n
Adding a Translation
\n
Adding a translation is easy. All you have to do is go to the translation list, click on \"Edit this file\", and add an entry for the new language underneath the other ones. So for example if you wanted to add a Spanish translation, where it says:
and repeat that pattern for each of the entries. That's probably the easiest way to contribute. If you want to be able to see all of your translations working in a live app before submitting, you can also do this:
\n\n
Fork the project on Github
\n
Follow the directions here to get ExifCleaner running in development mode on your computer
\n
Then update the strings.json file as mentioned above, and quit the program and relaunch it to see your changes. When you're finished, commit your changes from the command line with for example git commit -am \"Finished adding translations\". Then run git push origin master, and go to the project URL your forked it to (for example https://github.com/myusernamehere/exifcleaner) and click the button to open a new Pull Request.
\n\n
If you want to run the app with a specific locale without changing your system preferences, use one of the following commands with the correct language code. If you don't see your language listed below, just follow the pattern and plug in your own language code from this list.
\n
yarn run dev --lang=en #English\nyarn run dev --lang=fr #French\nyarn run dev --lang=pl #Polish\nyarn run dev --lang=ja #Japanese\nyarn run dev --lang=es #Spanish\nyarn run dev --lang=de #German
\n
Let me know if you run into any issues, I can guide you through the process if you get stuck.
\n
Linux AppImage Notes
\n
To mount the AppImage and inspect it's contents:
\n
./ExifCleaner-x.y.z.AppImage --appimage-mount
\n
Where x.y.z is the release version number
\n
Smoke test checklist for new releases
\n
On all platforms:
\n
\n
Linux
\n
Windows
\n
Mac
\n
\n
Perform the following manual tests before a release:
\n
\n
Drag and drop hundreds of files
\n
File -> Open dialog
\n
Switch locale to each language and check translations
\n
Switch between light and dark mode
\n
Open \"About\" dialog
\n
\n
Publishing a new release
\n
This section is really for my own reference when publishing a new release.
\n
Bump the version with release (choose a \"pre\" release for point releases for testing):
\n
yarn run release
\n
Check the Github release page and confirm a new draft release was created. Then run the publish command:
\n
yarn run publish
\n
Once you're happy with the release and want to finalize it, remove the draft flag on the Github releases page.
\n
Contributors
\n
Thanks to all the people who submitted bug reports and fixes. I've tried to include everyone so if I've missed you it was by accident, just let me know and I'll add you.
\n
\n
@m1chu - Polish translation, fix for Mac dock bug on non-Mac platforms, help debugging Unicode filename bug
\n
@LukasThyWalls - help debugging Unicode filename bug, feature suggestions
\n
@AKKED - Japanese translation, help debugging Unicode filename bug
Desktop app to clean metadata from images, videos, PDFs, and other files.
\n
\n
\n
!!!!! NOTE - UPGRADE TO 3.6.0+ ASAP !!!!!
\n
If you are running a version of ExifCleaner before 3.6.0, upgrade immediately! A security vulnerability was found in exiftool, the command-line application that powers ExifCleaner under the hood, and this was updated in ExifCleaner 3.5.0. There was also an XSS and Electron remote shell vulnerability due to unsanitized HTML output that was fixed in ExifCleaner 3.6.0.
\n
Benefits
\n
\n
Fast
\n
Drag & Drop
\n
Free and open source (MIT)
\n
Windows, Mac, and Linux
\n
Supports popular image formats such as PNG, JPG, GIF, and TIFF
\n
Supports popular video formats such as M4A, MOV, and MP4
Below is a full list of supported file types that ExifCleaner will remove metadata for. It's based on which file types ExifTool supports write operations for.
\n
\n
3G2, 3GP2 – 3rd Gen. Partnership Project 2 a/v (QuickTime-based)
\n
3GP, 3GPP – 3rd Gen. Partnership Project a/v (QuickTime-based)
ExifCleaner has the same writer limitations as the underlying exiftool it depends on. Taken from the official website:
\n
\n
ExifTool will not rewrite a file if it detects a significant problem with the file format.
\n
ExifTool has been tested with a wide range of different images, but since it is not possible to test it with every known image type, there is the possibility that it will corrupt some files. Be sure to keep backups of your files.
\n
Even though ExifTool does some validation of the information written, it is still possible to write illegal values which may cause problems when reading the images with other software. So take care to validate the information you are writing.
\n
ExifTool is not guaranteed to remove metadata completely from a file when attempting to delete all metadata. For JPEG images, all APP segments (except Adobe APP14, which is not removed by default) and trailers are removed which effectively removes all metadata, but for other formats the results are less complete:\n
\n
JPEG - APP segments (except Adobe APP14) and trailers are removed.
\n
TIFF - XMP, IPTC, ICC_Profile and the ExifIFD are removed, but some EXIF may remain in IFD0. (The CommonIFD0 Shortcut tag is provided to simplify removal of common metadata tags from IFD0.)
\n
PNG - Only XMP, EXIF, ICC_Profile and native PNG textual data chunks are removed.
\n
PDF - The original metadata is never actually removed.
\n
PS - Only XMP and some native PostScript tags may be deleted.
\n
MOV/MP4 - Most top-level metadata is removed.
\n
RAW formats - It is not recommended to remove all metadata from RAW images because this will likely remove some proprietary information that is necessary for proper rendering of the image.
\n
\n
\n
\n
Translations
\n
New translations and corrections to existing translations are welcome! See the Adding a Translation section if there is a language you would like to add. Here is the current translations status:
Verifying checksum of downloads from the Github releases page
\n
Download the latest.yml (Windows), latest-mac.yml (Mac), or latest-linux.yml (Linux) file from the release page that corresponds to your operating system. Then run the following command to generate a sha checksum. ExifCleaner 3.5.0 is used here as an example.
\n
On Mac, Linux, and on Windows using the Linux Subsystem for Windows:
The output should match the sha512 value in the latest.yml file for the version you downloaded. As of now there is no checksum generated for the Linux RPM version (appears to be an electron-build issue, see Github issue here).
\n
Development
\n
Built with Electron. Uses node-exiftool as a wrapper for Exiftool binaries. To see the current list of NPM dependencies, run:
Pull down the latest ExifTool binaries (in Windows, run this within the Linux Subsystem for Windows):
\n
yarn run update-exiftool
\n
Finally, launch the application. This supports Hot Module Reload (HMR) so you will automatically see your changes every time you save a file.
\n
yarn run dev
\n
Contributing
\n
This app is mostly feature complete. I want to keep it simple and not add a bunch of bloat to it. And I want to avoid release churn. That said, there are a couple small features that might be worth adding. And there are a few minor bugs or points of cleanup that would be worth polishing. If you'd like to help check out the Issue Tracker which contains an exhaustive list of known issues. Just pick one and submit a Pull Request or leave a comment and I can provide guidance or help if you need it. Make sure to test the app out to see if it still works though. There isn't much going on in this app so it should be easy enough to do. I might add some automated tests later on to help with this. For now it's just been me working on the app so manual testing has worked out fine.
\n
TypeScript code is formatted using Prettier.
\n
Adding a Translation
\n
Adding a translation is easy. All you have to do is go to the translation list, click on \"Edit this file\", and add an entry for the new language underneath the other ones. So for example if you wanted to add a Spanish translation, where it says:
and repeat that pattern for each of the entries. That's probably the easiest way to contribute. If you want to be able to see all of your translations working in a live app before submitting, you can also do this:
\n\n
Fork the project on Github
\n
Follow the directions here to get ExifCleaner running in development mode on your computer
\n
Then update the strings.json file as mentioned above, and quit the program and relaunch it to see your changes. When you're finished, commit your changes from the command line with for example git commit -am \"Finished adding translations\". Then run git push origin master, and go to the project URL your forked it to (for example https://github.com/myusernamehere/exifcleaner) and click the button to open a new Pull Request.
\n\n
If you want to run the app with a specific locale without changing your system preferences, use one of the following commands with the correct language code. If you don't see your language listed below, just follow the pattern and plug in your own language code from this list.
\n
yarn run dev --lang=en #English\nyarn run dev --lang=fr #French\nyarn run dev --lang=pl #Polish\nyarn run dev --lang=ja #Japanese\nyarn run dev --lang=es #Spanish\nyarn run dev --lang=de #German
\n
Let me know if you run into any issues, I can guide you through the process if you get stuck.
\n
Linux AppImage Notes
\n
To mount the AppImage and inspect it's contents:
\n
./ExifCleaner-x.y.z.AppImage --appimage-mount
\n
Where x.y.z is the release version number
\n
Smoke test checklist for new releases
\n
On all platforms:
\n
\n
Linux
\n
Windows
\n
Mac
\n
\n
Perform the following manual tests before a release:
\n
\n
Drag and drop hundreds of files
\n
File -> Open dialog
\n
Switch locale to each language and check translations
\n
Switch between light and dark mode
\n
Open \"About\" dialog
\n
\n
Publishing a new release
\n
This section is really for my own reference when publishing a new release.
\n
Bump the version with release (choose a \"pre\" release for point releases for testing):
\n
yarn run release
\n
Check the Github release page and confirm a new draft release was created. Then run the publish command:
\n
yarn run publish
\n
Once you're happy with the release and want to finalize it, remove the draft flag on the Github releases page.
\n
Contributors
\n
Thanks to all the people who submitted bug reports and fixes. I've tried to include everyone so if I've missed you it was by accident, just let me know and I'll add you.
\n
\n
@m1chu - Polish translation, fix for Mac dock bug on non-Mac platforms, help debugging Unicode filename bug
\n
@LukasThyWalls - help debugging Unicode filename bug, feature suggestions
\n
@AKKED - Japanese translation, help debugging Unicode filename bug
Flash OS images to SD cards & USB drives, safely and easily.
\n
\n
Etcher is a powerful OS image flasher built with web technologies to ensure\nflashing an SDCard or USB drive is a pleasant and safe experience. It protects\nyou from accidentally writing to your hard-drives, ensures every byte of data\nwas written correctly, and much more. It can also directly flash Raspberry Pi devices that support USB device boot mode.
Note: Etcher will run on any platform officially supported by\nElectron. Read more in their\ndocumentation.
\n
Installers
\n
Refer to the downloads page for the latest pre-made\ninstallers for all supported operating systems.
\n
Packages
\n
\n
\nPackage repository hosting is graciously provided by Cloudsmith.\nCloudsmith is the only fully hosted, cloud-native, universal package management solution, that\nenables your organization to create, store and share packages in any format, to any place, with total\nconfidence.
\n
\n
Debian and Ubuntu based Package Repository (GNU/Linux x86/x64)
Etcher is offered through the Arch User Repository and can be installed on both Manjaro and Arch systems. You can compile it from the source code in this repository using balena-etcher. The following example uses a common AUR helper to install the latest release:
\n
yay -S balena-etcher
\n
Uninstall
\n
yay -R balena-etcher
\n
Brew (macOS)
\n
Note: Etcher has to be updated manually to point to new versions,\nso it might not refer to the latest version immediately after an Etcher\nrelease.
\n
brew install balenaetcher
\n
Uninstall
\n
brew uninstall balenaetcher
\n
Chocolatey (Windows)
\n
This package is maintained by @majkinetor, and\nis kept up to date automatically.
\n
choco install etcher
\n
Uninstall
\n
choco uninstall etcher
\n
Support
\n
If you're having any problem, please raise an issue on GitHub, and\nthe balena.io team will be happy to help.
\n
License
\n
Etcher is free software and may be redistributed under the terms specified in\nthe license.
\n
",
"readmeOriginal": "
Etcher
\n
\n
Flash OS images to SD cards & USB drives, safely and easily.
\n
\n
Etcher is a powerful OS image flasher built with web technologies to ensure\nflashing an SDCard or USB drive is a pleasant and safe experience. It protects\nyou from accidentally writing to your hard-drives, ensures every byte of data\nwas written correctly, and much more. It can also directly flash Raspberry Pi devices that support USB device boot mode.
Note: Etcher will run on any platform officially supported by\nElectron. Read more in their\ndocumentation.
\n
Installers
\n
Refer to the downloads page for the latest pre-made\ninstallers for all supported operating systems.
\n
Packages
\n
\n
\nPackage repository hosting is graciously provided by Cloudsmith.\nCloudsmith is the only fully hosted, cloud-native, universal package management solution, that\nenables your organization to create, store and share packages in any format, to any place, with total\nconfidence.
\n
\n
Debian and Ubuntu based Package Repository (GNU/Linux x86/x64)
Etcher is offered through the Arch User Repository and can be installed on both Manjaro and Arch systems. You can compile it from the source code in this repository using balena-etcher. The following example uses a common AUR helper to install the latest release:
\n
yay -S balena-etcher
\n
Uninstall
\n
yay -R balena-etcher
\n
Brew (macOS)
\n
Note: Etcher has to be updated manually to point to new versions,\nso it might not refer to the latest version immediately after an Etcher\nrelease.
\n
brew install balenaetcher
\n
Uninstall
\n
brew uninstall balenaetcher
\n
Chocolatey (Windows)
\n
This package is maintained by @majkinetor, and\nis kept up to date automatically.
\n
choco install etcher
\n
Uninstall
\n
choco uninstall etcher
\n
Support
\n
If you're having any problem, please raise an issue on GitHub, and\nthe balena.io team will be happy to help.
\n
License
\n
Etcher is free software and may be redistributed under the terms specified in\nthe license.
This Explorer allows to perform various statistical analyses and data mining operations in a very easy and intuitive way. As the name implies, this software aims at exploring data and getting quick insight of the order of magnitude of the observed objects. That's why it does focus on graphical representation and mouse driven operations, unlike the traditional statistical tools cluttered with numerous dialog boxes and lists with five decimal figures. You can, however, have the detailed numbers once your analysis is completed.
Download the latest version corresponding to your system (32bit or 64bit) from the release page. The application is bundled into a single exe file, thanks to BoxedApp Packer .
\n
Linux
\n
Follow the \"Build from source\" instructions below.
\n
Build from Source
\n
Should you want to go the Build & Deploy route -you'll require node.js (developed\non v6.1.0, confirmed to work on v4.7.3) and npm (comes with node.js, developed using v3.9.5, confirmed to work on v2.15.11).
\n
Download and unzip the Source files (zip or tar.gz) from the the release page, or clone the repository:
Enter the Explorer's directory with cd explorer-1.x/app (if you downloaded it from Releases) or cd explorer/app (if you cloned the repository).
\n
Install the dependencies:
\n
npm install
\n
And launch the app:
\n
npm start
\n
Data loading
\n
At launch time, the Explorer shows a window to choose the dataset to use. You can either drag and drop a file from your computer desktop, or click the clipboard button.
\n
\n
Various file formats are accepted :
\n
\n
\n\t
Source
\n\t
File extension
\n\t
Remarks
\n
\n
\n\t
Access
\n\t
mdb , accdb
\n\t
Access 2000 or higher
\n
\n
\n\t
ARFF / KEEL
\n\t
*
\n\t
No comments at the beginning of the file. \n\tThe first line must be @relation \n\t
\n
\n
\n\t
BigQuery
\n\t
*
\n\t
A config file with a content like this: \nBigQuery \nclient_secret:/full/path/to/my_private_key.json \nquery:select * from lookerdata:cdc.project_tycho_reports limit 1000 \ntimeout:60000 \n\t
\n
\n
\n\t
dBase
\n\t
dbf
\n\t
\n
\n
\t\n\t
Excel
\n\t
xlsx
\n\t
The names of the fields are expected at the top of the columns
\nmysql \nhost:192.168.0.2 \nuser:bob \npassword:secret \ndatabase:test \nquery:select * from mytable \n\t
\n
\n
\n\t
Postgres
\n\t
*
\n\t
A config file with a content like this:
\npostgres \nhost:192.168.0.2 \nuser:bob \npassword:secret \ndatabase:test \nquery:select * from mytable \n \nor: \npostgres \nconnection:bob:secret@192.168.0.2/test \nquery:select * from mytable \n\t
\n
\n
\n\t
R
\n\t
rdb
\n\t
Binary format only
\n
\n
\n\t
SAS
\n\t
sas7bdat
\t\n\t
Uncompressed format only
\n
\n
\n\t
SPLUS
\n\t
sdd
\n\t
\n
\n
\n\t
SPSS
\n\t
sav
\n\t
Uncompressed format only
\n
\n
\n\t
SQL Server
\n\t
*
\n\t
A config file with a content like this:
\n\t\tmssql \n\t\thost:192.168.0.121 \n\t\tusername:bob \n\t\tpassword:secret \n\t\tquery:select * from mytable \n\t
\n
\n
\n\t
Stata
\n\t
dta
\t\n\t
Stata 8 or higher
\n
\n
\t\n\t
Tabular file
\n\t
*
\n\t
The names of the fields are expected on the first line
\n
\n
\n\t
Bzip2 file
\n\t
bz2
\n\t
The uncompressed file must be in one of the previous formats
\n
\n
\n\t
Gzip file
\n\t
gz
\n\t
The uncompressed file must be in one of the previous formats
\n
\n
\n\t
Web file
\n\t
*
\n\t
Contains the url of the data. The remote file must be in one of the previous formats
\n
\n
\n
If you click the clipboard button, the data must be in tabular form, with the name of the fields on the first line.
\n
Main window
\n
Once the data have been successfully loaded, the main window is displayed :
\n
\n
Here are the elements of the interface :
\n\n
\n
List of the categorical fields (aka \"the pink zone\"). By default only 10 fields are displayed. To resize the list, move the mouse just below the list and drag to shrink or extend the list. To scroll the list, move the mouse to the right of the list.
\n
\n
\n
Icons of the existing analyses (graphs). To run a new analysis, just drag its icon to the workspace.
\n
\n
\n
List of the numerical fields (aka \"the blue zone\"). By default only 10 fields are displayed. To resize the list, move the mouse just below the list and drag to shrink or extend the list. To scroll the list, move the mouse to the right of the list.
\n
\n
\n
Icons of the tools
\n
\n
\n
Status bar. This area gives at any time details about the object under the mouse, or the action your are about to do.
\n
\n
\n
Dock This area is used to keep graphs that are temporarily removed from the workspace.
\n
\n
\n
Version number
\n
\n
\n
Memory usage
\n
\n
\n
Workspace. This area is where the graphs are created and arranged.
\n
\n\n
Graph
\n
To create a new graph, drag its icon to the workspace. Alternatively if you dont know which icon to look at, you can right-click or control-click on the workspace to get a menu with all the possible analyses.
\n
A graph is represented by an area with different noticeable parts :\n
\n\n
\n
Close box. Click on this box to close the graph. All the computations done will be lost.
\n
\n
\n
Option menu. Some graphs have different ways of representing the results. In that case click on this sign to bring up the menu to choose from. Alternatively, right-click or control-click within the graph.
\n
\n
\n
Title bar. This area shows the current selection (see below). Click on this area to drag the graph around.
\n
\n
\n
Slots. These are the places where you can define the parameters of the analysis. Depending on the graph, different combinations of slots are shown. On a pink slot you can drag a categorical field. On a blue slot you can drag a numerical slot. Parameters can be swapped by dragging from one slot to another one ( of the same graph, and of the same color ).
\n
\n
\n
Resize box. Click on this box and drag to resize the graph.
\n
\n\n
To change the type of a graph, drag the icon of the new type onto the graph. The new analysis will retain the parameters and selection of the previous one.
\n
Selection
\n
Every analysis can be restricted to a part of the data only. The set of observations (records) currently processed by a graph is named the selection, and is displayed in the title bar .\nInitially, the selection consists of all the observations, and the title is blank.
\n
Selection based on a categorical field
\n
\n
Use a type of graph that allows to split the dataset into the desired groups : pie chart, bar chart, treemap.
\n
Drag the slice of the group to be processed out of the graph, onto the workspace.
\n
This creates a new pie chart with a selection equal to the slice's category.
\n
Drag the icon of the wanted analysis onto this second graph. It will change its type, but will retain the selection. The type of graph can be changed as many times as wished, all the analyses will be conducted on the same selection.
\n
\n
Conversely, the selection of an existing graph can be changed by dragging a pie slice onto its\ntitle. This allows to conduct successively the same analysis on different parts of the data.
\n
Selection based on a numerical field
\n
\n
Drag a numerical field from the blue zone to the title of an existing graph. The selection will consists of all the observations with a non-null value of the field. Typically a dummy variable (with values 0 or 1) would be used for this, but not necessarily.
\n
\n
Combining selections
\n
Dragging a slice to the title of a graph which already has a selection will combine the two\nsets.
\n
If the two variables are the same, the resulting selection will be the union of the two sets. Example: a pie graph splits the data into Apples, Pears, Peaches, and Apricots. If you drag the apple slice to the title of another graph, the selection will be Apples. If you then drag the peach slice to the title of the graph, the selection will be Apples + Peaches
\n
If the two variables are not the same, the resulting selection will be the intersection of the two sets. Example : a pie graph splits the data into Apples, Pears, Peaches and Apricots. If you drag the apple slice to the title of another graph, the selection will be Apples. If you change the variable defining the pie to split the data into Organic and Non-Organic, and drag the Organic\nslice to the title of the second graph, the selection will be Apples AND Organic.
\n
Conversions
\n
When loading the data, the Explorer identifies fields containing only numbers as numeric, and all others fields as categorical. Sometimes it is desirable to change this. Several possibilities exist.
\n
\n
\n
Drag a numerical field to the pink zone. The field is converted to categorical, the values are the same but as strings of characters.
\n
\n
\n
Drag a categorical field to the blue zone. Each category gives a dummy variable of the same name, Therefore, there are as many dummies as categories of the initial field, and all the dummies are exclusive. Example : COLOR is the categorical field converted:
\n
\n
\n
Original data:
\n
\n
ID
COLOR
\n
1
Blue
\n
2
Red
\n
3
Green
\n
4
Red
\n
\n
Data after the conversion
\n
\n
ID
Blue
Red
Green
\n
1
1
0
0
\n
2
0
1
0
\n
3
0
0
1
\n
4
0
1
0
\n
\n
\n
Drag the special numerical field \"1\" to the pink zone. This \"pivots\" the data. Each numerical field becomes a category of a new PIVOT field, whose value is in a new COUNT field.\nEach original record gives as many records as the number of numerical fields. Example: HEIGHT, WIDTH and DEPTH are the numerical fields.
\n
\n
Original data :
\n
\n
ID
COLOR
HEIGHT
WIDTH
DEPTH
\n
1
Blue
142
25
11
\n
2
Red
175
12
16
\n
3
Green
109
48
14
\n
\n
Data after the pivot :
\n
\n
ID
COLOR
PIVOT
COUNT
\n
1
Blue
HEIGHT
142
\n
1
Blue
WIDTH
25
\n
1
Blue
DEPTH
11
\n
2
Red
HEIGHT
175
\n
2
Red
WIDTH
12
\n
2
Red
DEPTH
16
\n
3
Green
HEIGHT
109
\n
3
Green
WIDTH
48
\n
3
Green
DEPTH
14
\n
Units
\n
\n
All the analyses applied to categorical fields (whose icon is pink) count the observations. For example in a pie chart the slices are proportional to the number of observations of each category. Sometimes the counts have to be weighted. This is done by changing the \"unit\" of the graph, by dragging a numerical field onto the graph. The title of the graph is turned blue to indicate that the counts are weighted. The status bar also shows the values or percentages in the new unit. To remove the unit and go back to the normal counting, drag the special field \"1\" onto the graph.
\n
\n
\n
All the analyses that represents datapoints in a 2D plane ( scatter plot, PCA, discriminant analysis, ternary plot, etc) can also be modified. If a numerical field is set as unit, the datapoints are displayed as circles whose size is proportional to the unit :
\n
\n
Tools
Here are the various tools proposed by the toolbar at the bottom of the screen :
\n
\n
Sort : drag this icon onto a field, or drag a field onto this icon to sort the data in ascending order. Do the same sort again to sort in descending order. The sort is stable : to sort the data by a key consisting of field1,field2,field3, you must sort by field3 first, then field2, and finally field1.
\n
\n
\n
Clone. Drag this icon onto a graph to get a copy of it, with the same parameters. If the computation is slow, this allows to bypass the second computation.
\n
\n
\n
Add : Drag this icon to the pink or blue zone to create a new field. See below.
\n
\n
\n
Help. Drag this icon onto a graph to get some informations about the analysis, the results produced, the representation options, and the possible actions.
\n
\n
\n
Picture : Drag this icon onto a graph to get its image in png format.
\n
\n
\n
Table : Drag this icon to the pink or blue zone to get a table of the values of the dataset.\nDrag this icon onto a graph to get a table of the numerical results. They can be copied to the clipboard ( with control-C or command-C ) and pasted into another software.
\n
\n
\n
Dustbin : Drag this icon onto a field, or drag a field onto this icon to permanently remove the field ( if the field is used by some graphs, it cannot be removed ). Drag a pie slice, a bar, or a tree map slice onto this icon to permanently remove the corresponding records. The original input file is not modified.
\n
\n
Types of analysis
\n
Pie chart
\n
Bar chart
\n
Line chart
\n
Association diagram
\n
Word cloud
\n
Arc diagram
\n
Contingency table
\n
Multiple Correspondence analysis
\n
3-variable graph
\n
Treemap
\n
Chi-2 tests\n
\n
Pearson' chi-square test
\n
Yates' chi-square test
\n
G-test
\n
Fisher's exact test
\n
\n
\n
Gini impurity
\n
Entropy
\n
Repartition curve
\n
Distribution curve
\n
Scatter plot
\n
Ternary plot
\n
Andrew's curves
\n
Survey plot
\n
3D plot
\n
Correlations
\n
Autocorrelation plot
\n
Probability plot
\n
Tukey-lambda PPCC plot
\n
Lag plot
\n
General statistics
\n
Normality tests\n
\n
Shapiro-Wilk test
\n
Anderson-Darling test
\n
Lilliefors test
\n
D'Agostino test
\n
Anscombe test
\n
Omnibus test
\n
Jarque-Bera test
\n
\n
\n
Analysis of variance\n
\n
Bartlett's test
\n
F-test
\n
Levene test
\n
Brown Forsythe test
\n
Box's M test
\n
Student's T-test
\n
Welch T-test
\n
Hotelling's test
\n
Wilk's lambda
\n
Lawley-Hotelling trace
\n
Pillai trace
\n
Two-way anova
\n
\n
\n
Non-parametric tests\n
\n
Kolmogorov-Smirnov test
\n
Kruskal-Wallis test
\n
Jonckheere test
\n
Cochran Q test
\n
Durbin test
\n
Friedman test
\n
Mantel-Haenszel test
\n
Breslow-Day test
\n
Woolf test
\n
\n
\n
Principal components
\n
Canonical correlation analysis
\n
K-means
\n
K-medoids
\n
Fuzzy C-means
\n
Huen diagram
\n
Dendogram
\n
Radviz
\n
Discriminant analysis
\n
Regressions\n
\n
Linear regression
\n
Poisson regression
\n
Negative binomial regression
\n
Logistic regression
\n
Least angle regression
\n
\n
\n
Influence plot
\n
QQ plot
\n
Box plot
\n
Parallel coordinates
\n
Neural network (perceptron)
\n
In the browser
The Explorer can also be executed in any modern browser. Open app/index.html,\npaste the data from the clipboard, and click OK.
Credits
The Explorer takes advantage of some very useful npm modules :
\n
gapitoken Node.js module for Google API service account authorization
This Explorer allows to perform various statistical analyses and data mining operations in a very easy and intuitive way. As the name implies, this software aims at exploring data and getting quick insight of the order of magnitude of the observed objects. That's why it does focus on graphical representation and mouse driven operations, unlike the traditional statistical tools cluttered with numerous dialog boxes and lists with five decimal figures. You can, however, have the detailed numbers once your analysis is completed.
Download the latest version corresponding to your system (32bit or 64bit) from the release page. The application is bundled into a single exe file, thanks to BoxedApp Packer .
\n
Linux
\n
Follow the \"Build from source\" instructions below.
\n
Build from Source
\n
Should you want to go the Build & Deploy route -you'll require node.js (developed\non v6.1.0, confirmed to work on v4.7.3) and npm (comes with node.js, developed using v3.9.5, confirmed to work on v2.15.11).
\n
Download and unzip the Source files (zip or tar.gz) from the the release page, or clone the repository:
Enter the Explorer's directory with cd explorer-1.x/app (if you downloaded it from Releases) or cd explorer/app (if you cloned the repository).
\n
Install the dependencies:
\n
npm install
\n
And launch the app:
\n
npm start
\n
Data loading
\n
At launch time, the Explorer shows a window to choose the dataset to use. You can either drag and drop a file from your computer desktop, or click the clipboard button.
\n
\n
Various file formats are accepted :
\n
\n
\n\t
Source
\n\t
File extension
\n\t
Remarks
\n
\n
\n\t
Access
\n\t
mdb , accdb
\n\t
Access 2000 or higher
\n
\n
\n\t
ARFF / KEEL
\n\t
*
\n\t
No comments at the beginning of the file. \n\tThe first line must be @relation \n\t
\n
\n
\n\t
BigQuery
\n\t
*
\n\t
A config file with a content like this: \nBigQuery \nclient_secret:/full/path/to/my_private_key.json \nquery:select * from lookerdata:cdc.project_tycho_reports limit 1000 \ntimeout:60000 \n\t
\n
\n
\n\t
dBase
\n\t
dbf
\n\t
\n
\n
\t\n\t
Excel
\n\t
xlsx
\n\t
The names of the fields are expected at the top of the columns
\nmysql \nhost:192.168.0.2 \nuser:bob \npassword:secret \ndatabase:test \nquery:select * from mytable \n\t
\n
\n
\n\t
Postgres
\n\t
*
\n\t
A config file with a content like this:
\npostgres \nhost:192.168.0.2 \nuser:bob \npassword:secret \ndatabase:test \nquery:select * from mytable \n \nor: \npostgres \nconnection:bob:secret@192.168.0.2/test \nquery:select * from mytable \n\t
\n
\n
\n\t
R
\n\t
rdb
\n\t
Binary format only
\n
\n
\n\t
SAS
\n\t
sas7bdat
\t\n\t
Uncompressed format only
\n
\n
\n\t
SPLUS
\n\t
sdd
\n\t
\n
\n
\n\t
SPSS
\n\t
sav
\n\t
Uncompressed format only
\n
\n
\n\t
SQL Server
\n\t
*
\n\t
A config file with a content like this:
\n\t\tmssql \n\t\thost:192.168.0.121 \n\t\tusername:bob \n\t\tpassword:secret \n\t\tquery:select * from mytable \n\t
\n
\n
\n\t
Stata
\n\t
dta
\t\n\t
Stata 8 or higher
\n
\n
\t\n\t
Tabular file
\n\t
*
\n\t
The names of the fields are expected on the first line
\n
\n
\n\t
Bzip2 file
\n\t
bz2
\n\t
The uncompressed file must be in one of the previous formats
\n
\n
\n\t
Gzip file
\n\t
gz
\n\t
The uncompressed file must be in one of the previous formats
\n
\n
\n\t
Web file
\n\t
*
\n\t
Contains the url of the data. The remote file must be in one of the previous formats
\n
\n
\n
If you click the clipboard button, the data must be in tabular form, with the name of the fields on the first line.
\n
Main window
\n
Once the data have been successfully loaded, the main window is displayed :
\n
\n
Here are the elements of the interface :
\n\n
\n
List of the categorical fields (aka \"the pink zone\"). By default only 10 fields are displayed. To resize the list, move the mouse just below the list and drag to shrink or extend the list. To scroll the list, move the mouse to the right of the list.
\n
\n
\n
Icons of the existing analyses (graphs). To run a new analysis, just drag its icon to the workspace.
\n
\n
\n
List of the numerical fields (aka \"the blue zone\"). By default only 10 fields are displayed. To resize the list, move the mouse just below the list and drag to shrink or extend the list. To scroll the list, move the mouse to the right of the list.
\n
\n
\n
Icons of the tools
\n
\n
\n
Status bar. This area gives at any time details about the object under the mouse, or the action your are about to do.
\n
\n
\n
Dock This area is used to keep graphs that are temporarily removed from the workspace.
\n
\n
\n
Version number
\n
\n
\n
Memory usage
\n
\n
\n
Workspace. This area is where the graphs are created and arranged.
\n
\n\n
Graph
\n
To create a new graph, drag its icon to the workspace. Alternatively if you dont know which icon to look at, you can right-click or control-click on the workspace to get a menu with all the possible analyses.
\n
A graph is represented by an area with different noticeable parts :\n
\n\n
\n
Close box. Click on this box to close the graph. All the computations done will be lost.
\n
\n
\n
Option menu. Some graphs have different ways of representing the results. In that case click on this sign to bring up the menu to choose from. Alternatively, right-click or control-click within the graph.
\n
\n
\n
Title bar. This area shows the current selection (see below). Click on this area to drag the graph around.
\n
\n
\n
Slots. These are the places where you can define the parameters of the analysis. Depending on the graph, different combinations of slots are shown. On a pink slot you can drag a categorical field. On a blue slot you can drag a numerical slot. Parameters can be swapped by dragging from one slot to another one ( of the same graph, and of the same color ).
\n
\n
\n
Resize box. Click on this box and drag to resize the graph.
\n
\n\n
To change the type of a graph, drag the icon of the new type onto the graph. The new analysis will retain the parameters and selection of the previous one.
\n
Selection
\n
Every analysis can be restricted to a part of the data only. The set of observations (records) currently processed by a graph is named the selection, and is displayed in the title bar .\nInitially, the selection consists of all the observations, and the title is blank.
\n
Selection based on a categorical field
\n
\n
Use a type of graph that allows to split the dataset into the desired groups : pie chart, bar chart, treemap.
\n
Drag the slice of the group to be processed out of the graph, onto the workspace.
\n
This creates a new pie chart with a selection equal to the slice's category.
\n
Drag the icon of the wanted analysis onto this second graph. It will change its type, but will retain the selection. The type of graph can be changed as many times as wished, all the analyses will be conducted on the same selection.
\n
\n
Conversely, the selection of an existing graph can be changed by dragging a pie slice onto its\ntitle. This allows to conduct successively the same analysis on different parts of the data.
\n
Selection based on a numerical field
\n
\n
Drag a numerical field from the blue zone to the title of an existing graph. The selection will consists of all the observations with a non-null value of the field. Typically a dummy variable (with values 0 or 1) would be used for this, but not necessarily.
\n
\n
Combining selections
\n
Dragging a slice to the title of a graph which already has a selection will combine the two\nsets.
\n
If the two variables are the same, the resulting selection will be the union of the two sets. Example: a pie graph splits the data into Apples, Pears, Peaches, and Apricots. If you drag the apple slice to the title of another graph, the selection will be Apples. If you then drag the peach slice to the title of the graph, the selection will be Apples + Peaches
\n
If the two variables are not the same, the resulting selection will be the intersection of the two sets. Example : a pie graph splits the data into Apples, Pears, Peaches and Apricots. If you drag the apple slice to the title of another graph, the selection will be Apples. If you change the variable defining the pie to split the data into Organic and Non-Organic, and drag the Organic\nslice to the title of the second graph, the selection will be Apples AND Organic.
\n
Conversions
\n
When loading the data, the Explorer identifies fields containing only numbers as numeric, and all others fields as categorical. Sometimes it is desirable to change this. Several possibilities exist.
\n
\n
\n
Drag a numerical field to the pink zone. The field is converted to categorical, the values are the same but as strings of characters.
\n
\n
\n
Drag a categorical field to the blue zone. Each category gives a dummy variable of the same name, Therefore, there are as many dummies as categories of the initial field, and all the dummies are exclusive. Example : COLOR is the categorical field converted:
\n
\n
\n
Original data:
\n
\n
ID
COLOR
\n
1
Blue
\n
2
Red
\n
3
Green
\n
4
Red
\n
\n
Data after the conversion
\n
\n
ID
Blue
Red
Green
\n
1
1
0
0
\n
2
0
1
0
\n
3
0
0
1
\n
4
0
1
0
\n
\n
\n
Drag the special numerical field \"1\" to the pink zone. This \"pivots\" the data. Each numerical field becomes a category of a new PIVOT field, whose value is in a new COUNT field.\nEach original record gives as many records as the number of numerical fields. Example: HEIGHT, WIDTH and DEPTH are the numerical fields.
\n
\n
Original data :
\n
\n
ID
COLOR
HEIGHT
WIDTH
DEPTH
\n
1
Blue
142
25
11
\n
2
Red
175
12
16
\n
3
Green
109
48
14
\n
\n
Data after the pivot :
\n
\n
ID
COLOR
PIVOT
COUNT
\n
1
Blue
HEIGHT
142
\n
1
Blue
WIDTH
25
\n
1
Blue
DEPTH
11
\n
2
Red
HEIGHT
175
\n
2
Red
WIDTH
12
\n
2
Red
DEPTH
16
\n
3
Green
HEIGHT
109
\n
3
Green
WIDTH
48
\n
3
Green
DEPTH
14
\n
Units
\n
\n
All the analyses applied to categorical fields (whose icon is pink) count the observations. For example in a pie chart the slices are proportional to the number of observations of each category. Sometimes the counts have to be weighted. This is done by changing the \"unit\" of the graph, by dragging a numerical field onto the graph. The title of the graph is turned blue to indicate that the counts are weighted. The status bar also shows the values or percentages in the new unit. To remove the unit and go back to the normal counting, drag the special field \"1\" onto the graph.
\n
\n
\n
All the analyses that represents datapoints in a 2D plane ( scatter plot, PCA, discriminant analysis, ternary plot, etc) can also be modified. If a numerical field is set as unit, the datapoints are displayed as circles whose size is proportional to the unit :
\n
\n
Tools
Here are the various tools proposed by the toolbar at the bottom of the screen :
\n
\n
Sort : drag this icon onto a field, or drag a field onto this icon to sort the data in ascending order. Do the same sort again to sort in descending order. The sort is stable : to sort the data by a key consisting of field1,field2,field3, you must sort by field3 first, then field2, and finally field1.
\n
\n
\n
Clone. Drag this icon onto a graph to get a copy of it, with the same parameters. If the computation is slow, this allows to bypass the second computation.
\n
\n
\n
Add : Drag this icon to the pink or blue zone to create a new field. See below.
\n
\n
\n
Help. Drag this icon onto a graph to get some informations about the analysis, the results produced, the representation options, and the possible actions.
\n
\n
\n
Picture : Drag this icon onto a graph to get its image in png format.
\n
\n
\n
Table : Drag this icon to the pink or blue zone to get a table of the values of the dataset.\nDrag this icon onto a graph to get a table of the numerical results. They can be copied to the clipboard ( with control-C or command-C ) and pasted into another software.
\n
\n
\n
Dustbin : Drag this icon onto a field, or drag a field onto this icon to permanently remove the field ( if the field is used by some graphs, it cannot be removed ). Drag a pie slice, a bar, or a tree map slice onto this icon to permanently remove the corresponding records. The original input file is not modified.
\n
\n
Types of analysis
\n
Pie chart
\n
Bar chart
\n
Line chart
\n
Association diagram
\n
Word cloud
\n
Arc diagram
\n
Contingency table
\n
Multiple Correspondence analysis
\n
3-variable graph
\n
Treemap
\n
Chi-2 tests\n
\n
Pearson' chi-square test
\n
Yates' chi-square test
\n
G-test
\n
Fisher's exact test
\n
\n
\n
Gini impurity
\n
Entropy
\n
Repartition curve
\n
Distribution curve
\n
Scatter plot
\n
Ternary plot
\n
Andrew's curves
\n
Survey plot
\n
3D plot
\n
Correlations
\n
Autocorrelation plot
\n
Probability plot
\n
Tukey-lambda PPCC plot
\n
Lag plot
\n
General statistics
\n
Normality tests\n
\n
Shapiro-Wilk test
\n
Anderson-Darling test
\n
Lilliefors test
\n
D'Agostino test
\n
Anscombe test
\n
Omnibus test
\n
Jarque-Bera test
\n
\n
\n
Analysis of variance\n
\n
Bartlett's test
\n
F-test
\n
Levene test
\n
Brown Forsythe test
\n
Box's M test
\n
Student's T-test
\n
Welch T-test
\n
Hotelling's test
\n
Wilk's lambda
\n
Lawley-Hotelling trace
\n
Pillai trace
\n
Two-way anova
\n
\n
\n
Non-parametric tests\n
\n
Kolmogorov-Smirnov test
\n
Kruskal-Wallis test
\n
Jonckheere test
\n
Cochran Q test
\n
Durbin test
\n
Friedman test
\n
Mantel-Haenszel test
\n
Breslow-Day test
\n
Woolf test
\n
\n
\n
Principal components
\n
Canonical correlation analysis
\n
K-means
\n
K-medoids
\n
Fuzzy C-means
\n
Huen diagram
\n
Dendogram
\n
Radviz
\n
Discriminant analysis
\n
Regressions\n
\n
Linear regression
\n
Poisson regression
\n
Negative binomial regression
\n
Logistic regression
\n
Least angle regression
\n
\n
\n
Influence plot
\n
QQ plot
\n
Box plot
\n
Parallel coordinates
\n
Neural network (perceptron)
\n
In the browser
The Explorer can also be executed in any modern browser. Open app/index.html,\npaste the data from the clipboard, and click OK.
Credits
The Explorer takes advantage of some very useful npm modules :
\n
gapitoken Node.js module for Google API service account authorization
Supporting ExpressLRS is as easy as contributing a feature, either code or just a fleshed out idea. Coding not your thing? Testing a Pull Request using the convenient Configurator tab and providing feedback is essential as well. We're all working together.
\n
If you don't have the time to contribute in that way, consider making a small donation. Donations are used to buy test equipment, software licenses, and certificates needed to further the project and make it securely accessible. ExpressLRS accepts donations through Open Collective, which provides recognition of donors and transparency on how that support is utilized.
\n
\n
Quick Start Guide
\n
If you have hardware that you want to flash, please refer to our guides on the website, and our FAQ
\n
Installation
\n
We provide a standalone program for 64bit Windows, Linux and Mac.
The minimum required version of windows is Windows 8.
\n
macOS
\n
Changes to the security model used in the latest versions of MacOS X 10.14 (Mojave) and 10.15 (Catalina)\nmean that the operating system will show an error message ('\"ExpressLRS Configurator.app\" cannot be openend because the developer cannot be verified') when trying to install the application.
\n
To work around this, click ExpressLRS Configurator.app while pressing control key, and click Open. In the popup, you'll be able to forcefully open the application. (you may need to try this twice.)
\n
Alternatively, run the following command in a terminal after installing:
This file must be placed at /etc/udev/rules.d/99-platformio-udev.rules (preferred location) or\n/lib/udev/rules.d/99-platformio-udev.rules (required on some broken systems).
\n
Please open system Terminal and type:
\n
# Recommended\ncurl -fsSL https://raw.githubusercontent.com/platformio/platformio-core/master/scripts/99-platformio-udev.rules | sudo tee /etc/udev/rules.d/99-platformio-udev.rules\n\n# OR, manually download and copy this file to destination folder\nsudo cp 99-platformio-udev.rules /etc/udev/rules.d/99-platformio-udev.rules
\n
Restart \"udev\" management tool:
\n
sudo service udev restart\n# or\nsudo udevadm control --reload-rules\nsudo udevadm trigger
\n
Ubuntu/Debian users may need to add own \"username\" to the \"dialout\" group if they are not \"root\", doing this issuing:
\n
sudo usermod -a -G dialout $USER\nsudo usermod -a -G plugdev $USER\n
\n
Similarly, Arch users may need to add their user to the “uucp” group
\n
sudo usermod -a -G uucp $USER\nsudo usermod -a -G lock $USER
This Electron application is split into two parts: a local API server that does all the work, and a UI layer. Both of\nthese application layers communicate within each other using Graphql protocol.
\n
Heavy use of TypeScript and @graphql-codegen/cli is made throughout the repository to ensure the datatypes transmitted\nbetween the API and UI layers are consistent at compile-time and Graphql ensuring the datatypes are consistent at\nruntime.
\n
Starting Development
\n
Prerequisites
\n
\n
node >=16.0
\n
git >= 2.25
\n
python >= 3.6
\n
platformio >= 5.0
\n
\n
Start the app in the dev environment:
\n
yarn install --frozen-lockfile\nyarn start
\n
In order to simulate WI-FI devices on your local network you can start application with\nMULTICAST_DNS_SIMULATOR_ENABLED environment variable:
The use and operation of this type of device may require a license, and some countries may forbid its use. It is\nentirely up to the end user to ensure compliance with local regulations. This is experimental software / hardware and\nthere is no guarantee of stability or reliability. USE AT YOUR OWN RISK.
\n
\n
",
"readmeOriginal": "
ExpressLRS Configurator
\n
\n\n\n
\n
ExpressLRS Configurator is a cross-platform build & configuration tool for the\nExpressLRS - open source RC link for RC applications.
Supporting ExpressLRS is as easy as contributing a feature, either code or just a fleshed out idea. Coding not your thing? Testing a Pull Request using the convenient Configurator tab and providing feedback is essential as well. We're all working together.
\n
If you don't have the time to contribute in that way, consider making a small donation. Donations are used to buy test equipment, software licenses, and certificates needed to further the project and make it securely accessible. ExpressLRS accepts donations through Open Collective, which provides recognition of donors and transparency on how that support is utilized.
\n
\n
Quick Start Guide
\n
If you have hardware that you want to flash, please refer to our guides on the website, and our FAQ
\n
Installation
\n
We provide a standalone program for 64bit Windows, Linux and Mac.
The minimum required version of windows is Windows 8.
\n
macOS
\n
Changes to the security model used in the latest versions of MacOS X 10.14 (Mojave) and 10.15 (Catalina)\nmean that the operating system will show an error message ('\"ExpressLRS Configurator.app\" cannot be openend because the developer cannot be verified') when trying to install the application.
\n
To work around this, click ExpressLRS Configurator.app while pressing control key, and click Open. In the popup, you'll be able to forcefully open the application. (you may need to try this twice.)
\n
Alternatively, run the following command in a terminal after installing:
This file must be placed at /etc/udev/rules.d/99-platformio-udev.rules (preferred location) or\n/lib/udev/rules.d/99-platformio-udev.rules (required on some broken systems).
\n
Please open system Terminal and type:
\n
# Recommended\ncurl -fsSL https://raw.githubusercontent.com/platformio/platformio-core/master/scripts/99-platformio-udev.rules | sudo tee /etc/udev/rules.d/99-platformio-udev.rules\n\n# OR, manually download and copy this file to destination folder\nsudo cp 99-platformio-udev.rules /etc/udev/rules.d/99-platformio-udev.rules
\n
Restart \"udev\" management tool:
\n
sudo service udev restart\n# or\nsudo udevadm control --reload-rules\nsudo udevadm trigger
\n
Ubuntu/Debian users may need to add own \"username\" to the \"dialout\" group if they are not \"root\", doing this issuing:
\n
sudo usermod -a -G dialout $USER\nsudo usermod -a -G plugdev $USER\n
\n
Similarly, Arch users may need to add their user to the “uucp” group
\n
sudo usermod -a -G uucp $USER\nsudo usermod -a -G lock $USER
This Electron application is split into two parts: a local API server that does all the work, and a UI layer. Both of\nthese application layers communicate within each other using Graphql protocol.
\n
Heavy use of TypeScript and @graphql-codegen/cli is made throughout the repository to ensure the datatypes transmitted\nbetween the API and UI layers are consistent at compile-time and Graphql ensuring the datatypes are consistent at\nruntime.
\n
Starting Development
\n
Prerequisites
\n
\n
node >=16.0
\n
git >= 2.25
\n
python >= 3.6
\n
platformio >= 5.0
\n
\n
Start the app in the dev environment:
\n
yarn install --frozen-lockfile\nyarn start
\n
In order to simulate WI-FI devices on your local network you can start application with\nMULTICAST_DNS_SIMULATOR_ENABLED environment variable:
The use and operation of this type of device may require a license, and some countries may forbid its use. It is\nentirely up to the end user to ensure compliance with local regulations. This is experimental software / hardware and\nthere is no guarantee of stability or reliability. USE AT YOUR OWN RISK.
Extraterm is an open source project to build a terminal emulator and expand it with new features to support modern workflows and do more than just act like a glorified teletype.
\n
More background information is in the Why document.
\n
\n
Capture and reuse command output as new command input
\n
Manipulate and copy text without leaving the keyboard
Extraterm is available in two flavours: the classic Extraterm is based on Electron, and the lighter faster Qt based version which is the future of Extraterm but is in development and lacking features. Both can run on Linux, Windows, and macOS.
Both can be installed at the same time, without problems.
\n
⚠️ Extraterm is in development and roughly 'beta' in quality. It is generally stable, but don't be too surprised if you encounter a few bugs. Use at your own risk. ⚠️
\n
With that out of the way, the primary author does use it as their main terminal emulator on a daily basis. The basics are in place and it will run most common terminal applications such as vi, emacs and joe without problems and even more demanding applications such as midnight commander.
Extraterm is an open source project to build a terminal emulator and expand it with new features to support modern workflows and do more than just act like a glorified teletype.
\n
More background information is in the Why document.
\n
\n
Capture and reuse command output as new command input
\n
Manipulate and copy text without leaving the keyboard
Extraterm is available in two flavours: the classic Extraterm is based on Electron, and the lighter faster Qt based version which is the future of Extraterm but is in development and lacking features. Both can run on Linux, Windows, and macOS.
Both can be installed at the same time, without problems.
\n
⚠️ Extraterm is in development and roughly 'beta' in quality. It is generally stable, but don't be too surprised if you encounter a few bugs. Use at your own risk. ⚠️
\n
With that out of the way, the primary author does use it as their main terminal emulator on a daily basis. The basics are in place and it will run most common terminal applications such as vi, emacs and joe without problems and even more demanding applications such as midnight commander.
Exporting HTML that separates APP to use favorites
\n
Support importing database package.
\n
Support quick search for URL and Site Name
\n
Judgment of URL validity and repetitiveness
\n
Automatically extract the remote resources, such as icons
\n
\n
File Structures
\n
/\n├── README.md\n├── LICENSE\n├── tsconfig.json\n├── babel.config.js\n├── package-lock.json\n├── package.json\n├── package/ ·············· Available packages\n├── db/ ·············· Local database\n├── main/ ·············· Main Process Modules\n├── renderer/ ·············· Renderer Process Modules\n├── dist/\n├── src/\n├── test/ \n├── public/ \n│ └── index.html \n├── build/ \n│ └── config.js\n└──
\n
How To Use
\n
To clone and run this repository. From your command line:
\n
$ npm start
\n
APP Development Mode
\n
\n
You will need to have node setup on your machine. That will output the built distributables to ./dist/* .
\n
Step 1. Use NPM (Locate your current directory of project, and enter the following command.) or download the latest version from Github. For nodejs you have to install some dependencies.
\n
$ sudo npm install f-curator
\n
Or clone the repo to get all source files including build scripts:
\n
$ git clone git://github.com/xizon/f-curator.git
\n
Step 2. First, using an absolute path into your \"f-curator/\" folder directory.
\n
$ cd /{your_directory}/f-curator
\n
Step 3. Before doing all dev stuff make sure you have Node 10+ installed. After that, run the following code in the main directory to install the node module dependencies.
\n
$ sudo npm install
\n
Step 4. Commonly used commands:
\n
Debug application. It can be checked separately as TypeScript without compiling and packaging behavior.
\n
$ npm run check
\n
Step 5. When you’re ready to deploy to production, create a minified bundle with:
\n
$ npm run build
\n
Step 6. When you have done, this will spin up a server that can be accessed at
\n
http://localhost:8080
\n
Step 7. Run the app in development mode
\n
$ npm run dev
\n
\n
💡 Note:
\n
If you upgrade the version of Node, please execute the following code:
\n
$ sudo npm install\n$ sudo npm rebuild node-sass
\n
\n
Changelog
\n
= 1.3.3 (January 30, 2022) =
\n
\n
tweak: Optimized editing experience for list.
\n
fix: Fixed the bug of Chinese search not working.
\n
\n
= 1.3.1 (January 26, 2022) =
\n
\n
new: Support application version detection.
\n
\n
= 1.3.0 (January 22, 2022) =
\n
\n
new: Support for importing database package.
\n
new: Editable for each URL.
\n
\n
= 1.2.1 (January 20, 2022) =
\n
\n
new: release windows package.
\n
fix: Fix some compatibility issues in Windows
\n
\n
= 1.2.0 (January 18, 2022) =
\n
\n
feat: Added the function of exporting HTML, separate APP to use favorites.
\n
fix: Optimized some styles.
\n
optimize: Modified dependencies and optimized app size.
Exporting HTML that separates APP to use favorites
\n
Support importing database package.
\n
Support quick search for URL and Site Name
\n
Judgment of URL validity and repetitiveness
\n
Automatically extract the remote resources, such as icons
\n
\n
File Structures
\n
/\n├── README.md\n├── LICENSE\n├── tsconfig.json\n├── babel.config.js\n├── package-lock.json\n├── package.json\n├── package/ ·············· Available packages\n├── db/ ·············· Local database\n├── main/ ·············· Main Process Modules\n├── renderer/ ·············· Renderer Process Modules\n├── dist/\n├── src/\n├── test/ \n├── public/ \n│ └── index.html \n├── build/ \n│ └── config.js\n└──
\n
How To Use
\n
To clone and run this repository. From your command line:
\n
$ npm start
\n
APP Development Mode
\n
\n
You will need to have node setup on your machine. That will output the built distributables to ./dist/* .
\n
Step 1. Use NPM (Locate your current directory of project, and enter the following command.) or download the latest version from Github. For nodejs you have to install some dependencies.
\n
$ sudo npm install f-curator
\n
Or clone the repo to get all source files including build scripts:
\n
$ git clone git://github.com/xizon/f-curator.git
\n
Step 2. First, using an absolute path into your \"f-curator/\" folder directory.
\n
$ cd /{your_directory}/f-curator
\n
Step 3. Before doing all dev stuff make sure you have Node 10+ installed. After that, run the following code in the main directory to install the node module dependencies.
\n
$ sudo npm install
\n
Step 4. Commonly used commands:
\n
Debug application. It can be checked separately as TypeScript without compiling and packaging behavior.
\n
$ npm run check
\n
Step 5. When you’re ready to deploy to production, create a minified bundle with:
\n
$ npm run build
\n
Step 6. When you have done, this will spin up a server that can be accessed at
\n
http://localhost:8080
\n
Step 7. Run the app in development mode
\n
$ npm run dev
\n
\n
💡 Note:
\n
If you upgrade the version of Node, please execute the following code:
\n
$ sudo npm install\n$ sudo npm rebuild node-sass
\n
\n
Changelog
\n
= 1.3.3 (January 30, 2022) =
\n
\n
tweak: Optimized editing experience for list.
\n
fix: Fixed the bug of Chinese search not working.
\n
\n
= 1.3.1 (January 26, 2022) =
\n
\n
new: Support application version detection.
\n
\n
= 1.3.0 (January 22, 2022) =
\n
\n
new: Support for importing database package.
\n
new: Editable for each URL.
\n
\n
= 1.2.1 (January 20, 2022) =
\n
\n
new: release windows package.
\n
fix: Fix some compatibility issues in Windows
\n
\n
= 1.2.0 (January 18, 2022) =
\n
\n
feat: Added the function of exporting HTML, separate APP to use favorites.
\n
fix: Optimized some styles.
\n
optimize: Modified dependencies and optimized app size.
🤴🏽 Hard-fork of Franz, adding awesome features and removing unwanted ones.
\n
\n
Ferdi is a desktop app that helps you organize how you use your favourite apps by combining them into one application. It is based on Franz - a software already used by thousands of people - with the difference that Ferdi gives you many additional features and doesn't restrict its usage! Furthermore, Ferdi is compatible with your existing Franz account, so you can continue right where you left off. Please find out more about Ferdi and its features on getferdi.com.
🤴🏽 Hard-fork of Franz, adding awesome features and removing unwanted ones.
\n
\n
Ferdi is a desktop app that helps you organize how you use your favourite apps by combining them into one application. It is based on Franz - a software already used by thousands of people - with the difference that Ferdi gives you many additional features and doesn't restrict its usage! Furthermore, Ferdi is compatible with your existing Franz account, so you can continue right where you left off. Please find out more about Ferdi and its features on getferdi.com.
FAIRshare is a cross-platform desktop software that allows researchers to easily organize and share their biomedical research data according to applicable FAIR guidelines. In our first phase of development we are implementing a process for making biomedical research software FAIR and also working on supporting the FAIRification of COVID-19 and other infectious disease related research data (immunology, genomics, epidemiology, etc.). Learn more about FAIRshare, its impact, the development timeline, and related resources on our group's website at https://fairdataihub.org/fairshare.
\n
\n \n \n A screenshot of the user interface of FAIRshare. \n \n
\n
Downloading FAIRshare
\n
FAIRshare is distributed as an easy-to-install desktop application for Windows, Mac OS, and Ubuntu. Follow the instructions provided in our dedicated documentation to download the version suitable for your operating system.
\n
All our releases are also accessible in the releases tab.
To report any issues with the software, suggest improvements, or request a new feature, please open a new issue via the Issues tab. Provide adequate information (operating system, steps leading to error, screenshots) so we can help you efficiently. Alternatively, you could also use our feedback form.
\n
Using the Source Code
\n
If you want to use the source code, contribute, modify FAIRshare to better suit your needs, or compile it for an operating system not mentioned above, please follow the instructions provided in the developer guide of our documentation.
\n
License
\n
FAIRshare is distributed under the MIT License. See LICENSE for more information.
\n
Privacy Policy
\n
FAIRshare uses Google Analytics to track user interactions with the application. Tracking is anonymous and no identifying personal information is collected. Tracking is implemented as part to report usage statistics to the funders of FAIRshare. Tracking is also used to identify errors and subsequently improve user experience. To learn more about what is tracked and how we use Google Analytics within FAIRshare, please read our Privacy Policy.
FAIRshare is a cross-platform desktop software that allows researchers to easily organize and share their biomedical research data according to applicable FAIR guidelines. In our first phase of development we are implementing a process for making biomedical research software FAIR and also working on supporting the FAIRification of COVID-19 and other infectious disease related research data (immunology, genomics, epidemiology, etc.). Learn more about FAIRshare, its impact, the development timeline, and related resources on our group's website at https://fairdataihub.org/fairshare.
\n
\n \n \n A screenshot of the user interface of FAIRshare. \n \n
\n
Downloading FAIRshare
\n
FAIRshare is distributed as an easy-to-install desktop application for Windows, Mac OS, and Ubuntu. Follow the instructions provided in our dedicated documentation to download the version suitable for your operating system.
\n
All our releases are also accessible in the releases tab.
To report any issues with the software, suggest improvements, or request a new feature, please open a new issue via the Issues tab. Provide adequate information (operating system, steps leading to error, screenshots) so we can help you efficiently. Alternatively, you could also use our feedback form.
\n
Using the Source Code
\n
If you want to use the source code, contribute, modify FAIRshare to better suit your needs, or compile it for an operating system not mentioned above, please follow the instructions provided in the developer guide of our documentation.
\n
License
\n
FAIRshare is distributed under the MIT License. See LICENSE for more information.
\n
Privacy Policy
\n
FAIRshare uses Google Analytics to track user interactions with the application. Tracking is anonymous and no identifying personal information is collected. Tracking is implemented as part to report usage statistics to the funders of FAIRshare. Tracking is also used to identify errors and subsequently improve user experience. To learn more about what is tracked and how we use Google Analytics within FAIRshare, please read our Privacy Policy.
Fifo is a modern web browser, built on top of modern web technologies such as Electron and React that is mean't to be secure. It's a more, optimized, more updated fork of Wexond. This browser is meant for office work, gaming, research and is a secure private browser. Fifo aims to be cross platform.\nFIFO (Fly In Fly Out for your data.)
Building a custom browser would be way to hard, therefor, we forked Wexond as our base, we are theng going to extend from there.\nFifo has branched off Wexond and we are on our way of desiging our own graphics and icons.
\n
Features
\n
\n
AntiAd - Browse the web without any ads and don't let websites to track you. Thanks to the 'AntiAd' (Fifo Service) powered by Cliqz, websites can load even 8 times faster!
\n
Chromium without Google services and low resources usage - Since Fifo uses Electron under the hood which is based on only several and the most important Chromium components, it's not bloated with redundant Google tracking services and others.
\n
Fast and fluent UI - The animations are really smooth and their timings are perfectly balanced.
\n
Highly customizable new tab page - Customize almost an every aspect of the new tab page!
\n
Customizable browser UI - Choose whether Fifo should have compact or normal UI.
\n
Tab groups - Easily group tabs, so it's hard to get lost.
\n
Scrollable tabs - Scroll between your tabs.
\n
Support Chrome extensions - From version < 1.2.0 80% of chrome extenions are compatible and work with Fifo.
\n
\n
Other basic features
\n
\n
Downloads popup with currently downloaded items
\n
History manager
\n
Simple menu
\n
Perfect Incognito Mode!
\n
Bookmarks bar & manager
\n
Settings
\n
Find in page
\n
Dark and light theme
\n
Omnibox with autocomplete algorithm similar to Chromium
If you have found any bugs or just want to see some new features in Fifo, feel free to open an issue. Every suggestion is very valuable for us, as they help us improve the browsing experience. Also, please don't hesitate to open a pull request. This is really important to us and for the further development of this project.
Before running Fifo, please ensure you have latestNode.js and [YARN] installed on your machine. You can use NPM but it IS NOT recommended.
\n
Windows
\n
Make sure you have build tools installed. You can install them by running this command as administrator:
\n
$ npm i -g windows-build-tools
\n
Yarn:
\n
$ yarn install --save --legacy-peer-deps # Install needed depedencies.\n$ yarn build # Compile Fifo code and rebuild modules.\n$ yarn dev # Run Fifo in development mode
\n
NPM: Not recommended
\n
$ npm install --save --legacy-peer-deps # Install needed depedencies. If you can, please, use yarn install.\n$ npm run build # Compile Fifo code and rebuild modules.\n$ npm run dev # Run Fifo in development mode
\n
More commands
\n
$ yarn compile-win32 # Package Fifo for Windows\n$ yarn compile-linux # Package Fifo for Linux\n$ yarn compile-darwin # Package Fifo for macOS\n$ yarn lint # Runs linter\n$ yarn lint-fix # Runs linter and automatically applies fixes\n$ yarn copyright # Generates auto headers for copyright.
Guides and the API reference are located in docs directory.
\n
License
\n
This browser isn't mean to be rebranded/redistrubted, please follow the LICENSE.MD.\nNever remove credits in headers.\n(sentialx@gmail.com) wrote original base code. (Wexond).\nBy sending a Pull Request, you agree that your code may be relicensed or sublicensed.
\n
\n
\n
",
"readmeOriginal": "
\n \n
\n
\n
Fifo Browser
\n
\n
\n
Fifo is a modern web browser, built on top of modern web technologies such as Electron and React that is mean't to be secure. It's a more, optimized, more updated fork of Wexond. This browser is meant for office work, gaming, research and is a secure private browser. Fifo aims to be cross platform.\nFIFO (Fly In Fly Out for your data.)
Building a custom browser would be way to hard, therefor, we forked Wexond as our base, we are theng going to extend from there.\nFifo has branched off Wexond and we are on our way of desiging our own graphics and icons.
\n
Features
\n
\n
AntiAd - Browse the web without any ads and don't let websites to track you. Thanks to the 'AntiAd' (Fifo Service) powered by Cliqz, websites can load even 8 times faster!
\n
Chromium without Google services and low resources usage - Since Fifo uses Electron under the hood which is based on only several and the most important Chromium components, it's not bloated with redundant Google tracking services and others.
\n
Fast and fluent UI - The animations are really smooth and their timings are perfectly balanced.
\n
Highly customizable new tab page - Customize almost an every aspect of the new tab page!
\n
Customizable browser UI - Choose whether Fifo should have compact or normal UI.
\n
Tab groups - Easily group tabs, so it's hard to get lost.
\n
Scrollable tabs - Scroll between your tabs.
\n
Support Chrome extensions - From version < 1.2.0 80% of chrome extenions are compatible and work with Fifo.
\n
\n
Other basic features
\n
\n
Downloads popup with currently downloaded items
\n
History manager
\n
Simple menu
\n
Perfect Incognito Mode!
\n
Bookmarks bar & manager
\n
Settings
\n
Find in page
\n
Dark and light theme
\n
Omnibox with autocomplete algorithm similar to Chromium
If you have found any bugs or just want to see some new features in Fifo, feel free to open an issue. Every suggestion is very valuable for us, as they help us improve the browsing experience. Also, please don't hesitate to open a pull request. This is really important to us and for the further development of this project.
Before running Fifo, please ensure you have latestNode.js and [YARN] installed on your machine. You can use NPM but it IS NOT recommended.
\n
Windows
\n
Make sure you have build tools installed. You can install them by running this command as administrator:
\n
$ npm i -g windows-build-tools
\n
Yarn:
\n
$ yarn install --save --legacy-peer-deps # Install needed depedencies.\n$ yarn build # Compile Fifo code and rebuild modules.\n$ yarn dev # Run Fifo in development mode
\n
NPM: Not recommended
\n
$ npm install --save --legacy-peer-deps # Install needed depedencies. If you can, please, use yarn install.\n$ npm run build # Compile Fifo code and rebuild modules.\n$ npm run dev # Run Fifo in development mode
\n
More commands
\n
$ yarn compile-win32 # Package Fifo for Windows\n$ yarn compile-linux # Package Fifo for Linux\n$ yarn compile-darwin # Package Fifo for macOS\n$ yarn lint # Runs linter\n$ yarn lint-fix # Runs linter and automatically applies fixes\n$ yarn copyright # Generates auto headers for copyright.
Guides and the API reference are located in docs directory.
\n
License
\n
This browser isn't mean to be rebranded/redistrubted, please follow the LICENSE.MD.\nNever remove credits in headers.\n(sentialx@gmail.com) wrote original base code. (Wexond).\nBy sending a Pull Request, you agree that your code may be relicensed or sublicensed.
The Final Countdown is a desktop application that uses demographic information, health metrics, and the World Population API to generate a running clock counting down to the precise moment you'll drop dead. Make every second count.
\n
The application logic is written in JavaScript and rendered with the Electron framework.
The Final Countdown is a desktop application that uses demographic information, health metrics, and the World Population API to generate a running clock counting down to the precise moment you'll drop dead. Make every second count.
\n
The application logic is written in JavaScript and rendered with the Electron framework.
Run the following commands at the root of the repository to build and run Flat Electron client.
\n
pnpm start
\n
You can use one of the following methods to package your executable:
\n
\n
Run pnpm ship at project root to package based on current system.
\n
Alternatively, run pnpm ship:mac or pnpm ship:win at project root to package for a specified system.
\n
\n
Build and run Flat Web client
\n
Run the following command at the root of the repository to build and run Flat web client.
\n
pnpm start:web
\n
Alternatively, run the following command:
\n
cd ./web/flat-web/ && pnpm start
\n
UI and business logic are separated in Flat. You can view and develop Flat components UI via Storybook. You can either visit the (Online address) or run pnpm storybook at the root of the repository to run Storybook locally.
Thank you to all the people who already contributed to Flat!
\n
\n
Disclaimer
\n
You may use Flat for commercial purposes but please note that we do not accept customizational commercial requirements and deployment supports. Nor do we offer customer supports for commercial usage. Please head to Flexible Classroom for such requirements.
Run the following commands at the root of the repository to build and run Flat Electron client.
\n
pnpm start
\n
You can use one of the following methods to package your executable:
\n
\n
Run pnpm ship at project root to package based on current system.
\n
Alternatively, run pnpm ship:mac or pnpm ship:win at project root to package for a specified system.
\n
\n
Build and run Flat Web client
\n
Run the following command at the root of the repository to build and run Flat web client.
\n
pnpm start:web
\n
Alternatively, run the following command:
\n
cd ./web/flat-web/ && pnpm start
\n
UI and business logic are separated in Flat. You can view and develop Flat components UI via Storybook. You can either visit the (Online address) or run pnpm storybook at the root of the repository to run Storybook locally.
Thank you to all the people who already contributed to Flat!
\n
\n
Disclaimer
\n
You may use Flat for commercial purposes but please note that we do not accept customizational commercial requirements and deployment supports. Nor do we offer customer supports for commercial usage. Please head to Flexible Classroom for such requirements.
Flawesome (An Organiser With Diary Workflow) (v0.2.3 Pre-Release)
\n
Flawesome is a cross platform modern productivity tool that will help you organise your day-today work and thoughts.\n \nAll the three application components i.e. The Notebook, The Sticky Notes and The Todolist are driven by the Calendar.
GNU General Public License v3.0 (c) 2020 Ashish Bharadwaj J\nRefer to License.md file for details\n
\n
",
"readmeOriginal": "
Flawesome (An Organiser With Diary Workflow) (v0.2.3 Pre-Release)
\n
Flawesome is a cross platform modern productivity tool that will help you organise your day-today work and thoughts.\n \nAll the three application components i.e. The Notebook, The Sticky Notes and The Todolist are driven by the Calendar.
For Windows 10 users, the recommended way of installation is through Microsoft Store.\nThis enables auto-update and experimental ARM64 support.\nmacOS users can also get Fluent Reader from the Mac App Store.
If you enjoy using this app, consider supporting its development by donating through GitHub Sponsors, Paypal, or Alipay.
\n
Build from source
\n
# Install dependencies\nnpm install\n\n# Compile ts & dependencies\nnpm run build\n\n# Start the application\nnpm run electron\n\n# Generate certificate for signature\nelectron-builder create-self-signed-cert\n# Package the app for Windows\nnpm run package-win\n
For Windows 10 users, the recommended way of installation is through Microsoft Store.\nThis enables auto-update and experimental ARM64 support.\nmacOS users can also get Fluent Reader from the Mac App Store.
If you enjoy using this app, consider supporting its development by donating through GitHub Sponsors, Paypal, or Alipay.
\n
Build from source
\n
# Install dependencies\nnpm install\n\n# Compile ts & dependencies\nnpm run build\n\n# Start the application\nnpm run electron\n\n# Generate certificate for signature\nelectron-builder create-self-signed-cert\n# Package the app for Windows\nnpm run package-win\n
MacOS menu bar app that helps you focus on a single task.\nBy splitting it into smaller todos and keeping all related information about it in one place.\nThe app is designed to get out of your way. Everything can be done via a shortcut.
\n
It is built with Electron and uses React and Redux.
MacOS menu bar app that helps you focus on a single task.\nBy splitting it into smaller todos and keeping all related information about it in one place.\nThe app is designed to get out of your way. Everything can be done via a shortcut.
\n
It is built with Electron and uses React and Redux.
The app is considered complete. It fulfils its goal and has (to my knowledge) been stable and bug-free for several years. On Apple Silicon Macs, it is deprecated in favour of the iOS Overcast app. On Intel Macs it should continue to work for the foreseeable future. The repository is archived to denote that breaks due to external forces (such as Electron bugs or Overcast site changes) won’t be proactively addressed.
Control playback with keyboard media keys, even when not the frontmost app.
\n
\n
\n
Navigate episodes with ↓ and ↑ (or j and k).
\n
\n
\n
Keyboard shortcuts: ␣ pauses and resumes; ← rewinds; → fast-forwards; ⌫ goes back to home; ⌘⌫ deletes the current episode or podcast; ⌘↵ saves the current episode.
\n
\n
\n
“Permalink” opens in default browser.
\n
\n
\n
“Share link” and “Share link with timestamp” copy link directly to the clipboard.
\n
\n
\n
Automatically go back to home when episode ends.
\n
\n
\n
Go to specific episode by giving its URL on the command line.
\n
\n
\n
Tweaked user experience when copying and hovering over links.
Build for macOS and package as a zip: npm run package-macos
\n
Build for all platforms and package as a zip: npm run package
\n
\n
Currently, only macOS is supported. I do not intend to officially support other platforms in the near future since I cannot consistently and reliably test on them, but am willing to add support if someone wants to collaborate in doing the legwork.
\n
License
\n
The Unlicense (Public Domain, essentially)
\n
",
"readmeOriginal": "
Project Status
\n
The app is considered complete. It fulfils its goal and has (to my knowledge) been stable and bug-free for several years. On Apple Silicon Macs, it is deprecated in favour of the iOS Overcast app. On Intel Macs it should continue to work for the foreseeable future. The repository is archived to denote that breaks due to external forces (such as Electron bugs or Overcast site changes) won’t be proactively addressed.
Control playback with keyboard media keys, even when not the frontmost app.
\n
\n
\n
Navigate episodes with ↓ and ↑ (or j and k).
\n
\n
\n
Keyboard shortcuts: ␣ pauses and resumes; ← rewinds; → fast-forwards; ⌫ goes back to home; ⌘⌫ deletes the current episode or podcast; ⌘↵ saves the current episode.
\n
\n
\n
“Permalink” opens in default browser.
\n
\n
\n
“Share link” and “Share link with timestamp” copy link directly to the clipboard.
\n
\n
\n
Automatically go back to home when episode ends.
\n
\n
\n
Go to specific episode by giving its URL on the command line.
\n
\n
\n
Tweaked user experience when copying and hovering over links.
Build for macOS and package as a zip: npm run package-macos
\n
Build for all platforms and package as a zip: npm run package
\n
\n
Currently, only macOS is supported. I do not intend to officially support other platforms in the near future since I cannot consistently and reliably test on them, but am willing to add support if someone wants to collaborate in doing the legwork.
Frame is a native web3 interface that lets you sign data, securely manage accounts and transparently interact with dapps via web3 protocols like Ethereum and IPFS!
\n
Features
\n
\n
First-class Hardware Signer Support\n
\n
Use your GridPlus, Ledger and Trezor accounts with any dapp!
\n
\n
\n
Extensive Software Signer Support\n
\n
Use a mnemonic phrase, keystore.json or standalone private keys to create and backup accounts!
\n
\n
\n
Permissions\n
\n
You'll always have full control of which dapps have permission to access Frame and can monitor with full transparency what requests are being made to the network.
\n
\n
\n
Set your own connections to Ethereum and IPFS\n
\n
Never be locked into using a centralized gateway
\n
\n
\n
Menu Bar Support\n
\n
Frame stays out of the way and sits quietly in your menu bar until it's needed
On Ubuntu: Run sudo apt-get install build-essential libudev-devbefore running the demo.
\n
Build Apps
\n
› npm run bundle # Create app bundle\n› npm run build # Build apps for current platform
\n
Connect to Frame natively
\n
Frame exposes system-wide JSON-RPC endpoints ws://127.0.0.1:1248 and http://127.0.0.1:1248 that you can connect to from any app. We recommend using eth-provider to create a connection const provider = ethProvider('frame') as eth-provider will handle any connection edge cases across browsers and environments
\n
Frame's injected provider
\n
Frame also has a browser extension for injecting a Frame-connected EIP-1193 provider into web apps as window.ethereum. This can be used to inject a connection when an app does not provide the option to connect to Frame natively.
\n
Related
\n
\n
Frame Chat - Feel free to drop in and ask questions!
Frame is a native web3 interface that lets you sign data, securely manage accounts and transparently interact with dapps via web3 protocols like Ethereum and IPFS!
\n
Features
\n
\n
First-class Hardware Signer Support\n
\n
Use your GridPlus, Ledger and Trezor accounts with any dapp!
\n
\n
\n
Extensive Software Signer Support\n
\n
Use a mnemonic phrase, keystore.json or standalone private keys to create and backup accounts!
\n
\n
\n
Permissions\n
\n
You'll always have full control of which dapps have permission to access Frame and can monitor with full transparency what requests are being made to the network.
\n
\n
\n
Set your own connections to Ethereum and IPFS\n
\n
Never be locked into using a centralized gateway
\n
\n
\n
Menu Bar Support\n
\n
Frame stays out of the way and sits quietly in your menu bar until it's needed
On Ubuntu: Run sudo apt-get install build-essential libudev-devbefore running the demo.
\n
Build Apps
\n
› npm run bundle # Create app bundle\n› npm run build # Build apps for current platform
\n
Connect to Frame natively
\n
Frame exposes system-wide JSON-RPC endpoints ws://127.0.0.1:1248 and http://127.0.0.1:1248 that you can connect to from any app. We recommend using eth-provider to create a connection const provider = ethProvider('frame') as eth-provider will handle any connection edge cases across browsers and environments
\n
Frame's injected provider
\n
Frame also has a browser extension for injecting a Frame-connected EIP-1193 provider into web apps as window.ethereum. This can be used to inject a connection when an app does not provide the option to connect to Frame natively.
\n
Related
\n
\n
Frame Chat - Feel free to drop in and ask questions!
GDevelop is a full-featured, no-code, open-source game development software. You can build games for mobile, desktop and the web. GDevelop is fast and easy to use: the game logic is built up using an intuitive and powerful event-based system.
The Core library, the native and HTML5 game engines, the IDE, and all extensions (respectively Core, GDJS, newIDE and Extensions folders) are under the MIT license.
\n
The name, GDevelop, and its logo are the exclusive property of Florian Rival.
\n
\n
Games exported with GDevelop are based on the GDevelop game engine (see Core and GDJS folders): this engine is distributed under the MIT license so that you can distribute, sell or do anything with the games you created with GDevelop. In particular, you are not forced to make your game open-source.
\n
",
"readmeOriginal": "
\n
GDevelop is a full-featured, no-code, open-source game development software. You can build games for mobile, desktop and the web. GDevelop is fast and easy to use: the game logic is built up using an intuitive and powerful event-based system.
The Core library, the native and HTML5 game engines, the IDE, and all extensions (respectively Core, GDJS, newIDE and Extensions folders) are under the MIT license.
\n
The name, GDevelop, and its logo are the exclusive property of Florian Rival.
\n
\n
Games exported with GDevelop are based on the GDevelop game engine (see Core and GDJS folders): this engine is distributed under the MIT license so that you can distribute, sell or do anything with the games you created with GDevelop. In particular, you are not forced to make your game open-source.
Gaucho is an open-source, customizable task launcher to run your apps, commands or scripts.\nConfigure your commands and run them in a non-intrusive interface. Say goodbye to dozens of terminals.\nCheck https://angrykoala.github.io/gaucho/ to get started.
\n
\n
As a developer, it is quite common to repeat the same commands over an over. Running an app, starting a server, compiling your code or building a front-end for example. Most of these are just background tasks that just need to be running, or executed from time to time. Typing the command is slow, and having a terminal per task consumes our precious screen real state. Gaucho provides a simple way to de-clutter your screen by bundling all of those tasks in a simple menu to run and stop these, quick, and simple.
\n
Just add a name, type a command as you would in your terminal, set any env variable or path needed and you are good to go!
\n
Features
\n
\n
Easily run commands using a simple GUI.
\n
Schedule your tasks.
\n
Available for Windows, Linux and Mac.
\n
Organize your tasks.
\n
Environment variables.
\n
Import/Export tasks.
\n
Handy log output.
\n
Themes.
\n
Batch execution of tasks.
\n
\n
Download
\n
Gaucho is available for Windows, Mac and Linux.\nDownload here
Check the Official docs for the updated documentation
\n
\n
Gaucho allows you to configure tasks that can be grouped in suites. Each task can be configured by providing a name and command. Tasks can be executed independently, or the whole suite can be executed as once.
\n
Creating and Editing tasks
\n
By clicking the Edit button (top right corner). You'll enter the edit mode that allows you to create, delete, update and move tasks
\n
You can add new tasks to the current suite by clicking \"Add New Task\" at the bottom of the list. By clicking on a task name you'll be able to edit that task.
\n
While editing/creating a new tasks, you should add a name to the task and a command. The command can be any shell/terminal accepted command or an executable file. Optionally a path can be added as well, if no path is added, default user path will be used.
\n
The tasks can be deleted by clicking the Delete button. In this mode you can also move tasks (clicking on the drag handle), reorder suites, create suites (+ button), delete and rename suites and tasks (through the context menu)
\n
Development
\n
If you want to contribute to Gaucho, create a new different version of Gaucho, or compile it from source code, follow these instructions.
\n
\n
Check the Official docs for the updated intructions.
\n
\n
Clone/download source code from the GitHub. Make sure you have node and npm already installed in your system:
\n\n
npm install to install electron and all the dependencies.
\n
npm run start-dev to run gaucho in dev mode with chrome dev tools enabled.
\n
npm run dist to build and package gaucho for your system. The artifacts are located in dist/.\n
\n
If you encounter a problem while building, please, check Common Issues
\n
\n
\n
npm run dist-all to build and package gaucho for all supported architectures and platforms, it will take a while.\n
\n
Some dependencies may need installing, depending on the system, check the troubleshooting page
You can find more information about Gaucho License here
\n
\n
",
"readmeOriginal": "
Gaucho
\n
by @angrykoala \n
\n
\n
The Minimalist Task Launcher
\n
\n
Gaucho is an open-source, customizable task launcher to run your apps, commands or scripts.\nConfigure your commands and run them in a non-intrusive interface. Say goodbye to dozens of terminals.\nCheck https://angrykoala.github.io/gaucho/ to get started.
\n
\n
As a developer, it is quite common to repeat the same commands over an over. Running an app, starting a server, compiling your code or building a front-end for example. Most of these are just background tasks that just need to be running, or executed from time to time. Typing the command is slow, and having a terminal per task consumes our precious screen real state. Gaucho provides a simple way to de-clutter your screen by bundling all of those tasks in a simple menu to run and stop these, quick, and simple.
\n
Just add a name, type a command as you would in your terminal, set any env variable or path needed and you are good to go!
\n
Features
\n
\n
Easily run commands using a simple GUI.
\n
Schedule your tasks.
\n
Available for Windows, Linux and Mac.
\n
Organize your tasks.
\n
Environment variables.
\n
Import/Export tasks.
\n
Handy log output.
\n
Themes.
\n
Batch execution of tasks.
\n
\n
Download
\n
Gaucho is available for Windows, Mac and Linux.\nDownload here
Check the Official docs for the updated documentation
\n
\n
Gaucho allows you to configure tasks that can be grouped in suites. Each task can be configured by providing a name and command. Tasks can be executed independently, or the whole suite can be executed as once.
\n
Creating and Editing tasks
\n
By clicking the Edit button (top right corner). You'll enter the edit mode that allows you to create, delete, update and move tasks
\n
You can add new tasks to the current suite by clicking \"Add New Task\" at the bottom of the list. By clicking on a task name you'll be able to edit that task.
\n
While editing/creating a new tasks, you should add a name to the task and a command. The command can be any shell/terminal accepted command or an executable file. Optionally a path can be added as well, if no path is added, default user path will be used.
\n
The tasks can be deleted by clicking the Delete button. In this mode you can also move tasks (clicking on the drag handle), reorder suites, create suites (+ button), delete and rename suites and tasks (through the context menu)
\n
Development
\n
If you want to contribute to Gaucho, create a new different version of Gaucho, or compile it from source code, follow these instructions.
\n
\n
Check the Official docs for the updated intructions.
\n
\n
Clone/download source code from the GitHub. Make sure you have node and npm already installed in your system:
\n\n
npm install to install electron and all the dependencies.
\n
npm run start-dev to run gaucho in dev mode with chrome dev tools enabled.
\n
npm run dist to build and package gaucho for your system. The artifacts are located in dist/.\n
\n
If you encounter a problem while building, please, check Common Issues
\n
\n
\n
npm run dist-all to build and package gaucho for all supported architectures and platforms, it will take a while.\n
\n
Some dependencies may need installing, depending on the system, check the troubleshooting page
yarn serve:browser:app\nyarn serve:browser:wizard\nyarn serve:main-process\n\n// After build completed.\n\nyarn start
\n
Test
\n
yarn test
\n
Contributing
\n
❤️ Thanks for your interest!
\n
If you have suggestions for how this project could be improved, or want to report a bug, open an issue! We'd love all and any contributions. If you have questions, too, we'd love to hear them.
\n
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
\n
License
\n
MIT Licensed
\n
",
"readmeOriginal": "
Geek's Diary
\n
\n
Geek's Diary is markdown editor with version control system integrated. It helps programmers to write TIL(Today I Learned).
yarn serve:browser:app\nyarn serve:browser:wizard\nyarn serve:main-process\n\n// After build completed.\n\nyarn start
\n
Test
\n
yarn test
\n
Contributing
\n
❤️ Thanks for your interest!
\n
If you have suggestions for how this project could be improved, or want to report a bug, open an issue! We'd love all and any contributions. If you have questions, too, we'd love to hear them.
\n
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
Geniemoji is an app that makes using emojis on desktop simpler than ever \nIt works on operating systems including Windows, MacOS, and Linux! \nIt is an open source, desktop app built using Electron \nIts purpose is to serve you with the most relevant emojis based on your command!
\n
How does it work?
\n
\n
Geniemoji lives in your Menu Bar once the app is launched
\n
The app doesn't show up in the dock or anywhere else
\n
You can summon Geniemoji using either the shortcut keys: Control + e or by pressing its icon in the menu bar
\n
The shortcut keys are the same across all operating systems
\n
\n
This is Geniemoji 🧞♂️
\n
\n
\n
Geniemoji lives in your menu bar 👆
\n
\n
\n
\n
Geniemoji start page 👆
\n
\n
\n
\n
Geniemoji emoji search 👆
\n
\n
\n
\n
Geniemoji emoji search 👆
\n
\n
Using the app
\n
\n
Go to the releases tab and download the latest version for your operating system\nOR
\n
clone the repo or download it as a zip
\n
Run npm install followed by npm start to run Geniemoji
Geniemoji is an app that makes using emojis on desktop simpler than ever \nIt works on operating systems including Windows, MacOS, and Linux! \nIt is an open source, desktop app built using Electron \nIts purpose is to serve you with the most relevant emojis based on your command!
\n
How does it work?
\n
\n
Geniemoji lives in your Menu Bar once the app is launched
\n
The app doesn't show up in the dock or anywhere else
\n
You can summon Geniemoji using either the shortcut keys: Control + e or by pressing its icon in the menu bar
\n
The shortcut keys are the same across all operating systems
\n
\n
This is Geniemoji 🧞♂️
\n
\n
\n
Geniemoji lives in your menu bar 👆
\n
\n
\n
\n
Geniemoji start page 👆
\n
\n
\n
\n
Geniemoji emoji search 👆
\n
\n
\n
\n
Geniemoji emoji search 👆
\n
\n
Using the app
\n
\n
Go to the releases tab and download the latest version for your operating system\nOR
\n
clone the repo or download it as a zip
\n
Run npm install followed by npm start to run Geniemoji
Geppetto is a free and open animation tool to create and embed webGL animations in a web site. This is the repository for the browser app to create the animations.
This is the branch for the Geppetto Studio 'next' where the studio application will be turned into a PWA, saying goodbye to the electron app. For the electron app version, check the main branch.
You need to create a texture file as .PNG. in Geppetto you will make layers from your texture, and compose them into your image. Next step is to add mutations to your layer tree to create motion. You can then create timelines to define multiple animations.
\n
These animations (the created .json file and your texture .png) can then be loaded using the geppetto player and embedded in a website or electron app.
Geppetto is a free and open animation tool to create and embed webGL animations in a web site. This is the repository for the browser app to create the animations.
This is the branch for the Geppetto Studio 'next' where the studio application will be turned into a PWA, saying goodbye to the electron app. For the electron app version, check the main branch.
You need to create a texture file as .PNG. in Geppetto you will make layers from your texture, and compose them into your image. Next step is to add mutations to your layer tree to create motion. You can then create timelines to define multiple animations.
\n
These animations (the created .json file and your texture .png) can then be loaded using the geppetto player and embedded in a website or electron app.
\nGit-it is a desktop (Mac, Windows and Linux) app that teaches you how to use Git and GitHub on the command line.
\n
🚩The app includes translations in several languages: English, German, Spanish, French, Japanese, Korean, Kurdish, Polish, Portuguese, Ukrainian and traditional Chinese. 🚩\nDue to Code-Changes on handling translations, some translations are currently not visible as translated. The translations still need to be copied over to transifex, contributions are welcome! (see section 'Translations' and #77)
\n
The app was originally created by Jessica Lord (jlord) and it's current state is still strongly dependent on her Repositories and the operation of Reporobot on her servers. As the app seemed to be unmaintained, i (jotoeri) took it over and moved it to this organisation to update dependencies and content. It would just have been a pity to see such a great tutorial die. However, I would appreciate if Jessica wants to keep up this work together.
\n\n
Hello future Forkers, Branchers and Pull Requesters!
\n
This application contains challenges for learning Git and GitHub—by using real Git and GitHub, not emulators. You'll be learning the awesome (and not so scary) command line and GitHub which means when you finish all of the challenges you'll have real repositories on your GitHub account and green squares on your contribution chart.
\n
\n
What to Install
\n
You will need this app, Git-it as well as a text editor. You'll also of course need Git and the first challenge in Git-it helps you get that set up. But if you want to get a head start, go for it! You'll continue to use Git and your text editor throughout your bright social coding future.
\n
As a part of the challenges you'll also create a (free) account on GitHub. If you've already got one, high-five!
\n
Git
\n
We recommend installing Git on your computer by installing the latest version from the Git website.
\n
Note—If you're using Windows, you should use the Git Shell app as your terminal—it is installed with Git. In Mac and Linux you can use the app Terminal, which is already on your computer.
\n
Text Editor
\n
I'm quite partial (I'm on the team!) but Atom is a great text editor (also free) and it is built on Electron.js, just like Git-it. Visit the website and download the version for your operating system. Sublime, Microsoft VS Code and Adobe Brackets are other options.
\n
Git-it
\n
You can view the releases section of this repository to find the download for your operating system. Click to download your version. Once it has downloaded to your default Downloads directory, unzip the folder and run the Git-it executable. The executables for Mac, Windows and Linux:
\n
\n
\n
Mac Right (control) click the Git-it icon, select Open and then Open again. You can drag the icon into your Applications directory if you want, but it's not required. If needed, more detailed installation instructions can be found in this issue.
\n
Windows Double-click the executable.
\n
Linux Double-click the executable. If the app isn't running, see this issue.
\n
\n
Get Started!
\n
Open Git-it and click the button to begin the first challenge. Have your terminal and text editor open, too. Follow along with the instructions in each challenge and use the terminal or editor as instructed.
\n
When you've completed the steps in a challenge click 'Verify'. Depending on the challenge you may need to also select the folder you did your work in for Git-it to verify.
Code snippets often times look like $ some code-stuff --here. The dollar sign identifies the line as one a user would enter into the command line, but you don't actually include it when you type it into terminal. In this case, you'd actually just type some code-stuff --here.
\n
Variables are indicated by <VARIABLENAME> in code snippets. When you actually use the line of code, replace <VARIABLENAME>, with your variable. For instance to make a new folder in terminal the format is, mkdir <FOLDERNAME>, so if you wanted to make a folder named 'octocat', you'd type: mkdir octocat.
\n
Command line, terminal and bash all basically mean the same thing: the MS-DOS, Doogie Howser looking screen full of words and numbers. It's awesomely powerful and allows you to control your computer with text commands.
\n
You can do a lot of things from your terminal like delete, rename, copy or create files and folders; run scripts and send things back and forth between servers (like the ones storing things on GitHub.com) and your computer (also a server!).
\n
Translations
\n
You found some english text on the translated content? That might happen, if we changed some content on the english base but the appropriate translation is still missing. We are happy on every contribution, so feel free to head over to the Transifex Project to insert the right translations there! The next release will then be a bit more complete! ☺️🎉
\n
",
"readmeOriginal": "
Git-it (Desktop App)
\n
\n\n
\n
\nGit-it is a desktop (Mac, Windows and Linux) app that teaches you how to use Git and GitHub on the command line.
\n
🚩The app includes translations in several languages: English, German, Spanish, French, Japanese, Korean, Kurdish, Polish, Portuguese, Ukrainian and traditional Chinese. 🚩\nDue to Code-Changes on handling translations, some translations are currently not visible as translated. The translations still need to be copied over to transifex, contributions are welcome! (see section 'Translations' and #77)
\n
The app was originally created by Jessica Lord (jlord) and it's current state is still strongly dependent on her Repositories and the operation of Reporobot on her servers. As the app seemed to be unmaintained, i (jotoeri) took it over and moved it to this organisation to update dependencies and content. It would just have been a pity to see such a great tutorial die. However, I would appreciate if Jessica wants to keep up this work together.
\n\n
Hello future Forkers, Branchers and Pull Requesters!
\n
This application contains challenges for learning Git and GitHub—by using real Git and GitHub, not emulators. You'll be learning the awesome (and not so scary) command line and GitHub which means when you finish all of the challenges you'll have real repositories on your GitHub account and green squares on your contribution chart.
\n
\n
What to Install
\n
You will need this app, Git-it as well as a text editor. You'll also of course need Git and the first challenge in Git-it helps you get that set up. But if you want to get a head start, go for it! You'll continue to use Git and your text editor throughout your bright social coding future.
\n
As a part of the challenges you'll also create a (free) account on GitHub. If you've already got one, high-five!
\n
Git
\n
We recommend installing Git on your computer by installing the latest version from the Git website.
\n
Note—If you're using Windows, you should use the Git Shell app as your terminal—it is installed with Git. In Mac and Linux you can use the app Terminal, which is already on your computer.
\n
Text Editor
\n
I'm quite partial (I'm on the team!) but Atom is a great text editor (also free) and it is built on Electron.js, just like Git-it. Visit the website and download the version for your operating system. Sublime, Microsoft VS Code and Adobe Brackets are other options.
\n
Git-it
\n
You can view the releases section of this repository to find the download for your operating system. Click to download your version. Once it has downloaded to your default Downloads directory, unzip the folder and run the Git-it executable. The executables for Mac, Windows and Linux:
\n
\n
\n
Mac Right (control) click the Git-it icon, select Open and then Open again. You can drag the icon into your Applications directory if you want, but it's not required. If needed, more detailed installation instructions can be found in this issue.
\n
Windows Double-click the executable.
\n
Linux Double-click the executable. If the app isn't running, see this issue.
\n
\n
Get Started!
\n
Open Git-it and click the button to begin the first challenge. Have your terminal and text editor open, too. Follow along with the instructions in each challenge and use the terminal or editor as instructed.
\n
When you've completed the steps in a challenge click 'Verify'. Depending on the challenge you may need to also select the folder you did your work in for Git-it to verify.
Code snippets often times look like $ some code-stuff --here. The dollar sign identifies the line as one a user would enter into the command line, but you don't actually include it when you type it into terminal. In this case, you'd actually just type some code-stuff --here.
\n
Variables are indicated by <VARIABLENAME> in code snippets. When you actually use the line of code, replace <VARIABLENAME>, with your variable. For instance to make a new folder in terminal the format is, mkdir <FOLDERNAME>, so if you wanted to make a folder named 'octocat', you'd type: mkdir octocat.
\n
Command line, terminal and bash all basically mean the same thing: the MS-DOS, Doogie Howser looking screen full of words and numbers. It's awesomely powerful and allows you to control your computer with text commands.
\n
You can do a lot of things from your terminal like delete, rename, copy or create files and folders; run scripts and send things back and forth between servers (like the ones storing things on GitHub.com) and your computer (also a server!).
\n
Translations
\n
You found some english text on the translated content? That might happen, if we changed some content on the english base but the appropriate translation is still missing. We are happy on every contribution, so feel free to head over to the Transifex Project to insert the right translations there! The next release will then be a bit more complete! ☺️🎉
The goal of GitHoard is to trivialize cloning repositories for future offline review.
\n
Often, the process of copy & pasting a repository to the command line breaks focus and flow, and other Git GUI's perpetuate this problem by requiring the selecting of a directory before starting the clone process.
\n
GitHoard solves this by overriding the HTTP protocols associated with GitHub (github-mac:// and github-win://) and Sourcetree (sourcetree://) as well as creating a new protocol (githoard://) then automatically cloning when a link using that protocol is clicked.
\n
Download
\n
Download the latest version from the releases page.
\n
Demo
\n
Install
\n
\n
Get Addon
\n
\n
See Changes
\n
\n
Locate
\n
\n
Destroy
\n
\n
Build Setup
\n
# install dependencies\nnpm install\n\n# serve with hot reload at localhost:9080\nnpm run electron:serve\n\n# build electron application for production\nnpm run electron:build\n\n\n# run unit & end-to-end tests\nnpm run test:unit\n\n# lint all JS/Vue component files in `src/`\nnpm run lint\n
\n
Related
\n
Want to clone stuff even quicker? Check out our Firefox browser addon
GitHoard logo created by Beep Boop Bang Bang LLC.\nMakes use of Git Logo by Jason Long which is licensed under the Creative Commons Attribution 3.0 Unported License.\nSee https://git-scm.com/downloads/logos
\n
",
"readmeOriginal": "
\n\n
\n
\nGitHoard\n
\n
\nHoard git repositories with ease\n
\n
\n
\n\n
Overview
\n
The goal of GitHoard is to trivialize cloning repositories for future offline review.
\n
Often, the process of copy & pasting a repository to the command line breaks focus and flow, and other Git GUI's perpetuate this problem by requiring the selecting of a directory before starting the clone process.
\n
GitHoard solves this by overriding the HTTP protocols associated with GitHub (github-mac:// and github-win://) and Sourcetree (sourcetree://) as well as creating a new protocol (githoard://) then automatically cloning when a link using that protocol is clicked.
\n
Download
\n
Download the latest version from the releases page.
\n
Demo
\n
Install
\n
\n
Get Addon
\n
\n
See Changes
\n
\n
Locate
\n
\n
Destroy
\n
\n
Build Setup
\n
# install dependencies\nnpm install\n\n# serve with hot reload at localhost:9080\nnpm run electron:serve\n\n# build electron application for production\nnpm run electron:build\n\n\n# run unit & end-to-end tests\nnpm run test:unit\n\n# lint all JS/Vue component files in `src/`\nnpm run lint\n
\n
Related
\n
Want to clone stuff even quicker? Check out our Firefox browser addon
GitHoard logo created by Beep Boop Bang Bang LLC.\nMakes use of Git Logo by Jason Long which is licensed under the Creative Commons Attribution 3.0 Unported License.\nSee https://git-scm.com/downloads/logos
You can install this alongside your existing GitHub Desktop for Mac or GitHub\nDesktop for Windows application.
\n
Linux is not officially supported; however, you can find installers created for Linux from a fork of GitHub Desktop in the Community Releases section.
\n
NOTE: There is no current migration path to import your existing\nrepositories into the new application - you can drag-and-drop your repositories\nfrom disk onto the application to get started.
\n
Beta Channel
\n
Want to test out new features and get fixes before everyone else? Install the\nbeta channel to get access to early builds of Desktop:
First, please search the open issues\nand closed issues\nto see if your issue hasn't already been reported (it may also be fixed).
\n
There is also a list of known issues\nthat are being tracked against Desktop, and some of these issues have workarounds.
\n
If you can't find an issue that matches what you're seeing, open a new issue,\nchoose the right template and provide us with enough information to investigate\nfurther.
\n
The issue I reported isn't fixed yet. What can I do?
\n
If nobody has responded to your issue in a few days, you're welcome to respond to it with a friendly ping in the issue. Please do not respond more than a second time if nobody has responded. The GitHub Desktop maintainers are constrained in time and resources, and diagnosing individual configurations can be difficult and time consuming. While we'll try to at least get you pointed in the right direction, we can't guarantee we'll be able to dig too deeply into any one person's issue.
\n
How can I contribute to GitHub Desktop?
\n
The CONTRIBUTING.md document will help you get setup and\nfamiliar with the source. The documentation folder also contains more\nresources relevant to the project.
\n
If you're looking for something to work on, check out the help wanted label.
\n
More Resources
\n
See desktop.github.com for more product-oriented\ninformation about GitHub Desktop.
\n
See our getting started documentation for more information on how to set up, authenticate, and configure GitHub Desktop.
The MIT license grant is not for GitHub's trademarks, which include the logo\ndesigns. GitHub reserves all trademark and copyright rights in and to all\nGitHub trademarks. GitHub's logos include, for instance, the stylized\nInvertocat designs that include \"logo\" in the file title in the following\nfolder: logos.
\n
GitHub® and its stylized versions and the Invertocat mark are GitHub's\nTrademarks or registered Trademarks. When using GitHub's logos, be sure to\nfollow the GitHub logo guidelines.
You can install this alongside your existing GitHub Desktop for Mac or GitHub\nDesktop for Windows application.
\n
Linux is not officially supported; however, you can find installers created for Linux from a fork of GitHub Desktop in the Community Releases section.
\n
NOTE: There is no current migration path to import your existing\nrepositories into the new application - you can drag-and-drop your repositories\nfrom disk onto the application to get started.
\n
Beta Channel
\n
Want to test out new features and get fixes before everyone else? Install the\nbeta channel to get access to early builds of Desktop:
First, please search the open issues\nand closed issues\nto see if your issue hasn't already been reported (it may also be fixed).
\n
There is also a list of known issues\nthat are being tracked against Desktop, and some of these issues have workarounds.
\n
If you can't find an issue that matches what you're seeing, open a new issue,\nchoose the right template and provide us with enough information to investigate\nfurther.
\n
The issue I reported isn't fixed yet. What can I do?
\n
If nobody has responded to your issue in a few days, you're welcome to respond to it with a friendly ping in the issue. Please do not respond more than a second time if nobody has responded. The GitHub Desktop maintainers are constrained in time and resources, and diagnosing individual configurations can be difficult and time consuming. While we'll try to at least get you pointed in the right direction, we can't guarantee we'll be able to dig too deeply into any one person's issue.
\n
How can I contribute to GitHub Desktop?
\n
The CONTRIBUTING.md document will help you get setup and\nfamiliar with the source. The documentation folder also contains more\nresources relevant to the project.
\n
If you're looking for something to work on, check out the help wanted label.
\n
More Resources
\n
See desktop.github.com for more product-oriented\ninformation about GitHub Desktop.
\n
See our getting started documentation for more information on how to set up, authenticate, and configure GitHub Desktop.
The MIT license grant is not for GitHub's trademarks, which include the logo\ndesigns. GitHub reserves all trademark and copyright rights in and to all\nGitHub trademarks. GitHub's logos include, for instance, the stylized\nInvertocat designs that include \"logo\" in the file title in the following\nfolder: logos.
\n
GitHub® and its stylized versions and the Invertocat mark are GitHub's\nTrademarks or registered Trademarks. When using GitHub's logos, be sure to\nfollow the GitHub logo guidelines.
GitHub Notifications on your menu bar. Available on macOS, Windows and Linux. Gitify Mobile has been deprecated in favour of the official GitHub mobile app.
Optional: If you prefer to use your own OAuth credentials, you can do so by passing them as environment variables when bundling the app. This is optional as the app has some default \"development\" keys (use at your own discretion).
To watch for changes(webpack) in the src directory:
\n
yarn run watch\n
\n
To run the electron app:
\n
yarn start\n
\n
Releases
\n
The release process is automated. Follow the steps below.
\n\n
Create a new draft release. Set the tag version to something with the format of v1.2.3. Save as a draft.
\n
Once everything is merged to main, create a branch that starts with release/vX.X.X (ie. release/v1.2.3).
\n
In the same branch, bump the version of the app in the package.json file and open a PR. GitHub Actions will build, sign and upload the release assets for each commit to that branch as long as a branch is named like release/vX.X.X and there is a draft release with the same version number(package.json).
\n
Merge your release branch into main.
\n
Publish the draft release once you've added notes to it and all assets are there.
\n\n
Tests
\n
There are 2 checks - one for prettier and one for the unit tests with jest.
\n
// Run prettier to check\nyarn run prettier:check\n\n// Run linter & unit tests with coverage\nyarn run test\n\n// Run jest directly - allows to pass arguments like `--watch`\nyarn run jest\n
\n
FAQ
\n
My notifications aren't showing?
\n
Some organisations require applications to request access before allowing access to any data (including notifications) about their repositories.
\n
To check if Gitify is approved by your organisation you can go to https://github.com/settings/applications, then click on Gitify and scroll to Organization access.
\n
Something looks wrong - How can I debug?
\n
You can debug Gitify by pressing alt + command + I. This will open the dev tools and then you can see any logs, network requests etc.
\n
Contributing
\n\n
Fork it!
\n
Create your feature branch: git checkout -b my-new-feature
\n
Commit your changes: git commit -am 'Add some feature'
\n
Push to the branch: git push origin my-new-feature
\n
Submit a pull request
\n
Make sure tests are passing
\n\n
License
\n
Gitify is licensed under the MIT Open Source license. For more information, see the LICENSE file in this repository.
\n
",
"readmeOriginal": "
Gitify
\n
\n
GitHub Notifications on your menu bar. Available on macOS, Windows and Linux. Gitify Mobile has been deprecated in favour of the official GitHub mobile app.
Optional: If you prefer to use your own OAuth credentials, you can do so by passing them as environment variables when bundling the app. This is optional as the app has some default \"development\" keys (use at your own discretion).
To watch for changes(webpack) in the src directory:
\n
yarn run watch\n
\n
To run the electron app:
\n
yarn start\n
\n
Releases
\n
The release process is automated. Follow the steps below.
\n\n
Create a new draft release. Set the tag version to something with the format of v1.2.3. Save as a draft.
\n
Once everything is merged to main, create a branch that starts with release/vX.X.X (ie. release/v1.2.3).
\n
In the same branch, bump the version of the app in the package.json file and open a PR. GitHub Actions will build, sign and upload the release assets for each commit to that branch as long as a branch is named like release/vX.X.X and there is a draft release with the same version number(package.json).
\n
Merge your release branch into main.
\n
Publish the draft release once you've added notes to it and all assets are there.
\n\n
Tests
\n
There are 2 checks - one for prettier and one for the unit tests with jest.
\n
// Run prettier to check\nyarn run prettier:check\n\n// Run linter & unit tests with coverage\nyarn run test\n\n// Run jest directly - allows to pass arguments like `--watch`\nyarn run jest\n
\n
FAQ
\n
My notifications aren't showing?
\n
Some organisations require applications to request access before allowing access to any data (including notifications) about their repositories.
\n
To check if Gitify is approved by your organisation you can go to https://github.com/settings/applications, then click on Gitify and scroll to Organization access.
\n
Something looks wrong - How can I debug?
\n
You can debug Gitify by pressing alt + command + I. This will open the dev tools and then you can see any logs, network requests etc.
\n
Contributing
\n\n
Fork it!
\n
Create your feature branch: git checkout -b my-new-feature
\n
Commit your changes: git commit -am 'Add some feature'
\n
Push to the branch: git push origin my-new-feature
\n
Submit a pull request
\n
Make sure tests are passing
\n\n
License
\n
Gitify is licensed under the MIT Open Source license. For more information, see the LICENSE file in this repository.
Gitmoji is an initiative to standardize and explain the use of emojis on GitHub commit messages.
\n
Using emojis on commit messages provides an easy way of identifying the purpose or intention of a commit with only looking at the emojis used. As there are a lot of different emojis I found the need of creating a guide that can help to use emojis easier.
\n
The gitmojis are published on the following package in order to be used as a dependency 📦.
Gitmoji is an initiative to standardize and explain the use of emojis on GitHub commit messages.
\n
Using emojis on commit messages provides an easy way of identifying the purpose or intention of a commit with only looking at the emojis used. As there are a lot of different emojis I found the need of creating a guide that can help to use emojis easier.
\n
The gitmojis are published on the following package in order to be used as a dependency 📦.
Be sure to have Node.js and git installed. Linux/Mac users who wish to do builds for Windows will need to have WINE installed. Mac users who wish to do builds for Windows will need to XQuartz installed in order to run WINE. It is recommended that Mac users install both Wine and XQuartz via Homebrew.
Be sure to have Node.js and git installed. Linux/Mac users who wish to do builds for Windows will need to have WINE installed. Mac users who wish to do builds for Windows will need to XQuartz installed in order to run WINE. It is recommended that Mac users install both Wine and XQuartz via Homebrew.
Google Assistant Unofficial Desktop Client is a cross-platform desktop client for Google Assistant based on Google Assistant SDK.
\n
\n
Note:
\n
The \"Google Assistant Unofficial Desktop Client\" is under development. So, if you find any bugs or have any suggestion, feel free to post an issue or a pull request.
\n
\n
Inspiration
\n
The design is inspired by Google Assistant in Chrome OS and comes in both Light Mode (beta) and Dark Mode 😉.
\n
\n
Download
\n
You can build the assistant on your machine if you prefer (see How to Build). If you don't want to build the project for yourself, you can download the Assistant Setup/Installer for the respective platform from here (releases). You can download from other official sources as well.
\n
Windows (using winget)
\n
\n
If you are on Windows 11, chances are you have winget pre-installed.\nIf you are on older version of Windows (Windows 10) and don't have it installed, check out\nInstall Winget\ndocumentation section to learn how to install it.
\n
\n
⚡ Stable versions:
\n
winget install "g-assist" -e\">
PS> winget install \"g-assist\"-e
\n
🧪 Preview Versions (Pre-release versions):
\n
winget install "g-assist-preview" -e\">
PS> winget install \"g-assist-preview\"-e
\n
MacOS (using brew)
\n
\n
Visit brew.sh to learn how to install brew if you don't have it\ninstalled on your machine.
\n
\n
$ brew install --cask google-assistant
\n
Linux (using snap)
\n
\n
Some linux distros like Ubuntu, KDE Neon, Manjaro, Zorin OS, etc. come pre-installed with\nsnap. For distros without out-of-the-box support for snaps, visit Installing snapd\ndocumentation page.
\n
\n
Manually download from the Snapstore:
\n
\n
⚡ Stable versions:
\n
$ sudo snap install g-assist
\n
🧪 Preview versions (Pre-release versions):
\n
If you want to install release candidates:
\n
$ sudo snap install g-assist --candidate
\n
If you want to install beta versions:
\n
$ sudo snap install g-assist --beta
\n
Getting Started
\n
In order to use the client, you must have a \"Key File\" and \"Token\" for authentication which you can get by going through Device Registration process. You can go through the wiki given below to get started.
\n
\"Setup Authentication for Google Assistant Unofficial Desktop Client\" Wiki (For both Device Registration & Authentication help):
After you have registered your device and downloaded the required authentication files, you can head on to Settings and set the \"Key File Path\" and \"Saved Tokens Path\" to the location where the respective files are located.
\n
Want to Contribute?
\n
You are more than welcome to contribute to all kinds of contributions:
\n
\n
🤔 Request/Suggest a feature
\n
🐛 Report a bug
\n
📖 Make this documentation better
\n
💻 Contribute with the code
\n
\n
Before you start, we highly recommend you check the Google Assistant Unofficial Desktop Client's contributing guidelines.
\n
Default Keyboard Shortcut
\n
\n
Windows: Win + Shift + A
\n
MacOS: Cmd + Shift + A
\n
Linux: Super + Shift + A
\n
\n
Note: Keyboard shortcut is configurable in the settings
\n
Other Libraries Used
\n
\n
\n
p5.js:
\n
\n
For visualization purpose when the user speaks through mic.
Google Assistant Unofficial Desktop Client is a cross-platform desktop client for Google Assistant based on Google Assistant SDK.
\n
\n
Note:
\n
The \"Google Assistant Unofficial Desktop Client\" is under development. So, if you find any bugs or have any suggestion, feel free to post an issue or a pull request.
\n
\n
Inspiration
\n
The design is inspired by Google Assistant in Chrome OS and comes in both Light Mode (beta) and Dark Mode 😉.
\n
\n
Download
\n
You can build the assistant on your machine if you prefer (see How to Build). If you don't want to build the project for yourself, you can download the Assistant Setup/Installer for the respective platform from here (releases). You can download from other official sources as well.
\n
Windows (using winget)
\n
\n
If you are on Windows 11, chances are you have winget pre-installed.\nIf you are on older version of Windows (Windows 10) and don't have it installed, check out\nInstall Winget\ndocumentation section to learn how to install it.
\n
\n
⚡ Stable versions:
\n
PS> winget install \"g-assist\"-e
\n
🧪 Preview Versions (Pre-release versions):
\n
PS> winget install \"g-assist-preview\"-e
\n
MacOS (using brew)
\n
\n
Visit brew.sh to learn how to install brew if you don't have it\ninstalled on your machine.
\n
\n
$ brew install --cask google-assistant
\n
Linux (using snap)
\n
\n
Some linux distros like Ubuntu, KDE Neon, Manjaro, Zorin OS, etc. come pre-installed with\nsnap. For distros without out-of-the-box support for snaps, visit Installing snapd\ndocumentation page.
\n
\n
Manually download from the Snapstore:
\n
\n
⚡ Stable versions:
\n
$ sudo snap install g-assist
\n
🧪 Preview versions (Pre-release versions):
\n
If you want to install release candidates:
\n
$ sudo snap install g-assist --candidate
\n
If you want to install beta versions:
\n
$ sudo snap install g-assist --beta
\n
Getting Started
\n
In order to use the client, you must have a \"Key File\" and \"Token\" for authentication which you can get by going through Device Registration process. You can go through the wiki given below to get started.
\n
\"Setup Authentication for Google Assistant Unofficial Desktop Client\" Wiki (For both Device Registration & Authentication help):
After you have registered your device and downloaded the required authentication files, you can head on to Settings and set the \"Key File Path\" and \"Saved Tokens Path\" to the location where the respective files are located.
\n
Want to Contribute?
\n
You are more than welcome to contribute to all kinds of contributions:
\n
\n
🤔 Request/Suggest a feature
\n
🐛 Report a bug
\n
📖 Make this documentation better
\n
💻 Contribute with the code
\n
\n
Before you start, we highly recommend you check the Google Assistant Unofficial Desktop Client's contributing guidelines.
\n
Default Keyboard Shortcut
\n
\n
Windows: Win + Shift + A
\n
MacOS: Cmd + Shift + A
\n
Linux: Super + Shift + A
\n
\n
Note: Keyboard shortcut is configurable in the settings
\n
Other Libraries Used
\n
\n
\n
p5.js:
\n
\n
For visualization purpose when the user speaks through mic.
Alternately, download the binary from the Releases tab.
\n
Linux installation
\n
The graphiql-app uses the AppImage format for its Linux version. You download it from the Electron app directory (click the \"Download for Linux\"-button) or from the Releases tab.
\n
Either way, you will get a .AppImage binary. Put it in a safe place and make it executable:
\n
chmod +x graphiql-app-0.7.2-x86_64.AppImage\n
\n
Then simply execute the app. It will ask whether to add shortcuts to your desktop and menus for easy access in the future.
\n
Getting started developing
\n
\n
Branch and/or clone the repo locally.
\n
cd into it
\n
install all the require packages: npm i
\n
build the project: npm run build
\n
start the project: npm start
\n
\n
",
"readmeOriginal": "
GraphiQL.app
\n
\n
A light, Electron-based wrapper around GraphiQL.
\n
Provides a tabbed interface for editing and testing GraphQL queries/mutations with GraphiQL.
Alternately, download the binary from the Releases tab.
\n
Linux installation
\n
The graphiql-app uses the AppImage format for its Linux version. You download it from the Electron app directory (click the \"Download for Linux\"-button) or from the Releases tab.
\n
Either way, you will get a .AppImage binary. Put it in a safe place and make it executable:
\n
chmod +x graphiql-app-0.7.2-x86_64.AppImage\n
\n
Then simply execute the app. It will ask whether to add shortcuts to your desktop and menus for easy access in the future.
This desktop app is just a wrapper which starts a chromium instance locally and runs the actual web-app in it. All\nrights to the Google Chat product is reserved by\nGoogle Inc.\nThis desktop client has no way to access none of your data.
This desktop app is just a wrapper which starts a chromium instance locally and runs the actual web-app in it. All\nrights to the Google Chat product is reserved by\nGoogle Inc.\nThis desktop client has no way to access none of your data.
Meet gSubs. A desktop app that finds you the perfect subtitle match for your videos. Simply download now and drag and drop videos to get started.\n gSubs is multi-platform, open-source, and built entirely on web technology.
The following features made what gSubs is today and many more features will be, hopefully added with the support of great open source community in the future.\n \n
\n
Drag & Drop
\n
Just drag and drop the video files that you want to search subtitle for and gSubs will do it's job. No more browsing and selecting videos from the mysteries directories that you don't know.
\n
Multiple Files
\n
gSubs supports multiple files input, meaning you can drag and drop as many files as you want and gSubs will find subtitles for each and every file. You have an entire season with dozen of episodes? gSubs gets your subtitles for the entire season in one time.
\n
Search Subtitles
\n
You don't have a video file but just want to donwload your favourite movies or series subtitles? Don't worry, gSubs consists of the search function where you can input any queries for search. gSubs will give you the results according to the language that has been set.
\n
10 Languages
\n
gSubs are capable of finding you subtitles for 10 languages which are English, Español, Français, Italiano, Nederlands, Polski, Português, Român, Svenska and Türkçe. Many more languages will be added soon.
\n
Auto Update
\n
gSubs have auto update feature included in it. This means you don't have to manually download the latest release every time. gSubs downloads and installs the latest release automatically.
\n \n
⚡️ Contributing
\n
gSubs is completely open-source. If you'd like to help out by adding features, working on bug fixes,\nor assisting in other parts of development, here's how to get started:
Clone it to your\nlocal device: git clone git@github.com:sanjevirau/gsubs.git
\n
Install the dependencies: npm install
\n
Run the app by starting electron, building the code and watch for changes:\nnpm start\n
To build for production (should not generally be used):
\n
\n
Build the actual app for Windows: npm run dist
\n
gSubs can also be build into Mac and Linux by change the dist script to build -wlm --config in the package.json file and then building the app using npm run dist
\n\n
We does give you credits for your contributions. Every contributors name will be shown in our contributors page at gSubs Contributors.
\n \n
📦 Sources
\n
gSubs currently uses 2 sources to gather subtitles. When user drag and drop the video files, gSubs looks into SubDB source first followed by OpenSubtitles source. We hope to add more sources in the future.
\n
Standard sources:
\n
\n
SubDB
\n
OpenSubtitles
\n
Addic7ed
\n
\n \n
🌟 Special Thanks
\n
We would like to thank the following great beings and projects for assisting and giving us the motivation to build gSubs directly or indirectly.
Meet gSubs. A desktop app that finds you the perfect subtitle match for your videos. Simply download now and drag and drop videos to get started.\n gSubs is multi-platform, open-source, and built entirely on web technology.
The following features made what gSubs is today and many more features will be, hopefully added with the support of great open source community in the future.\n \n
\n
Drag & Drop
\n
Just drag and drop the video files that you want to search subtitle for and gSubs will do it's job. No more browsing and selecting videos from the mysteries directories that you don't know.
\n
Multiple Files
\n
gSubs supports multiple files input, meaning you can drag and drop as many files as you want and gSubs will find subtitles for each and every file. You have an entire season with dozen of episodes? gSubs gets your subtitles for the entire season in one time.
\n
Search Subtitles
\n
You don't have a video file but just want to donwload your favourite movies or series subtitles? Don't worry, gSubs consists of the search function where you can input any queries for search. gSubs will give you the results according to the language that has been set.
\n
10 Languages
\n
gSubs are capable of finding you subtitles for 10 languages which are English, Español, Français, Italiano, Nederlands, Polski, Português, Român, Svenska and Türkçe. Many more languages will be added soon.
\n
Auto Update
\n
gSubs have auto update feature included in it. This means you don't have to manually download the latest release every time. gSubs downloads and installs the latest release automatically.
\n \n
⚡️ Contributing
\n
gSubs is completely open-source. If you'd like to help out by adding features, working on bug fixes,\nor assisting in other parts of development, here's how to get started:
Clone it to your\nlocal device: git clone git@github.com:sanjevirau/gsubs.git
\n
Install the dependencies: npm install
\n
Run the app by starting electron, building the code and watch for changes:\nnpm start\n
To build for production (should not generally be used):
\n
\n
Build the actual app for Windows: npm run dist
\n
gSubs can also be build into Mac and Linux by change the dist script to build -wlm --config in the package.json file and then building the app using npm run dist
\n\n
We does give you credits for your contributions. Every contributors name will be shown in our contributors page at gSubs Contributors.
\n \n
📦 Sources
\n
gSubs currently uses 2 sources to gather subtitles. When user drag and drop the video files, gSubs looks into SubDB source first followed by OpenSubtitles source. We hope to add more sources in the future.
\n
Standard sources:
\n
\n
SubDB
\n
OpenSubtitles
\n
Addic7ed
\n
\n \n
🌟 Special Thanks
\n
We would like to thank the following great beings and projects for assisting and giving us the motivation to build gSubs directly or indirectly.
A free GUI application for HandBrake and FFmpeg/FFprobe on Windows, macOS and Linux (+ Linux Docker image) with an emphasis on multi HandBrake/FFmpeg instance batch conversion (including recursive folder scans and folder watching). The destination folder structure is kept the same as the source folder structure. Media in subfolders is also converted. Multiple folders can be monitored and different conversion presets can be specified for each folder. Also included:
\n
-Remote monitoring feature to monitor batch file conversions in any browser
\n
-Basic h265 benchmarking
\n
-Health check feature which can scan for corrupt video files using HandBrake (quick scan) or FFmpeg (thorough scan), although this is not always accurate. Attempt repair file feature included too.
\n
This is a standalone program on Windows but requires HandBrakeCLI to be installed on Linux and Mac. For a server application with similar functionality please see Tdarr.
\n
Settings help is available by pressing the blue ? diamond icons spread throughout the program:
\n
\n
The program scans the source folders for all files. It then compares the source folder files with the destination folder files to see if any of the source files exist in the destination folder already. If not, the program queues the files for conversion.
\n
4 worker modules (default number) then work through the conversion queue. If periodic scanning is enabled then the program will run at the chosen interval.
\n
After it a bit more testing it seems that weird things can happen if you monitor a folder which is being downloaded to. It seems sometimes conversions start before a file has fully downloaded. To solve this, I recommend using a temporary download folder before moving completed files into your HBBB source folder.
\n
If you use a download program which has an 'incomplete downloads' folder etc, do not put that folder inside your main source folder else you may end up converting each file twice.
\n
The program won't work properly if you put the destination folder in a folder inside the source folder because the program is recreating the source folder structure inside the destination folder. It will cause an infinite loop of creating more and more sub-folders each time you run the program. So it will NOT work properly if you do something like this:
\n
Source:
\n
D:\\Videos
\n
Destination:
\n
D:\\Videos\\Converted
\n
It will work properly if you do something like this etc:
\n
Source:
\n
D:\\Videos
\n
Destination:
\n
D:\\Converted
\n
",
"readmeOriginal": "
HBBatchBeast for HandBrake and FFmpeg/FFprobe (Windows, macOS, Linux & Docker)
A free GUI application for HandBrake and FFmpeg/FFprobe on Windows, macOS and Linux (+ Linux Docker image) with an emphasis on multi HandBrake/FFmpeg instance batch conversion (including recursive folder scans and folder watching). The destination folder structure is kept the same as the source folder structure. Media in subfolders is also converted. Multiple folders can be monitored and different conversion presets can be specified for each folder. Also included:
\n
-Remote monitoring feature to monitor batch file conversions in any browser
\n
-Basic h265 benchmarking
\n
-Health check feature which can scan for corrupt video files using HandBrake (quick scan) or FFmpeg (thorough scan), although this is not always accurate. Attempt repair file feature included too.
\n
This is a standalone program on Windows but requires HandBrakeCLI to be installed on Linux and Mac. For a server application with similar functionality please see Tdarr.
\n
Settings help is available by pressing the blue ? diamond icons spread throughout the program:
\n
\n
The program scans the source folders for all files. It then compares the source folder files with the destination folder files to see if any of the source files exist in the destination folder already. If not, the program queues the files for conversion.
\n
4 worker modules (default number) then work through the conversion queue. If periodic scanning is enabled then the program will run at the chosen interval.
\n
After it a bit more testing it seems that weird things can happen if you monitor a folder which is being downloaded to. It seems sometimes conversions start before a file has fully downloaded. To solve this, I recommend using a temporary download folder before moving completed files into your HBBB source folder.
\n
If you use a download program which has an 'incomplete downloads' folder etc, do not put that folder inside your main source folder else you may end up converting each file twice.
\n
The program won't work properly if you put the destination folder in a folder inside the source folder because the program is recreating the source folder structure inside the destination folder. It will cause an infinite loop of creating more and more sub-folders each time you run the program. So it will NOT work properly if you do something like this:
\n
Source:
\n
D:\\Videos
\n
Destination:
\n
D:\\Videos\\Converted
\n
It will work properly if you do something like this etc:
HashTag is a minimalist mirosoftware that hash some text. This application should mainly be used by developers who want to quickly hash something. It can also keep in memory your previous hashes in order to save some time during your development process. Currently, their are 3 algorithms : MD5, SHA-256 and Bcrypt.
\n
Installation
\n
⚠️ Currently, this software is only available for Windows (Linux and MacOS are not supported) \n \nYou can either download it from GitHub using the latest release, from the Electron apps website or from the Softpedia website.\n \nOnce done, double click on HashTag.exe and it be ready to use.
\n
Run HashTag locally
\n\n
Clone the repository
\n\n
$ git clone https://github.com/MrAnyx/HashTag.git
\n \n\n
Install the dependencies
\n\n
$ npm install
\n \n\n
Run the application
\n\n
$ npm start
\n \n\n
Build the application
\n\n
$ npm run build
\n
Issue
\n
If you find a security issue or any other kind of issue, feel free to create an issue by clicking here.\nSame thing for the pull requests and feature requests.
If you like this project or if you want to support me, you can simply smash the like button, just to let me know.
\n
Preview
\n
\n \n
\n
\n \n
\n
License
\n
Currently, this project is under the GPL-3.0 license.
\n
",
"readmeOriginal": "
\n \n
\n
Overview
\n
HashTag is a minimalist mirosoftware that hash some text. This application should mainly be used by developers who want to quickly hash something. It can also keep in memory your previous hashes in order to save some time during your development process. Currently, their are 3 algorithms : MD5, SHA-256 and Bcrypt.
\n
Installation
\n
⚠️ Currently, this software is only available for Windows (Linux and MacOS are not supported) \n \nYou can either download it from GitHub using the latest release, from the Electron apps website or from the Softpedia website.\n \nOnce done, double click on HashTag.exe and it be ready to use.
\n
Run HashTag locally
\n\n
Clone the repository
\n\n
$ git clone https://github.com/MrAnyx/HashTag.git
\n \n\n
Install the dependencies
\n\n
$ npm install
\n \n\n
Run the application
\n\n
$ npm start
\n \n\n
Build the application
\n\n
$ npm run build
\n
Issue
\n
If you find a security issue or any other kind of issue, feel free to create an issue by clicking here.\nSame thing for the pull requests and feature requests.
SECURITY WARNING: both graphql-playground-html and all four (4) of it's middleware dependents until graphql-playground-html@1.6.22 were subject to an XSS Reflection attack vulnerability only to unsanitized user input strings to the functions therein. This was resolved in graphql-playground-html@^1.6.22. More InformationCVE-2020-4038
\n
\n
Future of this repository: See this issue for details.
\n\n
GraphQL IDE for better development workflows (GraphQL Subscriptions, interactive docs & collaboration).
⚙ GraphQL Config support with multiple Projects & Endpoints
\n
🚥 Apollo Tracing support
\n
\n
Security Details
\n
\n
NOTE: only unsanitized user input to the functions in these packages is vulnerable to the recently reported XSS Reflection attack.
\n
\n
Impact
\n
\n
Impacted are any and all unsanitized user-defined input to:\n-renderPlaygroundPage()\n-koaPlayground()\n-expressPlayground()\n-koaPlayground()\n-`lambdaPlayground()
\n
\n
\n
If you used static values, such as graphql-playground-electron does in it's webpack config, as well as the most common middleware implementations out there, they were not vulnerable to the attack.
\n
\n
The only reason this vulnerability exists is because we are using template strings in renderPlaygroundPage() with potentially unsanitized user defined variables. This allows an attacker to inject html and javascript into the page.
Common examples may be user-defined path parameters, query string, unsanitized UI provided values in database, etc., that are used to build template strings or passed directly to a renderPlaygroundPage() or the matching middleware function equivalent listed above.
\n
Impacted Packages
\n
All versions of these packages are impacted until the ones specified below, which are now safe for user defined input:
\n
\n
graphql-playground-html: ☔ safe @ 1.6.22
\n
graphql-playground-express☔ safe @ 1.7.16
\n
graphql-playground-koa☔ safe @ 1.6.15
\n
graphql-playground-hapi☔ safe @ 1.6.13
\n
graphql-playground-lambda☔ safe @ 1.7.17
\n
graphql-playground-electron has always been ☔ safe from XSS attacks! This is because configuration is statically defined it's webpack config
\n
graphql-playground-react is safe because it does not use renderPlaygroundPage() anywhere, and thus is not susceptible to template string XSS reflection attacks.
\n
\n
More Information
\n
See the security docs for more details on how your implementation might be impacted by this vulnerability. It contains safe examples, unsafe examples, workarounds, and more details.
\n
We've also provided 'an example of the xss using the express middleware
GraphQL Playground uses components of GraphiQL under the hood but is meant as a more powerful GraphQL IDE enabling better (local) development workflows. Compared to GraphiQL, the GraphQL Playground ships with the following additional features:
\n
\n
Interactive, multi-column schema documentation
\n
Automatic schema reloading
\n
Support for GraphQL Subscriptions
\n
Query history
\n
Configuration of HTTP headers
\n
Tabs
\n
\n
See the following question for more additonal features.
\n
What's the difference between the desktop app and the web version?
\n
The desktop app is the same as the web version but includes these additional features:
\n
\n
Partial support for graphql-config enabling features like multi-environment setups (no support for sending HTTP headers).
\n
Double click on *.graphql files.
\n
\n
How does GraphQL Bin work?
\n
You can easily share your Playgrounds with others by clicking on the \"Share\" button and sharing the generated link. You can think about GraphQL Bin like Pastebin for your GraphQL queries including the context (endpoint, HTTP headers, open tabs etc).
schemaIntrospectionResult - The result of an introspection query (an object of this form: {__schema: {...}}) The playground automatically fetches the schema from the endpoint. This is only needed when you want to override the schema.
\n
tabsTab[] - An array of tabs to inject. Note: When using this feature, tabs will be resetted each time the page is reloaded
In addition to this, the React app provides some more properties:
\n
\n
props (React Component)
\n
createApolloLink [(session: Session, subscriptionEndpoint?: string) => ApolloLink] - this is the equivalent to the fetcher of GraphiQL. For each query that is being executed, this function will be called
\n
\n
createApolloLink is only available in the React Component and not the middlewares, because the content must be serializable as it is being printed into a HTML template.
\n
As HTML Page
\n
If you simply want to render the Playground HTML on your own, for example when implementing a GraphQL Server, there are 2 options for you:
Note: In case you do not want to serve assets from a CDN (like jsDelivr) and instead use a local copy, you will need to install graphql-playground-react from npm, and then replace all instances of //cdn.jsdelivr.net/npm with ./node_modules. An example can be found here
\n
As React Component
\n
Install
\n
yarn add graphql-playground-react
\n
Use
\n
GraphQL Playground provides a React component responsible for rendering the UI and Session management.\nThere are 3 dependencies needed in order to run the graphql-playground-react React component.
# Pick the one that matches your server framework\nyarn add graphql-playground-middleware-express # for Express or Connect\nyarn add graphql-playground-middleware-hapi\nyarn add graphql-playground-middleware-koa\nyarn add graphql-playground-middleware-lambda
\n
Usage with example
\n
We have a full example for each of the frameworks below:
To initiate the signature process please open a PR against this repo. The EasyCLA bot will block the merge if we still need a membership agreement from you.
If your company benefits from GraphQL and you would like to provide essential financial support for the systems and people that power our community, please also consider membership in the GraphQL Foundation.
\n
Custom Theme
\n
From graphql-playground-react@1.7.0 on you can provide a codeTheme property to the React Component to customize your color theme.\nThese are the available options:
This is repository is a \"mono repo\" and contains multiple packages using Yarn workspaces. Please be aware that versions are not synchronised between packages. The versions of the release page refer to the electron app.
\n
Packages
\n
In the folder packages you'll find the following packages:
\n
\n
graphql-playground-electron: Cross-platform electron app which uses graphql-playground-react
\n
graphql-playground-html: Simple HTML page rendering a version of graphql-playground-react hosted on JSDeliver
\n
graphql-playground-middleware-express: Express middleware using graphql-playground-html
\n
graphql-playground-middleware-hapi: Hapi middleware using graphql-playground-html
\n
graphql-playground-middleware-koa: Koa middleware using graphql-playground-html
\n
graphql-playground-middleware-lambda: AWS Lambda middleware using graphql-playground-html
\n
graphql-playground-react: Core of GraphQL Playground built with ReactJS
Join our Discord Server if you run into issues or have questions. We love talking to you!
\n
\n
",
"readmeOriginal": "
\n
\n
\n
\n
SECURITY WARNING: both graphql-playground-html and all four (4) of it's middleware dependents until graphql-playground-html@1.6.22 were subject to an XSS Reflection attack vulnerability only to unsanitized user input strings to the functions therein. This was resolved in graphql-playground-html@^1.6.22. More InformationCVE-2020-4038
\n
\n
Future of this repository: See this issue for details.
\n\n
GraphQL IDE for better development workflows (GraphQL Subscriptions, interactive docs & collaboration).
⚙ GraphQL Config support with multiple Projects & Endpoints
\n
🚥 Apollo Tracing support
\n
\n
Security Details
\n
\n
NOTE: only unsanitized user input to the functions in these packages is vulnerable to the recently reported XSS Reflection attack.
\n
\n
Impact
\n
\n
Impacted are any and all unsanitized user-defined input to:\n-renderPlaygroundPage()\n-koaPlayground()\n-expressPlayground()\n-koaPlayground()\n-`lambdaPlayground()
\n
\n
\n
If you used static values, such as graphql-playground-electron does in it's webpack config, as well as the most common middleware implementations out there, they were not vulnerable to the attack.
\n
\n
The only reason this vulnerability exists is because we are using template strings in renderPlaygroundPage() with potentially unsanitized user defined variables. This allows an attacker to inject html and javascript into the page.
Common examples may be user-defined path parameters, query string, unsanitized UI provided values in database, etc., that are used to build template strings or passed directly to a renderPlaygroundPage() or the matching middleware function equivalent listed above.
\n
Impacted Packages
\n
All versions of these packages are impacted until the ones specified below, which are now safe for user defined input:
\n
\n
graphql-playground-html: ☔ safe @ 1.6.22
\n
graphql-playground-express☔ safe @ 1.7.16
\n
graphql-playground-koa☔ safe @ 1.6.15
\n
graphql-playground-hapi☔ safe @ 1.6.13
\n
graphql-playground-lambda☔ safe @ 1.7.17
\n
graphql-playground-electron has always been ☔ safe from XSS attacks! This is because configuration is statically defined it's webpack config
\n
graphql-playground-react is safe because it does not use renderPlaygroundPage() anywhere, and thus is not susceptible to template string XSS reflection attacks.
\n
\n
More Information
\n
See the security docs for more details on how your implementation might be impacted by this vulnerability. It contains safe examples, unsafe examples, workarounds, and more details.
\n
We've also provided 'an example of the xss using the express middleware
GraphQL Playground uses components of GraphiQL under the hood but is meant as a more powerful GraphQL IDE enabling better (local) development workflows. Compared to GraphiQL, the GraphQL Playground ships with the following additional features:
\n
\n
Interactive, multi-column schema documentation
\n
Automatic schema reloading
\n
Support for GraphQL Subscriptions
\n
Query history
\n
Configuration of HTTP headers
\n
Tabs
\n
\n
See the following question for more additonal features.
\n
What's the difference between the desktop app and the web version?
\n
The desktop app is the same as the web version but includes these additional features:
\n
\n
Partial support for graphql-config enabling features like multi-environment setups (no support for sending HTTP headers).
\n
Double click on *.graphql files.
\n
\n
How does GraphQL Bin work?
\n
You can easily share your Playgrounds with others by clicking on the \"Share\" button and sharing the generated link. You can think about GraphQL Bin like Pastebin for your GraphQL queries including the context (endpoint, HTTP headers, open tabs etc).
schemaIntrospectionResult - The result of an introspection query (an object of this form: {__schema: {...}}) The playground automatically fetches the schema from the endpoint. This is only needed when you want to override the schema.
\n
tabsTab[] - An array of tabs to inject. Note: When using this feature, tabs will be resetted each time the page is reloaded
In addition to this, the React app provides some more properties:
\n
\n
props (React Component)
\n
createApolloLink [(session: Session, subscriptionEndpoint?: string) => ApolloLink] - this is the equivalent to the fetcher of GraphiQL. For each query that is being executed, this function will be called
\n
\n
createApolloLink is only available in the React Component and not the middlewares, because the content must be serializable as it is being printed into a HTML template.
\n
As HTML Page
\n
If you simply want to render the Playground HTML on your own, for example when implementing a GraphQL Server, there are 2 options for you:
Note: In case you do not want to serve assets from a CDN (like jsDelivr) and instead use a local copy, you will need to install graphql-playground-react from npm, and then replace all instances of //cdn.jsdelivr.net/npm with ./node_modules. An example can be found here
\n
As React Component
\n
Install
\n
yarn add graphql-playground-react
\n
Use
\n
GraphQL Playground provides a React component responsible for rendering the UI and Session management.\nThere are 3 dependencies needed in order to run the graphql-playground-react React component.
# Pick the one that matches your server framework\nyarn add graphql-playground-middleware-express # for Express or Connect\nyarn add graphql-playground-middleware-hapi\nyarn add graphql-playground-middleware-koa\nyarn add graphql-playground-middleware-lambda
\n
Usage with example
\n
We have a full example for each of the frameworks below:
To initiate the signature process please open a PR against this repo. The EasyCLA bot will block the merge if we still need a membership agreement from you.
If your company benefits from GraphQL and you would like to provide essential financial support for the systems and people that power our community, please also consider membership in the GraphQL Foundation.
\n
Custom Theme
\n
From graphql-playground-react@1.7.0 on you can provide a codeTheme property to the React Component to customize your color theme.\nThese are the available options:
This is repository is a \"mono repo\" and contains multiple packages using Yarn workspaces. Please be aware that versions are not synchronised between packages. The versions of the release page refer to the electron app.
\n
Packages
\n
In the folder packages you'll find the following packages:
\n
\n
graphql-playground-electron: Cross-platform electron app which uses graphql-playground-react
\n
graphql-playground-html: Simple HTML page rendering a version of graphql-playground-react hosted on JSDeliver
\n
graphql-playground-middleware-express: Express middleware using graphql-playground-html
\n
graphql-playground-middleware-hapi: Hapi middleware using graphql-playground-html
\n
graphql-playground-middleware-koa: Koa middleware using graphql-playground-html
\n
graphql-playground-middleware-lambda: AWS Lambda middleware using graphql-playground-html
\n
graphql-playground-react: Core of GraphQL Playground built with ReactJS
Heads or Tails” is a multiplayer game, based on the DPOS blockchain with instant payments, built-in wallet and exchange platform for popular cryptocurrencies. Statistics of your games and a chat are also available.
\n
You can start a new game with your own stake or choose an existing one by choosing one “Heads” or “Tails” side of the coin.\nThe game of “Heads or tails” is still insanely popular worldwide.\nThe history of many peoples carefully keeps the rules of the “Heads or tails” game. It was called differently from one country to another. The name of the game often depended on what was depicted on the coin.
\n
One could find players on loud Eastern bazaars, under the moonlight of the Great Silk Road or on Her Majesty’s ship, fell calm somewhere in the Mediterranean Sea.\nAnd now, the most popular game of “Heads or tails” is on the blockchain.\nThe information about every side of the coin is encrypted and saved in the blockchain. The game is played strictly between the players.\nYou can transfer or send cryptocurrency to your address or to the exchange market using your profile. The statistics of your games and a chat are also available.
Heads or Tails” is a multiplayer game, based on the DPOS blockchain with instant payments, built-in wallet and exchange platform for popular cryptocurrencies. Statistics of your games and a chat are also available.
\n
You can start a new game with your own stake or choose an existing one by choosing one “Heads” or “Tails” side of the coin.\nThe game of “Heads or tails” is still insanely popular worldwide.\nThe history of many peoples carefully keeps the rules of the “Heads or tails” game. It was called differently from one country to another. The name of the game often depended on what was depicted on the coin.
\n
One could find players on loud Eastern bazaars, under the moonlight of the Great Silk Road or on Her Majesty’s ship, fell calm somewhere in the Mediterranean Sea.\nAnd now, the most popular game of “Heads or tails” is on the blockchain.\nThe information about every side of the coin is encrypted and saved in the blockchain. The game is played strictly between the players.\nYou can transfer or send cryptocurrency to your address or to the exchange market using your profile. The statistics of your games and a chat are also available.
If you download from the Releases tab, select the installer for your system.
\n
\n\n
\n
Platform
\n
File
\n
\n\n\n
\n
Windows x64
\n
Helios-Launcher-setup-VERSION.exe
\n
\n
\n
macOS x64
\n
Helios-Launcher-setup-VERSION-x64.dmg
\n
\n
\n
macOS arm64
\n
Helios-Launcher-setup-VERSION-arm64.dmg
\n
\n
\n
Linux x64
\n
Helios-Launcher-setup-VERSION.AppImage
\n
\n\n
\n
Console
\n
To open the console, use the following keybind.
\n
ctrl + shift + i
\n
Ensure that you have the console tab selected. Do not paste anything into the console unless you are 100% sure of what it will do. Pasting the wrong thing can expose sensitive information.
\n
Export Output to a File
\n
If you want to export the console output, simply right click anywhere on the console and click Save as..
\n
\n
Development
\n
This section details the setup of a basic developmentment environment.
Note that you cannot open the DevTools window while using this debug configuration. Chromium only allows one debugger, opening another will crash the program.
\n\n
Note on Third-Party Usage
\n
Please give credit to the original author and provide a link to the original source. This is free software, please do at least this much.
If you download from the Releases tab, select the installer for your system.
\n
\n\n
\n
Platform
\n
File
\n
\n\n\n
\n
Windows x64
\n
Helios-Launcher-setup-VERSION.exe
\n
\n
\n
macOS x64
\n
Helios-Launcher-setup-VERSION-x64.dmg
\n
\n
\n
macOS arm64
\n
Helios-Launcher-setup-VERSION-arm64.dmg
\n
\n
\n
Linux x64
\n
Helios-Launcher-setup-VERSION.AppImage
\n
\n\n
\n
Console
\n
To open the console, use the following keybind.
\n
ctrl + shift + i
\n
Ensure that you have the console tab selected. Do not paste anything into the console unless you are 100% sure of what it will do. Pasting the wrong thing can expose sensitive information.
\n
Export Output to a File
\n
If you want to export the console output, simply right click anywhere on the console and click Save as..
\n
\n
Development
\n
This section details the setup of a basic developmentment environment.
Note that you cannot open the DevTools window while using this debug configuration. Chromium only allows one debugger, opening another will crash the program.
\n\n
Note on Third-Party Usage
\n
Please give credit to the original author and provide a link to the original source. This is free software, please do at least this much.
Heroic is an Open Source Game Launcher for Linux, Windows and MacOS (for both Native and Windows Games using Crossover).\nRight now it supports launching games from the Epic Games Store using Legendary and GOG Games using our custom implementation with gogdl.\nHeroic is built with Web Technologies like: TypeScript, React, NodeJS and Electron.
Go to the debug tab on vscode and start the two tasks, 'Start renderer process' and 'Debug main process' or yarn react-start && yarn electron
\n\n
Building with VS Code
\n\n
Download Yarn and Node.js
\n
Download the dependencies with yarn
\n
Open the tasks. Select \"Build with [your OS]\"
\n\n
Development Using a Container
\n
If you would prefer, we have a docker container defined to develop / build Heroic with (a potential reason being to avoid loading tons of dependencies on your host filesystem). There are two methods, based on whether you use VS Code.
\n
VS Code
\n
There is a .devcontainer directory containing a definition that VS Code will recognize for automatically opening your local Heroic directory in a container in VS Code.
\n
NOTE: this requires that you install the 'Remote - Containers' extension.
\n\n
Open the root of your local Heroic directory in VS Code.
\n
You should get a prompt in the bottom right to build and open the project in the dev container.
\n
If the above prompt does not occur, on the bottom left, there is a green icon that should be there if the remote extension is installed. Click on it, and select \"Reopen in container\".
\n
The bottom left green icon should now say: \"Dev Container: Heroic Games Launcher\".
\n\n
After the container's package manager runs, open a new terminal session and you should be able to run bash commands from within the container. Any yarn dist builds should also now show up on your host filesystem.
\n
Manually Building the Docker Image
\n
If you don't use VS Code or don't want it integrated with the container, you can build and run the container manually using either Docker or Podman.
\n\n
From the root of your local Heroic directory, run:
Assuming all went well, you can now enter the container:
\n\n
docker run -it -v ./:/tmp/heroic localhost/heroicdevcontainer:latest\n
\n\n
The above command will mount your local Heroic dir to /tmp/heroic in the container (unless you used a different path).
\n\n
cd /tmp/heoric\n
\n
And you should be good to go, code and build away!
\n
Linux
\n
Flatpak
\n
Heroic is available on Flathub, so should be on most distros when using Software Centers like Pop_OS! Store or Discover.\nBut can also be accessed here
\n
Debian, Ubuntu and Derivatives
\n
Download the heroic_x.x.x_amd64.deb from the Releases section
Otherwise you can install it via your prefered AUR helper, e.g. yay.
\n
Fedora
\n
Heroic for Fedora is available on the COPR repo or as the binary on the releases page.
\n
Other Distributions (AppImage and TAR.XZ)
\n
Download the heroic-x.x.x.AppImage or heroic-x.x.x.tar.xz from the Releases section.\nMake sure you have Curl and Gawk, normally it comes with most distros but check for them if you have any issue.
\n
To make the AppImage it executable use:
\n
chmod +x heroic-x.x.x.AppImage
\n
To run it use:
\n
./heroic-x.x.x.AppImage
\n
For the tar.xz file, you need first to extract it somewhere, enter the folder and run:
\n
chmod +x heroic
\n
To run it use:
\n
./heroic
\n
Windows
\n
If you use WinGet, just type: winget install HeroicGamesLauncher.HeroicGamesLauncher. otherwise\ndownload Heroic.Setup.x.x.x.exe or the Portable Heroic-x.x.x.exe file and run it. It will install it to the start menu and desktop, use those to run it.
\n
macOS
\n
If you use Homebrew, just type: brew install --cask heroic. Otherwise, download Heroic-x.x.x.dmg and move the Heroic App to the Applications folder.
\n
Build binaries locally (All platforms)
\n
\n
All Platforms:\nRequires NodeJS to build \nUse yarn or npm
Heroic is an Open Source Game Launcher for Linux, Windows and MacOS (for both Native and Windows Games using Crossover).\nRight now it supports launching games from the Epic Games Store using Legendary and GOG Games using our custom implementation with gogdl.\nHeroic is built with Web Technologies like: TypeScript, React, NodeJS and Electron.
Go to the debug tab on vscode and start the two tasks, 'Start renderer process' and 'Debug main process' or yarn react-start && yarn electron
\n\n
Building with VS Code
\n\n
Download Yarn and Node.js
\n
Download the dependencies with yarn
\n
Open the tasks. Select \"Build with [your OS]\"
\n\n
Development Using a Container
\n
If you would prefer, we have a docker container defined to develop / build Heroic with (a potential reason being to avoid loading tons of dependencies on your host filesystem). There are two methods, based on whether you use VS Code.
\n
VS Code
\n
There is a .devcontainer directory containing a definition that VS Code will recognize for automatically opening your local Heroic directory in a container in VS Code.
\n
NOTE: this requires that you install the 'Remote - Containers' extension.
\n\n
Open the root of your local Heroic directory in VS Code.
\n
You should get a prompt in the bottom right to build and open the project in the dev container.
\n
If the above prompt does not occur, on the bottom left, there is a green icon that should be there if the remote extension is installed. Click on it, and select \"Reopen in container\".
\n
The bottom left green icon should now say: \"Dev Container: Heroic Games Launcher\".
\n\n
After the container's package manager runs, open a new terminal session and you should be able to run bash commands from within the container. Any yarn dist builds should also now show up on your host filesystem.
\n
Manually Building the Docker Image
\n
If you don't use VS Code or don't want it integrated with the container, you can build and run the container manually using either Docker or Podman.
\n\n
From the root of your local Heroic directory, run:
Assuming all went well, you can now enter the container:
\n\n
docker run -it -v ./:/tmp/heroic localhost/heroicdevcontainer:latest\n
\n\n
The above command will mount your local Heroic dir to /tmp/heroic in the container (unless you used a different path).
\n\n
cd /tmp/heoric\n
\n
And you should be good to go, code and build away!
\n
Linux
\n
Flatpak
\n
Heroic is available on Flathub, so should be on most distros when using Software Centers like Pop_OS! Store or Discover.\nBut can also be accessed here
\n
Debian, Ubuntu and Derivatives
\n
Download the heroic_x.x.x_amd64.deb from the Releases section
Otherwise you can install it via your prefered AUR helper, e.g. yay.
\n
Fedora
\n
Heroic for Fedora is available on the COPR repo or as the binary on the releases page.
\n
Other Distributions (AppImage and TAR.XZ)
\n
Download the heroic-x.x.x.AppImage or heroic-x.x.x.tar.xz from the Releases section.\nMake sure you have Curl and Gawk, normally it comes with most distros but check for them if you have any issue.
\n
To make the AppImage it executable use:
\n
chmod +x heroic-x.x.x.AppImage
\n
To run it use:
\n
./heroic-x.x.x.AppImage
\n
For the tar.xz file, you need first to extract it somewhere, enter the folder and run:
\n
chmod +x heroic
\n
To run it use:
\n
./heroic
\n
Windows
\n
If you use WinGet, just type: winget install HeroicGamesLauncher.HeroicGamesLauncher. otherwise\ndownload Heroic.Setup.x.x.x.exe or the Portable Heroic-x.x.x.exe file and run it. It will install it to the start menu and desktop, use those to run it.
\n
macOS
\n
If you use Homebrew, just type: brew install --cask heroic. Otherwise, download Heroic-x.x.x.dmg and move the Heroic App to the Applications folder.
\n
Build binaries locally (All platforms)
\n
\n
All Platforms:\nRequires NodeJS to build \nUse yarn or npm
This project has entered on looking for new owner stage.
\n
Developing this tool has being great, but recently I (@gilmarsquinelato) am not contributing too much with it, and I don't think it's fair to the people that are\nusing this tool, so I am stopping to contribute with this tool and happy to transfer the project to the people that really wants to keep maintaining it.
\n
Thank you!
\n\n
This app was developed with the objective to help the developers to manage the app translations.
\n
Any type of contributions are welcome.
\n
Features
\n
\n
Detect changed, missing, duplicated/untranslated keys and added translations
\n
Add, remove and rename translation keys (context menu)
This project has entered on looking for new owner stage.
\n
Developing this tool has being great, but recently I (@gilmarsquinelato) am not contributing too much with it, and I don't think it's fair to the people that are\nusing this tool, so I am stopping to contribute with this tool and happy to transfer the project to the people that really wants to keep maintaining it.
\n
Thank you!
\n\n
This app was developed with the objective to help the developers to manage the app translations.
\n
Any type of contributions are welcome.
\n
Features
\n
\n
Detect changed, missing, duplicated/untranslated keys and added translations
\n
Add, remove and rename translation keys (context menu)
Image Shrinker is a tool to minify images and graphics using the best available libraries for image processing: pngquant, mozjpg, SVGO and Gifsicle. Built with web technologies in Electron
\n
\n
How to use
\n
Drag your image file onto the Image Shrinker window and it will saved in the same or in a predefined folder as reduced image.\nThe original graphic will be not replaced.
Image Shrinker is a tool to minify images and graphics using the best available libraries for image processing: pngquant, mozjpg, SVGO and Gifsicle. Built with web technologies in Electron
\n
\n
How to use
\n
Drag your image file onto the Image Shrinker window and it will saved in the same or in a predefined folder as reduced image.\nThe original graphic will be not replaced.
git clone https://github.com/kevinjobs/Horen.git\n\ncd Horen\n\n# then\nnpm install\n\n# start the app\nnpm run start\n\n# build the app\nnpm run build\n\n# package\nnpm run dist
\n
LICENSE
\n
Apache License Version 2.0
\n
",
"readmeOriginal": "
Horen
\n
Horen 是一个用 React 和 electron 打造的本地音乐播放器,正在不断开发中
\n
\n
预览图
\n
曲库界面
\n
\n
设置界面
\n
\n
专辑预览
\n
\n
播放列表
\n
\n
正在播放(歌词显示)
\n
\n
功能进度
\n
\n
主体界面
\n
当前播放
\n
播放队列
\n
控制播放进度
\n
设置界面
\n
控制音量
\n
歌词显示
\n
调音器
\n
播放主界面
\n
\n
优化
\n
\n
不一次性读取所有音频 避免内存占用过高
\n
\n
开发
\n
git clone https://github.com/kevinjobs/Horen.git\n\ncd Horen\n\n# then\nnpm install\n\n# start the app\nnpm run start\n\n# build the app\nnpm run build\n\n# package\nnpm run dist
The goal of the project is to create a beautiful and extensible experience for command-line interface users, built on open web standards. In the beginning, our focus will be primarily around speed, stability and the development of the correct API for extension authors.
\n
In the future, we anticipate the community will come up with innovative additions to enhance what could be the simplest, most powerful and well-tested interface for productivity.
Hyper is available as Nix package, to install the app run this command:
\n
nix-env -i hyper
\n
macOS
\n
Use Homebrew Cask to download the app by running these commands:
\n
brew update\nbrew install --cask hyper
\n
Windows
\n
Use chocolatey to install the app by running the following command (package information can be found here):
\n
choco install hyper
\n
Note: The version available on Homebrew Cask, Chocolatey, Snapcraft or the AUR may not be the latest. Please consider downloading it from here if that's the case.
\n
Contribute
\n
Regardless of the platform you are working on, you will need to have Yarn installed. If you have never installed Yarn before, you can find out how at: https://yarnpkg.com/en/docs/install.
\n\n
Install necessary packages:
\n\n
\n
Windows\n
\n
Be sure to run yarn global add windows-build-tools from an elevated prompt (as an administrator) to install windows-build-tools.
\n
\n
\n
macOS\n
\n
Once you have installed Yarn, you can skip this section!
\n
\n
\n
Linux (You can see here what your Linux is based on.)\n
\n
RPM-based\n
\n
GraphicsMagick
\n
libicns-utils
\n
xz (Installed by default on some distributions.)
\n
\n
\n
Debian-based\n
\n
graphicsmagick
\n
icnsutils
\n
xz-utils
\n
\n
\n
\n
\n
\n\n
Fork this repository to your own GitHub account and then clone it to your local device
\n
Install the dependencies: yarn
\n
Build the code and watch for changes: yarn run dev
\n
To run hyper
\n\n
\n
yarn run app from another terminal tab/window/pane
\n
If you are using Visual Studio Code, select Launch Hyper in debugger configuration to launch a new Hyper instance with debugger attached.
\n
If you interrupt yarn run dev, you'll need to relaunch it each time you want to test something. Webpack will watch changes and will rebuild renderer code when needed (and only what have changed). You'll just have to relaunch electron by using yarn run app or VSCode launch task.
\n
\n
To make sure that your code works in the finished application, you can generate the binaries like this:
\n
yarn run dist
\n
After that, you will see the binary in the ./dist folder!
\n
Known issues that can happen during development
\n
Error building node-pty
\n
If after building during development you get an alert dialog related to node-pty issues,\nmake sure its build process is working correctly by running yarn run rebuild-node-pty.
\n
If you are on macOS, this typically is related to Xcode issues (like not having agreed\nto the Terms of Service by running sudo xcodebuild after a fresh Xcode installation).
\n
Error with C++ on macOS when running yarn
\n
If you are getting compiler errors when running yarn add the environment variable export CXX=clang++
\n
Error with codesign on macOS when running yarn run dist
\n
If you have issues in the codesign step when running yarn run dist on macOS, you can temporarily disable code signing locally by setting\nexport CSC_IDENTITY_AUTO_DISCOVERY=false for the current terminal session.
The goal of the project is to create a beautiful and extensible experience for command-line interface users, built on open web standards. In the beginning, our focus will be primarily around speed, stability and the development of the correct API for extension authors.
\n
In the future, we anticipate the community will come up with innovative additions to enhance what could be the simplest, most powerful and well-tested interface for productivity.
Hyper is available as Nix package, to install the app run this command:
\n
nix-env -i hyper
\n
macOS
\n
Use Homebrew Cask to download the app by running these commands:
\n
brew update\nbrew install --cask hyper
\n
Windows
\n
Use chocolatey to install the app by running the following command (package information can be found here):
\n
choco install hyper
\n
Note: The version available on Homebrew Cask, Chocolatey, Snapcraft or the AUR may not be the latest. Please consider downloading it from here if that's the case.
\n
Contribute
\n
Regardless of the platform you are working on, you will need to have Yarn installed. If you have never installed Yarn before, you can find out how at: https://yarnpkg.com/en/docs/install.
\n\n
Install necessary packages:
\n\n
\n
Windows\n
\n
Be sure to run yarn global add windows-build-tools from an elevated prompt (as an administrator) to install windows-build-tools.
\n
\n
\n
macOS\n
\n
Once you have installed Yarn, you can skip this section!
\n
\n
\n
Linux (You can see here what your Linux is based on.)\n
\n
RPM-based\n
\n
GraphicsMagick
\n
libicns-utils
\n
xz (Installed by default on some distributions.)
\n
\n
\n
Debian-based\n
\n
graphicsmagick
\n
icnsutils
\n
xz-utils
\n
\n
\n
\n
\n
\n\n
Fork this repository to your own GitHub account and then clone it to your local device
\n
Install the dependencies: yarn
\n
Build the code and watch for changes: yarn run dev
\n
To run hyper
\n\n
\n
yarn run app from another terminal tab/window/pane
\n
If you are using Visual Studio Code, select Launch Hyper in debugger configuration to launch a new Hyper instance with debugger attached.
\n
If you interrupt yarn run dev, you'll need to relaunch it each time you want to test something. Webpack will watch changes and will rebuild renderer code when needed (and only what have changed). You'll just have to relaunch electron by using yarn run app or VSCode launch task.
\n
\n
To make sure that your code works in the finished application, you can generate the binaries like this:
\n
yarn run dist
\n
After that, you will see the binary in the ./dist folder!
\n
Known issues that can happen during development
\n
Error building node-pty
\n
If after building during development you get an alert dialog related to node-pty issues,\nmake sure its build process is working correctly by running yarn run rebuild-node-pty.
\n
If you are on macOS, this typically is related to Xcode issues (like not having agreed\nto the Terms of Service by running sudo xcodebuild after a fresh Xcode installation).
\n
Error with C++ on macOS when running yarn
\n
If you are getting compiler errors when running yarn add the environment variable export CXX=clang++
\n
Error with codesign on macOS when running yarn run dist
\n
If you have issues in the codesign step when running yarn run dist on macOS, you can temporarily disable code signing locally by setting\nexport CSC_IDENTITY_AUTO_DISCOVERY=false for the current terminal session.
This is my first attempt to write a desktop app with electron and learn the fantastic reactjs library. The editor is far from complete but I use it personally and I wanted to open-source it so that others can help with it.
\n
The one part of the app is a LaTeX editor with search functionality and simplified bibliography and packages handling. The other part is a WYSIWYG editor based on quilljs. The simple part also supports encrypted documents.
\n
I have built it on Debian Linux and I tried on Windows but, like always, everything in there is crappy compared to Linux so I just dropped it. I still have not tested on mac but I plan on doing it soon. Otherwise I expect that the program will be fully functional for anyone who wants to develop it on their mac.
In order to run LaTeX you need to have an installed version of the interpeter like TeXlive, MacTex or MikTex.
\n
To start the process go to the folder, open a terminal there and press
\n
yarn && yarn preminify\nnpm start\n
\n
The file Infinitex.jsx is only used for react-dom. The app.jsx file separates the two environments and has width and height event listeners.\nThe grid.jsx file has the LaTeX editor and the editor.jsx file has the WYSIWYG.
\n
To build the minified js you press
\n
npm run minify\n
\n
To create the executable in a dist folder run (!Attention! This will trigger the minification which takes a lot of time)
\n
npm run dist\n
\n
Issues:
\n\n
Compilation and configurations for Mac (probably works, will test soon) and Windows.
\n
Configure auto-updates (work on linux and windows).
\n
Detect latex change and move pdf to that page.
\n
Better memory handling of Ace editor.
\n
Open files with the app without the app being open
\n
Configure KaTeX to take both $math$ and $$math$$ and interpret them accordingly.
\n
Open formula module on math selection at simple.
\n\n
Roadmap:
\n\n
Either move to Semantic UI or Material UI beta for performance.
\n
Integration with cloud servicesIPFS for collaboration (working on it).
\n\n
",
"readmeOriginal": "
Infinitex
\n
\n
This is my first attempt to write a desktop app with electron and learn the fantastic reactjs library. The editor is far from complete but I use it personally and I wanted to open-source it so that others can help with it.
\n
The one part of the app is a LaTeX editor with search functionality and simplified bibliography and packages handling. The other part is a WYSIWYG editor based on quilljs. The simple part also supports encrypted documents.
\n
I have built it on Debian Linux and I tried on Windows but, like always, everything in there is crappy compared to Linux so I just dropped it. I still have not tested on mac but I plan on doing it soon. Otherwise I expect that the program will be fully functional for anyone who wants to develop it on their mac.
In order to run LaTeX you need to have an installed version of the interpeter like TeXlive, MacTex or MikTex.
\n
To start the process go to the folder, open a terminal there and press
\n
yarn && yarn preminify\nnpm start\n
\n
The file Infinitex.jsx is only used for react-dom. The app.jsx file separates the two environments and has width and height event listeners.\nThe grid.jsx file has the LaTeX editor and the editor.jsx file has the WYSIWYG.
\n
To build the minified js you press
\n
npm run minify\n
\n
To create the executable in a dist folder run (!Attention! This will trigger the minification which takes a lot of time)
\n
npm run dist\n
\n
Issues:
\n\n
Compilation and configurations for Mac (probably works, will test soon) and Windows.
\n
Configure auto-updates (work on linux and windows).
\n
Detect latex change and move pdf to that page.
\n
Better memory handling of Ace editor.
\n
Open files with the app without the app being open
\n
Configure KaTeX to take both $math$ and $$math$$ and interpret them accordingly.
\n
Open formula module on math selection at simple.
\n\n
Roadmap:
\n\n
Either move to Semantic UI or Material UI beta for performance.
\n
Integration with cloud servicesIPFS for collaboration (working on it).
git clone https://github.com/meowtec/Imagine.git\nnpm install\nnpm run dev
\n
A PR with all checks passed is welcome.
\n
Before submit a PR, please run npm run test and make sure it success on your machine.
\n
Up to now, there are only 5 locales. To add a new locale, you can either submit a PR, or create an issue, or just send me an email(found in my profile).
git clone https://github.com/meowtec/Imagine.git\nnpm install\nnpm run dev
\n
A PR with all checks passed is welcome.
\n
Before submit a PR, please run npm run test and make sure it success on your machine.
\n
Up to now, there are only 5 locales. To add a new locale, you can either submit a PR, or create an issue, or just send me an email(found in my profile).
Unofficial, free and open-source Google Gmail Desktop App
\n
\n
Inboxer — started out as an unofficial Inbox by Gmail client for desktop platforms. However, Google plans to discontinue Inbox at the end of March 2019 (see official announcement). To keep Inboxer alive we have converted it to work with Gmail. Inboxer is now built on top of Gmail web-version. It has pleasant UI and supports useful keyboard shortcuts.
Check out these ones as great examples of Electron applications. All of them are under the MIT license.
\n
Features
\n
\n
Familiar Gmail interface
\n
Cross-platform (macOS/Linux/Windows)
\n
Useful Keyboard shortcuts
\n
Multiple accounts
\n
Optional Always on Top
\n
Auto-updates to the latest version
\n
Desktop notifications
\n
TODO: Dark theme
\n
TODO: Custom text size
\n
TODO: Ability to use as default mail client
\n
\n
All feature requests and contributions are welcome!
\n
Screenshot
\n
\n
TODO: Update screenshot to show latest version working with Gmail\n
\n
\n
Installation
\n
Inboxer works well on macOS 10.9+, Linux and Windows 7+. You can download the latest version on Releases page or below.\nInboxer is also available through the nix package manager (see package in nix)
You'll need electron and npm installed in your system.\nDownload and extract the source code (.zip or .tar.gz file).\nInside the source code folder, run:
\n
$ npm install\n
\n
Then package the app with:
\n
$ npm run dist\n
\n
This builds packages for all architectures. Use dist:mac, dist:linux, or dist:win to package a single architecture. The packages will be found in the dist folder.
\n
Keyboard shortcuts
\n
Inboxer supports all Gmail keyboard shortcuts, system-specific keybindings and more. Additional keybindings are listed below:
\n
\n\n
\n
Description
\n
Keys
\n
\n\n\n
\n
Preferences
\n
Cmd/CtrlP
\n
\n
\n
Compose Message
\n
Cmd/CtrlN
\n
\n
\n
Go to Inbox
\n
Cmd/CtrlI
\n
\n
\n
Go to Snoozed
\n
Cmd/CtrlS
\n
\n
\n
Go to Done
\n
Cmd/CtrlD
\n
\n
\n
Drafts
\n
Cmd/CtrlShiftD
\n
\n
\n
Sent
\n
Cmd/CtrlShiftS
\n
\n
\n
Trash
\n
AltShiftT
\n
\n
\n
Spam
\n
AltShiftS
\n
\n
\n
Open Contacts
\n
Cmd/CtrlShiftC
\n
\n
\n
Search
\n
Cmd/CtrlF
\n
\n
\n
Toggle Sidebar
\n
Cmd/Ctrl/
\n
\n
\n
Toggle \"Always on Top\"
\n
Cmd/CtrlShiftT
\n
\n
\n
Keyboard Shortcuts Reference
\n
Shift/ or ?
\n
\n
\n
Toggle Developer Tools
\n
OptionCmdI(macOS) or CtrlShiftI
\n
\n\n
\n
Disclaimer
\n
This code is in no way affiliated with, authorised, maintained, sponsored or endorsed by Google or any of its affiliates or subsidiaries. This is an independent and unofficial Gmail app. Use it at your own risk.
\n
End User License Agreement
\n
\n
You will not use this repository for sending mass spam or any other malicious activity.
\n
We / You will not support anyone who is violating this EULA conditions.
\n
Repository is just for learning / personal purposes thus should not be part of any service available on the Internet that is trying to do any malicious activity (mass bulk request, spam etc).
\n
\n
Donate
\n
Hi! I work on this project in my spare time, beside my primary job. I hope enjoy using Inboxer, and if you do, please, support this project 🙏🏻.
Unofficial, free and open-source Google Gmail Desktop App
\n
\n
Inboxer — started out as an unofficial Inbox by Gmail client for desktop platforms. However, Google plans to discontinue Inbox at the end of March 2019 (see official announcement). To keep Inboxer alive we have converted it to work with Gmail. Inboxer is now built on top of Gmail web-version. It has pleasant UI and supports useful keyboard shortcuts.
Check out these ones as great examples of Electron applications. All of them are under the MIT license.
\n
Features
\n
\n
Familiar Gmail interface
\n
Cross-platform (macOS/Linux/Windows)
\n
Useful Keyboard shortcuts
\n
Multiple accounts
\n
Optional Always on Top
\n
Auto-updates to the latest version
\n
Desktop notifications
\n
TODO: Dark theme
\n
TODO: Custom text size
\n
TODO: Ability to use as default mail client
\n
\n
All feature requests and contributions are welcome!
\n
Screenshot
\n
\n
TODO: Update screenshot to show latest version working with Gmail\n
\n
\n
Installation
\n
Inboxer works well on macOS 10.9+, Linux and Windows 7+. You can download the latest version on Releases page or below.\nInboxer is also available through the nix package manager (see package in nix)
You'll need electron and npm installed in your system.\nDownload and extract the source code (.zip or .tar.gz file).\nInside the source code folder, run:
\n
$ npm install\n
\n
Then package the app with:
\n
$ npm run dist\n
\n
This builds packages for all architectures. Use dist:mac, dist:linux, or dist:win to package a single architecture. The packages will be found in the dist folder.
\n
Keyboard shortcuts
\n
Inboxer supports all Gmail keyboard shortcuts, system-specific keybindings and more. Additional keybindings are listed below:
\n
\n\n
\n
Description
\n
Keys
\n
\n\n\n
\n
Preferences
\n
Cmd/CtrlP
\n
\n
\n
Compose Message
\n
Cmd/CtrlN
\n
\n
\n
Go to Inbox
\n
Cmd/CtrlI
\n
\n
\n
Go to Snoozed
\n
Cmd/CtrlS
\n
\n
\n
Go to Done
\n
Cmd/CtrlD
\n
\n
\n
Drafts
\n
Cmd/CtrlShiftD
\n
\n
\n
Sent
\n
Cmd/CtrlShiftS
\n
\n
\n
Trash
\n
AltShiftT
\n
\n
\n
Spam
\n
AltShiftS
\n
\n
\n
Open Contacts
\n
Cmd/CtrlShiftC
\n
\n
\n
Search
\n
Cmd/CtrlF
\n
\n
\n
Toggle Sidebar
\n
Cmd/Ctrl/
\n
\n
\n
Toggle \"Always on Top\"
\n
Cmd/CtrlShiftT
\n
\n
\n
Keyboard Shortcuts Reference
\n
Shift/ or ?
\n
\n
\n
Toggle Developer Tools
\n
OptionCmdI(macOS) or CtrlShiftI
\n
\n\n
\n
Disclaimer
\n
This code is in no way affiliated with, authorised, maintained, sponsored or endorsed by Google or any of its affiliates or subsidiaries. This is an independent and unofficial Gmail app. Use it at your own risk.
\n
End User License Agreement
\n
\n
You will not use this repository for sending mass spam or any other malicious activity.
\n
We / You will not support anyone who is violating this EULA conditions.
\n
Repository is just for learning / personal purposes thus should not be part of any service available on the Internet that is trying to do any malicious activity (mass bulk request, spam etc).
\n
\n
Donate
\n
Hi! I work on this project in my spare time, beside my primary job. I hope enjoy using Inboxer, and if you do, please, support this project 🙏🏻.
I open-source almost everything I can, and I try to reply everyone needing help using these projects. Obviously,\nthis takes time. You can use these projects in your applications for free! You can even change the source code and redistribute (even resell it).
\n
If you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it:
\n
\n
Starring and sharing the project
\n
—make one-time donations via PayPal.
\n
—set up monthly donation via Patreon and get interesting news about what I'm doing.
\n
—send bitcoins or ethereum to this address: 19jHGagJWeVvuNjN3kaBoAszXd9ea9gKzp.
I open-source almost everything I can, and I try to reply everyone needing help using these projects. Obviously,\nthis takes time. You can use these projects in your applications for free! You can even change the source code and redistribute (even resell it).
\n
If you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it:
\n
\n
Starring and sharing the project
\n
—make one-time donations via PayPal.
\n
—set up monthly donation via Patreon and get interesting news about what I'm doing.
\n
—send bitcoins or ethereum to this address: 19jHGagJWeVvuNjN3kaBoAszXd9ea9gKzp.
A Software to interactively edit data in a graphical manner.
\n
\n\n\n \n\n \n\nWe have all worked with data at some point of time. Now, depending on the source, sometimes the data may not be regular, smooth and uniform and requires refinement before applying for any practical use. This software lets you do that very easily and efficiently in a graphical way including many others useful data operation.
\n
👍 Features
\n\n
Edit one or multiple points by dragging with mouse and keyboard keys.
\n
Automatically smooth data using spline and linear Kernel smoother.
\n
Fit any function to the data.
\n
Plot any 2D and gridded 3D data with LaTeX rendering support.
\n
Export images in five format in any resolution.
\n
Simultaneously work with multiple datasets.
\n
Fill missing values.
\n
Remove bad data points.
\n
Repeat or mirror data any required times.
\n
Filter data subject to a given condition.
\n
Swap data between two lines or surfaces.
\n
Supports undo/redo.
\n
Change sign of any selected part of the data.
\n
Spreadsheet editor with all basic excel like features including formula parsing.\n And many more...
\n\n
⚒ Download and installation
\n
The software is available as pre-built binaries for different platforms. Install the appropriate installer for your system available in releases section of this repo. Also available as snap for linux users. \n
A Software to interactively edit data in a graphical manner.
\n
\n\n\n \n\n \n\nWe have all worked with data at some point of time. Now, depending on the source, sometimes the data may not be regular, smooth and uniform and requires refinement before applying for any practical use. This software lets you do that very easily and efficiently in a graphical way including many others useful data operation.
\n
👍 Features
\n\n
Edit one or multiple points by dragging with mouse and keyboard keys.
\n
Automatically smooth data using spline and linear Kernel smoother.
\n
Fit any function to the data.
\n
Plot any 2D and gridded 3D data with LaTeX rendering support.
\n
Export images in five format in any resolution.
\n
Simultaneously work with multiple datasets.
\n
Fill missing values.
\n
Remove bad data points.
\n
Repeat or mirror data any required times.
\n
Filter data subject to a given condition.
\n
Swap data between two lines or surfaces.
\n
Supports undo/redo.
\n
Change sign of any selected part of the data.
\n
Spreadsheet editor with all basic excel like features including formula parsing.\n And many more...
\n\n
⚒ Download and installation
\n
The software is available as pre-built binaries for different platforms. Install the appropriate installer for your system available in releases section of this repo. Also available as snap for linux users. \n
Invizi is a 100% open source, private and free cryptocurrency manager.
\n
With Invizi you can safely track and trade your digital assets - all your data is local, encrypted and never leaves your computer. Invizi is a public good and will always be free to use.
\n
\n
Our mission is to empower people to manage their digital assets without compromising their privacy. We want to usher in a world without data breaches, predatory ad models, commoditization of user’s data and abuse of privacy.
Invizi is a 100% open source, private and free cryptocurrency manager.
\n
With Invizi you can safely track and trade your digital assets - all your data is local, encrypted and never leaves your computer. Invizi is a public good and will always be free to use.
\n
\n
Our mission is to empower people to manage their digital assets without compromising their privacy. We want to usher in a world without data breaches, predatory ad models, commoditization of user’s data and abuse of privacy.
Clips is written completely in TypeScript, and built with Vue CLI Plugin Electron Builder.
\n
Clips makes extensive use of functional and reactive programming.
\n
Status
\n
You can find the current area of focus in Github Issues.
\n
Getting Started
\n
To setup Clips, all you need is
\n
$ git clone https://github.com/azure06/clips.git\n$ cd clips\n$ touch .env
\n
and finally
\n
$ npm install\n$ npm run electron:serve
\n
Note:
\n
Clips has been tested with Node v16.13.0 and npm 8.1.0\nRecently due to an issue with Electron Updater you may need to make some modifications to node_modules/electron-updater/out/AppUpdater.js file by changing const promises_1 = require(\"fs/promises\"); to const promises_1 = require(\"fs\").promises;
\n
Philosophy
\n
Work in progress.
\n
Project Management
\n
Work in progress.
\n
Technical
\n
Work in progress.
\n
Community
\n
Work in progress.
\n
",
"readmeOriginal": "
\n \n
\n
\n\n
\n
Clips is a free, open source hybrid clipboard application available for Windows and macOS.
\n
Clips powered by Google Drive synchronize your clipboard with multiple devices, and allows you to quickly search throw your clipboard history.
Clips is written completely in TypeScript, and built with Vue CLI Plugin Electron Builder.
\n
Clips makes extensive use of functional and reactive programming.
\n
Status
\n
You can find the current area of focus in Github Issues.
\n
Getting Started
\n
To setup Clips, all you need is
\n
$ git clone https://github.com/azure06/clips.git\n$ cd clips\n$ touch .env
\n
and finally
\n
$ npm install\n$ npm run electron:serve
\n
Note:
\n
Clips has been tested with Node v16.13.0 and npm 8.1.0\nRecently due to an issue with Electron Updater you may need to make some modifications to node_modules/electron-updater/out/AppUpdater.js file by changing const promises_1 = require(\"fs/promises\"); to const promises_1 = require(\"fs\").promises;
Have a bug or a feature request? First, read the\nissue guidelines and search for existing and\nclosed issues. If your problem or idea is not addressed yet, please open a new issue.
Please read through our contributing guidelines and code of conduct. Included are directions for opening issues, coding standards, and notes on development.
Development on Insomnia can be done on Mac, Windows, or Linux as long as you have Node.js and Git. See the .nvmrc file located in the project for the correct Node version.
\n\nInitial Dev Setup\n
This repository is structured as a monorepo and contains many Node.JS packages. Each package has its own set of commands, but the most common commands are available from the root package.json and can be accessed using the npm run ... command. Here are the only three commands you should need to start developing on the app.
\n
# Install and Link Dependencies\nnpm run bootstrap\n\n# Run Tests\nnpm test\n\n# Start App with Live Reload\nnpm run app-start
\n
Linux
\n
If you are on Linux, you may need to install the following supporting packages:
Have a bug or a feature request? First, read the\nissue guidelines and search for existing and\nclosed issues. If your problem or idea is not addressed yet, please open a new issue.
Please read through our contributing guidelines and code of conduct. Included are directions for opening issues, coding standards, and notes on development.
Development on Insomnia can be done on Mac, Windows, or Linux as long as you have Node.js and Git. See the .nvmrc file located in the project for the correct Node version.
\n\nInitial Dev Setup\n
This repository is structured as a monorepo and contains many Node.JS packages. Each package has its own set of commands, but the most common commands are available from the root package.json and can be accessed using the npm run ... command. Here are the only three commands you should need to start developing on the app.
\n
# Install and Link Dependencies\nnpm run bootstrap\n\n# Run Tests\nnpm test\n\n# Start App with Live Reload\nnpm run app-start
\n
Linux
\n
If you are on Linux, you may need to install the following supporting packages:
Create project with template like side-menu,tab,blank
\n
Live serve ionic app
\n
App build for IOS and Android
\n
Genrate Page,Service,Component,Pipe, etc...
\n
Install & Uninstall cordova plugins
\n
Mange app details like App Id, App name, App version, App author, App email
\n
Run app in simulator IOS / Android
\n
Create Splash screen and App Icons (Put Icons and Splash in resources folder in App directory).
\n
\n
Future Goals
\n
\n
Provide Support React, Vue for ionic
\n
Support feature for Anguler 2 CLI for Direct Anguler project
\n
Ionic Compatible IDE
\n
\n
How to Use
\n
MAC
\n
Download DMG file and install and use but we not support sudo feature so please in that directory where sudo not required soon we will give that feature.
Create project with template like side-menu,tab,blank
\n
Live serve ionic app
\n
App build for IOS and Android
\n
Genrate Page,Service,Component,Pipe, etc...
\n
Install & Uninstall cordova plugins
\n
Mange app details like App Id, App name, App version, App author, App email
\n
Run app in simulator IOS / Android
\n
Create Splash screen and App Icons (Put Icons and Splash in resources folder in App directory).
\n
\n
Future Goals
\n
\n
Provide Support React, Vue for ionic
\n
Support feature for Anguler 2 CLI for Direct Anguler project
\n
Ionic Compatible IDE
\n
\n
How to Use
\n
MAC
\n
Download DMG file and install and use but we not support sudo feature so please in that directory where sudo not required soon we will give that feature.
IPTVnator is a video player application that provides support for the playback of IPTV playlists (m3u, m3u8). The application allows to import playlists by using remote URLs or per file upload from the file system. Additionally there is a support of EPG information XMLTV-based which can be provided by URL.
\n
The application is a cross-platform and open source project based on Electron and Angular.
\n
⚠️ Note: IPTVnator doesn't provide any playlists or other digital content. The channels and pictures in the screenshots are for demonstration purposes only.
\n
\n
Features
\n
\n
M3u and M3u8 playlists support 📺
\n
Upload playlists from a file system 📂
\n
Add remote playlists via URL 🔗
\n
Playlists auto-update feature
\n
Open playlist from the file system
\n
Search for channels 🔍
\n
EPG support (TV Guide) with detailed info
\n
TV archive/catchup/timeshift
\n
Group-based channels list
\n
Save channels as favorites
\n
Global favorites aggregated from all playlists
\n
HTML video player with hls.js support or Video.js based player
\n
Internalization, currently 7 languages are supported (en, ru, de, ko, es, zh, fr)
\n
Set custom \"User Agent\" header for a playlist
\n
Re-fetch/auto-update playlists
\n
Light and Dark theme
\n
\n
Screenshots:
\n
\n\n
\n
Welcome screen: Playlists overview
\n
Main player interface with channels sidebar and video player
\n
\n\n\n
\n
\n
\n
\n
\n
Welcome screen: Add playlist via file upload
\n
Welcome screen: Add playlist via URL
\n
\n
\n
\n
\n
\n
\n
EPG Sidebar: TV guide on the right side
\n
General application settings
\n
\n
\n
\n
\n
\n
\n
Playlist settings
\n
\n
\n
\n
\n
\n
\n\n
\n
Note: First version of the application which was developed as a PWA is available in an extra git branch.
\n
Download
\n
Download the latest version of the application for macOS, Windows and Linux from the release page.
\n
IPTVnator is also available as a snap package:
\n
$ sudo snap install iptvnator\n
\n
Also available as an Arch PKG, iptvnator-bin, in the AUR (using your favourite AUR-helper, .e.g. yay)
\n
$ yay -S iptvnator-bin\n
\n
\n
\n
How to build
\n
Requirements: node.js with npm.
\n\n
\n
Clone this repository and install all project dependencies with:
\n
$ npm install\n
\n
\n
\n
To build the application on your local machine use one of the following commands:
\n
# linux\n$ npm run electron:build:linux\n
\n
#mac\n$ npm run electron:build:mac\n
\n
# windows\n$ npm run electron:build:windows\n
\n
\n\n
This command will produce the distributable assets in the release folder based on the configuration from electron-builder which is stored in electron-builder.json and package.json. Check the API description of electron-builder and adapt the configuration if you need some special configuration for you environment.
\n
Note: Don’t expect that you can build app for all platforms on one platform. Read details
\n
Development
\n
The first thing to do is to install all the necessary dependencies:
\n
$ npm install\n
\n
To develop an application in PWA and Electron mode, you need to run the application with a command:
\n
$ npm run start\n
\n
The Electron version of the application will open in a separate window, and the PWA version will be available in the browser at http://localhost:4200.
\n
If you want to run only the angular app without electron, in this case you can use the command:
\n
$ npm run ng:serve\n
\n
Disclaimer
\n
IPTVnator doesn't provide any playlists or other digital content.
\n\n
\n\n
",
"readmeOriginal": "
IPTVnator - IPTV Player Application
\n
\n \n
\n
\n \n
\n
IPTVnator is a video player application that provides support for the playback of IPTV playlists (m3u, m3u8). The application allows to import playlists by using remote URLs or per file upload from the file system. Additionally there is a support of EPG information XMLTV-based which can be provided by URL.
\n
The application is a cross-platform and open source project based on Electron and Angular.
\n
⚠️ Note: IPTVnator doesn't provide any playlists or other digital content. The channels and pictures in the screenshots are for demonstration purposes only.
\n
\n
Features
\n
\n
M3u and M3u8 playlists support 📺
\n
Upload playlists from a file system 📂
\n
Add remote playlists via URL 🔗
\n
Playlists auto-update feature
\n
Open playlist from the file system
\n
Search for channels 🔍
\n
EPG support (TV Guide) with detailed info
\n
TV archive/catchup/timeshift
\n
Group-based channels list
\n
Save channels as favorites
\n
Global favorites aggregated from all playlists
\n
HTML video player with hls.js support or Video.js based player
\n
Internalization, currently 7 languages are supported (en, ru, de, ko, es, zh, fr)
\n
Set custom \"User Agent\" header for a playlist
\n
Re-fetch/auto-update playlists
\n
Light and Dark theme
\n
\n
Screenshots:
\n
\n\n
\n
Welcome screen: Playlists overview
\n
Main player interface with channels sidebar and video player
\n
\n\n\n
\n
\n
\n
\n
\n
Welcome screen: Add playlist via file upload
\n
Welcome screen: Add playlist via URL
\n
\n
\n
\n
\n
\n
\n
EPG Sidebar: TV guide on the right side
\n
General application settings
\n
\n
\n
\n
\n
\n
\n
Playlist settings
\n
\n
\n
\n
\n
\n
\n\n
\n
Note: First version of the application which was developed as a PWA is available in an extra git branch.
\n
Download
\n
Download the latest version of the application for macOS, Windows and Linux from the release page.
\n
IPTVnator is also available as a snap package:
\n
$ sudo snap install iptvnator\n
\n
Also available as an Arch PKG, iptvnator-bin, in the AUR (using your favourite AUR-helper, .e.g. yay)
\n
$ yay -S iptvnator-bin\n
\n
\n
\n
How to build
\n
Requirements: node.js with npm.
\n\n
\n
Clone this repository and install all project dependencies with:
\n
$ npm install\n
\n
\n
\n
To build the application on your local machine use one of the following commands:
\n
# linux\n$ npm run electron:build:linux\n
\n
#mac\n$ npm run electron:build:mac\n
\n
# windows\n$ npm run electron:build:windows\n
\n
\n\n
This command will produce the distributable assets in the release folder based on the configuration from electron-builder which is stored in electron-builder.json and package.json. Check the API description of electron-builder and adapt the configuration if you need some special configuration for you environment.
\n
Note: Don’t expect that you can build app for all platforms on one platform. Read details
\n
Development
\n
The first thing to do is to install all the necessary dependencies:
\n
$ npm install\n
\n
To develop an application in PWA and Electron mode, you need to run the application with a command:
\n
$ npm run start\n
\n
The Electron version of the application will open in a separate window, and the PWA version will be available in the browser at http://localhost:4200.
\n
If you want to run only the angular app without electron, in this case you can use the command:
\n
$ npm run ng:serve\n
\n
Disclaimer
\n
IPTVnator doesn't provide any playlists or other digital content.
jamovi is a free and open statistics package, which is easy to use, and designed to be familiar to users of SPSS. It provides a spreadsheet editor, and a range of statistical analyses. jamovi can provide R syntax for each analysis that is run, and additional analyses for jamovi can be developed using the R language.
this launches an embedded web-server, and jamovi can be accessed with a web-browser at the url http://127.0.0.1:41337
\n
",
"readmeOriginal": "
jamovi
\n
jamovi is a free and open statistics package, which is easy to use, and designed to be familiar to users of SPSS. It provides a spreadsheet editor, and a range of statistical analyses. jamovi can provide R syntax for each analysis that is run, and additional analyses for jamovi can be developed using the R language.
The goal of this project is to give you a desktop application that you can\ndownload and run games from itch.io with. Additionally you\nshould be able to update games and get notified when games are updated. The\ngoal is not to replace the itch.io website.
If you'd like to develop the app instead, read the Getting Started page of the developer guide.
\n
About itch-setup
\n
itch-setup is the installer program for the itch app.
\n
It's a Go executable that runs on Windows, macOS and Linux, and downloads the latest\nversion of the app directly from https://itch.io.
\n
Although itch-setup is normally served from https://itch.io/app, the canonical\nsource to download it (e.g. for packaging purposes), is the following download server:
The goal of this project is to give you a desktop application that you can\ndownload and run games from itch.io with. Additionally you\nshould be able to update games and get notified when games are updated. The\ngoal is not to replace the itch.io website.
If you'd like to develop the app instead, read the Getting Started page of the developer guide.
\n
About itch-setup
\n
itch-setup is the installer program for the itch app.
\n
It's a Go executable that runs on Windows, macOS and Linux, and downloads the latest\nversion of the app directly from https://itch.io.
\n
Although itch-setup is normally served from https://itch.io/app, the canonical\nsource to download it (e.g. for packaging purposes), is the following download server:
You will be able to read, track and discover many active issues very flexibly by using Jasper in GitHub. It is enabled by a powerful function called \"stream\" of Jasper.
You will be able to read, track and discover many active issues very flexibly by using Jasper in GitHub. It is enabled by a powerful function called \"stream\" of Jasper.
Juggernaut utilizes the Lightning Network to provide end-to-end encrypted, onion-routed, censorship resistanst, peer-to-peer messaging with native payment capabilities.
\n \n
\n
Install
\n
Download the latest release for your OS and follow the instructions below.
\n
macOS
\n
Double click the .dmg file and then drag Juggernaut.app into your Applications folder.
If you are having problems with Juggernaut, please report the issue on Github or Telegram with screenshots and how to reproduce the issue.
\n
Requirements
\n
\n
\n
LND 0.9.x (or greater) with KeySend Enabled
\n
How to enable Keysend
\n
On lnd.conf add :
\n
\n
accept-keysend=1
\n
\n
Or run lnd with this argument:
\n
\n
--accept-keysend
\n
\n
Keysend is currently an experimental feature. Your node will now accept payments from any node on the network without having to provide them with a n invoice first. Note: This is still an experimental feature so please be careful.
\n
\n
\n
Running From Source
\n
\n
download the source git clone git@github.com:LN-Juggernaut/juggernaut-desktop.git
\n
navigate to project directory cd juggernaut-desktop
\n
install dependencies yarn
\n
start the project yarn dev
\n
\n
Building From Source
\n
You can run yarn package to build an executable that will be output in the release directory.
\n
Running more than one instance while testing
\n
Currently the only way I've been able to do this for testing is to run one using yarn dev and the other using a built release from yarn package. If anyone knows how to run two separate instances of an electron app in development, please let me know!
This project follows the all-contributors specification. Contributions of any kind welcome!
\n
",
"readmeOriginal": "
\n \n
Juggernaut utilizes the Lightning Network to provide end-to-end encrypted, onion-routed, censorship resistanst, peer-to-peer messaging with native payment capabilities.
\n \n
\n
Install
\n
Download the latest release for your OS and follow the instructions below.
\n
macOS
\n
Double click the .dmg file and then drag Juggernaut.app into your Applications folder.
If you are having problems with Juggernaut, please report the issue on Github or Telegram with screenshots and how to reproduce the issue.
\n
Requirements
\n
\n
\n
LND 0.9.x (or greater) with KeySend Enabled
\n
How to enable Keysend
\n
On lnd.conf add :
\n
\n
accept-keysend=1
\n
\n
Or run lnd with this argument:
\n
\n
--accept-keysend
\n
\n
Keysend is currently an experimental feature. Your node will now accept payments from any node on the network without having to provide them with a n invoice first. Note: This is still an experimental feature so please be careful.
\n
\n
\n
Running From Source
\n
\n
download the source git clone git@github.com:LN-Juggernaut/juggernaut-desktop.git
\n
navigate to project directory cd juggernaut-desktop
\n
install dependencies yarn
\n
start the project yarn dev
\n
\n
Building From Source
\n
You can run yarn package to build an executable that will be output in the release directory.
\n
Running more than one instance while testing
\n
Currently the only way I've been able to do this for testing is to run one using yarn dev and the other using a built release from yarn package. If anyone knows how to run two separate instances of an electron app in development, please let me know!
🌞 Joplin participates in Google Summer of Code 2022! More info on the announcement post. 🌞
\n\n
Joplin is a free, open source note taking and to-do application, which can handle a large number of notes organised into notebooks. The notes are searchable, can be copied, tagged and modified either from the applications directly or from your own text editor. The notes are in Markdown format.
\n
Notes exported from Evernote can be imported into Joplin, including the formatted content (which is converted to Markdown), resources (images, attachments, etc.) and complete metadata (geolocation, updated time, created time, etc.). Plain Markdown files can also be imported.
Full text search is available on all platforms to quickly find the information you need. The app can be customised using plugins and themes, and you can also easily create your own.
\n
The application is available for Windows, Linux, macOS, Android and iOS. A Web Clipper, to save web pages and screenshots from your browser, is also available for Firefox and Chrome.
\n
\n
Installation
\n
Three types of applications are available: for desktop (Windows, macOS and Linux), for mobile (Android and iOS) and for terminal (Windows, macOS, Linux and FreeBSD). All the applications have similar user interfaces and can synchronise with each other.
\n
Desktop applications
\n
\n\n
\n
Operating System
\n
Download
\n
\n\n\n
\n
Windows (32 and 64-bit)
\n
\n
\n
\n
macOS
\n
\n
\n
\n
Linux
\n
\n
\n\n
\n
On Windows, you may also use the Portable version. The portable application allows installing the software on a portable device such as a USB key. Simply copy the file JoplinPortable.exe in any directory on that USB key ; the application will then create a directory called \"JoplinProfile\" next to the executable file.
\n
On Linux, the recommended way is to use the following installation script as it will handle the desktop icon too:
By default, the application binary will be installed under ~/.joplin-bin. You may change this directory if needed. Alternatively, if your npm permissions are setup as described here (Option 2) then simply running npm -g install joplin would work.
The Web Clipper is a browser extension that allows you to save web pages and screenshots from your browser. For more information on how to install and use it, see the Web Clipper Help Page.
\n
Unofficial Alternative Distributions
\n
There are a number of unofficial alternative Joplin distributions. If you do not want to or cannot use appimages or any of the other officially supported releases then you may wish to consider these.
\n
However these come with a caveat in that they are not officially supported so certain issues may not be supportable by the main project. Rather support requests, bug reports and general advice would need to go to the maintainers of these distributions.
Synchronisation with various services, including Nextcloud, Dropbox, WebDAV and OneDrive.
\n
Offline first, so the entire data is always available on the device even without an internet connection.
\n
Import Enex files (Evernote export format) and Markdown files.
\n
Export JEX files (Joplin Export format) and raw files.
\n
Support notes, to-dos, tags and notebooks.
\n
Sort notes by multiple criteria - title, updated time, etc.
\n
Support for alarms (notifications) in mobile and desktop applications.
\n
Markdown notes, which are rendered with images and formatting in the desktop and mobile applications. Support for extra features such as math notation and checkboxes.
\n
Choice of both Markdown and Rich Text (WYSIWYG) editors.
\n
File attachment support - images are displayed, other files are linked and can be opened in the relevant application.
\n
Inline display of PDF, video and audio files.
\n
Goto Anything feature.
\n
Search functionality.
\n
Geo-location support.
\n
Supports multiple languages.
\n
External editor support - open notes in your favorite external editor with one click in Joplin.
\n
Extensible functionality through plugin and data APIs.
\n
Custom CSS support for customisation of both the rendered markdown and overall user interface.
\n
Customisable layout allows toggling, movement and sizing of various elements.
\n
Keyboard shortcuts are editable and allow binding of most Joplin commands with export/import functionality.
\n
\n
Importing
\n
Importing from Evernote
\n
Joplin was designed as a replacement for Evernote and so can import complete Evernote notebooks, as well as notes, tags, resources (attached files) and note metadata (such as author, geo-location, etc.) via ENEX files. In terms of data, the only two things that might slightly differ are:
\n
\n
\n
Recognition data - Evernote images, in particular scanned (or photographed) documents have recognition data associated with them. It is the text that Evernote has been able to recognise in the document. This data is not preserved when the note are imported into Joplin. However, should it become supported in the search tool or other parts of Joplin, it should be possible to regenerate this recognition data since the actual image would still be available.
\n
\n
\n
Colour, font sizes and faces - Evernote text is stored as HTML and this is converted to Markdown during the import process. For notes that are mostly plain text or with basic formatting (bold, italic, bullet points, links, etc.) this is a lossless conversion, and the note, once rendered back to HTML should be very similar. Tables are also imported and converted to Markdown tables. For very complex notes, some formatting data might be lost - in particular colours, font sizes and font faces will not be imported. The text itself however is always imported in full regardless of formatting. If it is essential that this extra data is preserved then Joplin also allows import of ENEX files as HTML.
\n
\n
\n
To import Evernote data, first export your Evernote notebooks to ENEX files as described here. Then follow these steps:
\n
In the desktop application, open File > Import > ENEX and select your file. The notes will be imported into a new separate notebook. If needed they can then be moved to a different notebook, or the notebook can be renamed, etc.
\n
In the terminal application, in command-line mode, type import /path/to/file.enex. This will import the notes into a new notebook named after the filename.
\n
Importing from Markdown files
\n
Joplin can import notes from plain Markdown file. You can either import a complete directory of Markdown files or individual files.
\n
In the desktop application:
\n
\n
File import: Go to File > Import > MD - Markdown (file) and select the Markdown file. This file will then be imported to the currently selected Notebook.
\n
Directory import: Go to File > Import > MD - Markdown (directory) and select the top level of the directory that is being imported. Directory (folder) structure will be preserved in the Notebook > Subnotebook > Note structure within Joplin.
\n
\n
In the terminal application, in command-line mode, type import --format md /path/to/file.md or import --format md /path/to/directory/.
\n
Importing from other applications
\n
In general the way to import notes from any application into Joplin is to convert the notes to ENEX files (Evernote format) and to import these ENEX files into Joplin using the method above. Most note-taking applications support ENEX files so it should be relatively straightforward. For help about specific applications, see below:
NixNote: Synchronise with Evernote, then export the ENEX files and import them into Joplin. More info in this thread.
\n
\n
Exporting
\n
Joplin can export to the JEX format (Joplin Export file), which is a tar file that can contain multiple notes, notebooks, etc. This is a lossless format in that all the notes, but also metadata such as geo-location, updated time, tags, etc. are preserved. This format is convenient for backup purposes and can be re-imported into Joplin. A \"raw\" format is also available. This is the same as the JEX format except that the data is saved to a directory and each item represented by a single file.\nJoplin is also capable of exporting to a number of other formats including HTML and PDF which can be done for single notes, notebooks or everything.
\n
Synchronisation
\n
One of the goals of Joplin is to avoid being tied to any particular company or service, whether it is Evernote, Google or Microsoft. As such the synchronisation is designed without any hard dependency to any particular service. Most of the synchronisation process is done at an abstract level and access to external services, such as Nextcloud or Dropbox, is done via lightweight drivers. It is easy to support new services by creating simple drivers that provide a filesystem-like interface, i.e. the ability to read, write, delete and list items. It is also simple to switch from one service to another or to even sync to multiple services at once. Each note, notebook, tags, as well as the relation between items is transmitted as plain text files during synchronisation, which means the data can also be moved to a different application, can be easily backed up, inspected, etc.
\n
Currently, synchronisation is possible with Nextcloud, WebDAV, Dropbox, OneDrive or the local filesystem. To enable synchronisation please follow the instructions below. After that, the application will synchronise in the background whenever it is running, or you can click on \"Synchronise\" to start a synchronisation manually. Joplin will background sync automatically after any content change is made on the local application.
\n
If the terminal client has been installed, it is possible to also synchronise outside of the user interface by typing joplin sync from the terminal. This can be used to setup a cron script to synchronise at a regular interval. For example, this would do it every 30 minutes:
\n
*/30 * * * * /path/to/joplin sync
\n
Nextcloud synchronisation
\n
Nextcloud is a self-hosted, private cloud solution. It can store documents, images and videos but also calendars, passwords and countless other things and can sync them to your laptop or phone. As you can host your own Nextcloud server, you own both the data on your device and infrastructure used for synchronisation. As such it is a good fit for Joplin. The platform is also well supported and with a strong community, so it is likely to be around for a while - since it's open source anyway, it is not a service that can be closed, it can exist on a server for as long as one chooses.
\n
In the desktop application or mobile application, go to the Configuration screen and select Nextcloud as the synchronisation target. Then input the WebDAV URL (to get it, click on Settings in the bottom left corner of the page, in Nextcloud), this is normally https://example.com/nextcloud/remote.php/webdav/Joplin (make sure to create the \"Joplin\" directory in Nextcloud), and set the username and password. If it does not work, please see this explanation for more details.
\n
In the terminal application, you will need to set the sync.target config variable and all the sync.5.path, sync.5.username and sync.5.password config variables to, respectively the Nextcloud WebDAV URL, your username and your password. This can be done from the command line mode using:
If synchronisation does not work, please consult the logs in the app profile directory - it is often due to a misconfigured URL or password. The log should indicate what the exact issue is.
\n
WebDAV synchronisation
\n
Select the \"WebDAV\" synchronisation target and follow the same instructions as for Nextcloud above (for the terminal application you will need to select sync target 6 rather than 5)
\n
WebDAV-compatible services that are known to work with Joplin:
When syncing with Dropbox, Joplin creates a sub-directory in Dropbox, in /Apps/Joplin and read/write the notes and notebooks from it. The application does not have access to anything outside this directory.
\n
In the desktop application or mobile application, select \"Dropbox\" as the synchronisation target in the Configuration screen (it is selected by default). Then, to initiate the synchronisation process, click on the \"Synchronise\" button in the sidebar and follow the instructions.
\n
In the terminal application, to initiate the synchronisation process, type :sync. You will be asked to follow a link to authorise the application.
\n
OneDrive synchronisation
\n
When syncing with OneDrive, Joplin creates a sub-directory in OneDrive, in /Apps/Joplin and read/write the notes and notebooks from it. The application does not have access to anything outside this directory.
\n
In the desktop application or mobile application, select \"OneDrive\" as the synchronisation target in the Configuration screen. Then, to initiate the synchronisation process, click on the \"Synchronise\" button in the sidebar and follow the instructions.
\n
In the terminal application, to initiate the synchronisation process, type :sync. You will be asked to follow a link to authorise the application (simply input your Microsoft credentials - you do not need to register with OneDrive).
\n
S3 synchronisation
\n
As of Joplin 2.x.x, Joplin supports multiple S3 providers. We expose some options that will need to be configured depending on your provider of choice. We have tested with UpCloud, AWS, and Linode. others should work as well.
\n
In the desktop application or mobile application, select \"S3 (Beta)\" as the synchronisation target in the Configuration screen.
\n
\n
S3 Bucket: The name of your Bucket, such as joplin-bucket
\n
S3 URL: Fully qualified URL; For AWS this should be https://s3.amazonaws.com/
\n
S3 Access Key & S3 Secret Key: The User's programmatic access key. To create a new key & secret on AWS, visit IAM Security Credentials. For other providers follow their documentation.
\n
S3 Region: Some providers require you to provide the region of your bucket. This is usually in the form of \"eu-west1\" or something similar depending on your region. For providers that do not require a region, you can leave it blank.
\n
Force Path Style: This setting enables Joplin to talk to S3 providers using an older style S3 Path. Depending on your provider you may need to try with this on and off.
\n
\n
While creating a new Bucket for Joplin, disable Bucket Versioning, enable Block all public access and enable Default encryption with Amazon S3 key (SSE-S3). Some providers do not expose these options, and it could create a syncing problem. Do attempt and report back so we can update the documentation appropriately.
\n
To add a Bucket Policy from the AWS S3 Web Console, navigate to the Permissions tab. Temporarily disable Block all public access to edit the Bucket policy, something along the lines of:
All providers will require a bucket, Access Key, and Secret Key.
\n
If you provide a configuration and you receive \"success!\" on the \"check config\" then your S3 sync should work for your provider. If you do not receive success, you may need to adjust your settings, or save them, restart the app, and attempt a sync. This may reveal more clear error messaging that will help you deduce the problem.
URL: https://..upcloudobjects.com (They will provide you with multiple URLs, the one that follows this pattern should work.)
\n
Region: required
\n
Force Path Style: unchecked
\n
\n
Encryption
\n
Joplin supports end-to-end encryption (E2EE) on all the applications. E2EE is a system where only the owner of the notes, notebooks, tags or resources can read them. It prevents potential eavesdroppers - including telecom providers, internet providers, and even the developers of Joplin from being able to access the data. Please see the End-To-End Encryption Tutorial for more information about this feature and how to enable it.
\n
For a more technical description, mostly relevant for development or to review the method being used, please see the Encryption specification.
\n
Note history
\n
The Joplin applications automatically save previous versions of your notes at regular intervals. These versions are synced across devices and can be viewed from the desktop application. To do so, click on the \"Information\" button on a note, then click on \"Previous version of this note\". From this screen you can view the previous versions of the note as well as restore any of them.
\n
This feature can be disabled from the \"Note history\" section in the Configuration screen, and it is also possible to change for how long the history of a note is saved.
Joplin notes can be opened and edited using an external editor of your choice. It can be a simple text editor like Notepad++ or Sublime Text or an actual Markdown editor like Typora. In that case, images will also be displayed within the editor. To open the note in an external editor, click on the icon in the toolbar or press Ctrl+E (or Cmd+E). Your default text editor will be used to open the note. If needed, you can also specify the editor directly in the General Options, under \"Text editor command\".
\n
Attachments
\n
Any kind of file can be attached to a note. In Markdown, links to these files are represented as a simple ID to the attachment, clicking on this link will open the file in the default application. In the case of audio, video and pdf files, these will be displayed inline with the note and so can be viewed or played within Joplin.
\n
In the desktop application, files can be attached either by clicking the \"Attach file\" icon in the editor or via drag and drop. If you prefer to create a link to a local file instead, hold the ALT key while performing the drag and drop operation. You can also copy and paste images directly in the editor via Ctrl+V.
\n
Resources that are not attached to any note will be automatically deleted in accordance to the Note History settings.
\n
Important: Resources larger than 10 MB are not currently supported on mobile. They will crash the application when synchronising so it is recommended not to attach such resources at the moment. The issue is being looked at.
\n
Downloading attachments
\n
The way the attachments are downloaded during synchronisation can be customised in the Configuration screen, under \"Attachment download behaviour\". The default option (\"Always\") is to download all the attachments, all the time, so that the data is available even when the device is offline. There is also the option to download the attachments manually (option \"Manual\"), by clicking on it, or automatically (Option \"Auto\"), in which case the attachments are downloaded only when a note is opened. These options should help saving disk space and network bandwidth, especially on mobile.
\n
Notifications
\n
In the desktop and mobile apps, an alarm can be associated with any to-do. It will be triggered at the given time by displaying a notification. How the notification will be displayed depends on the operating system since each has a different way to handle this. Please see below for the requirements for the desktop applications:
\n
\n
Windows: >= 8. Make sure the Action Center is enabled on Windows. Task bar balloon for Windows < 8. Growl as fallback. Growl takes precedence over Windows balloons.
\n
macOS: >= 10.8 or Growl if earlier.
\n
Linux: notify-send tool, delivered through packages notify-osd, libnotify-bin or libnotify-tools. GNOME should have this by default, but install libnotify-tools if using KDE Plasma.
On mobile, the alarms will be displayed using the built-in notification system.
\n
If for any reason the notifications do not work, please open an issue.
\n
Sub-notebooks
\n
Sub-notebooks allow organising multiple notebooks into a tree of notebooks. For example it can be used to regroup all the notebooks related to work, to family or to a particular project under a parent notebook.
\n
\n
\n
In the desktop application, to create a subnotebook, drag and drop it onto another notebook. To move it back to the root, drag and drop it on the \"Notebooks\" header. Currently only the desktop app can be used to organise the notebooks.
\n
The mobile application supports displaying and collapsing/expanding the tree of notebooks, however it does not currently support moving the subnotebooks to different notebooks.
\n
The terminal app supports displaying the tree of subnotebooks but it does not support collapsing/expanding them or moving the subnotebooks around.
\n
\n
Markdown
\n
Joplin uses and renders a Github-flavoured Markdown with a few variations and additions. In particular it adds math formula support, interactive checkboxes and support for note links. Joplin also supports Markdown plugins which allow enabling and disabling various advanced Markdown features. Have a look at the Markdown Guide for more information.
\n
Custom CSS
\n
Rendered markdown can be customized by placing a userstyle file in the profile directory ~/.config/joplin-desktop/userstyle.css (This path might be different on your device - check at the top of the General page of the Configuration screen for the exact path). This file supports standard CSS syntax. Joplin must be restarted for the new css to be applied, please ensure that Joplin is not closing to the tray, but is actually exiting. Note that this file is used for both displaying the notes and printing the notes. Be aware how the CSS may look printed (for example, printing white text over a black background is usually not wanted).
\n
The whole UI can be customized by placing a custom editor style file in the profile directory ~/.config/joplin-desktop/userchrome.css.
\n
Important: userstyle.css and userchrome.css are provided for your convenience, but they are advanced settings, and styles you define may break from one version to the next. If you want to use them, please know that it might require regular development work from you to keep them working. The Joplin team cannot make a commitment to keep the application HTML structure stable.
\n
Plugins
\n
The desktop app has the ability to extend beyond its standard functionality by the way of plugins. These plugins adhere to the Joplin plugin API and can be installed & configured within the application via the Plugins page in the Configuration screen. This menu allows the manual installation of the plugin using the single 'Joplin Plugin Archive' (*.jpl) file. Once the application is reloaded the plugins will appear within the plugins menu where they can be toggled on/off or removed entirely.
Joplin implements the SQLite Full Text Search (FTS4) extension. It means the content of all the notes is indexed in real time and search queries return results very fast. Both Simple FTS Queries and Full-Text Index Queries are supported. See below for the list of supported queries:
\n
One caveat of SQLite FTS is that it does not support languages which do not use Latin word boundaries (spaces, tabs, punctuation). To solve this issue, Joplin has a custom search mode, that does not use FTS, but still has all of its features (multi term search, filters, etc.). One of its drawbacks is that it can get slow on larger note collections. Also, the sorting of the results will be less accurate, as the ranking algorithm (BM25) is, for now, only implemented for FTS. Finally, in this mode there are no restrictions on using the * wildcard (swim*, *swim and ast*rix all work). This search mode is currently enabled if one of the following languages are detected:
\n
\n
Chinese
\n
Japanese
\n
Korean
\n
Thai
\n
\n
Supported queries
\n
\n\n
\n
Search type
\n
Description
\n
Example
\n
\n\n\n
\n
Single word
\n
Returns all the notes that contain this term.
\n
For example, searching for cat will return all the notes that contain this exact word. Note: it will not return the notes that contain the substring - thus, for \"cat\", notes that contain \"cataclysmic\" or \"prevaricate\" will not be returned.
\n
\n
\n
Multiple word
\n
Returns all the notes that contain all these words, but not necessarily next to each other.
\n
dog cat - will return any notes that contain the words \"dog\" and \"cat\" anywhere in the note, no necessarily in that order nor next to each other. It will not return results that contain \"dog\" or \"cat\" only.
\n
\n
\n
Phrase
\n
Add double quotes to return the notes that contain exactly this phrase.
\n
\"shopping list\" - will return the notes that contain these exact terms next to each other and in this order. It will not return for example a note that contains \"going shopping with my list\".
\n
\n
\n
Prefix
\n
Add a wildcard to return all the notes that contain a term with a specified prefix.
\n
swim* - will return all the notes that contain eg. \"swim\", but also \"swimming\", \"swimsuit\", etc. IMPORTANT: The wildcard can only be at the end - it will be ignored at the beginning of a word (eg. *swim) and will be treated as a literal asterisk in the middle of a word (eg. ast*rix)
\n
\n
\n
Switch to basic search
\n
One drawback of Full Text Search is that it ignores most non-alphabetical characters. However in some cases you might want to search for this too. To do that, you can use basic search. You switch to this mode by prefixing your search with a slash /. This won't provide the benefits of FTS but it will allow searching exactly for what you need. Note that it can also be much slower, even extremely slow, depending on your query.
\n
/\"- [ ]\" - will return all the notes that contain unchecked checkboxes.
\n
\n\n
\n
Search filters
\n
You can also use search filters to further restrict the search.
\n
\n\n
\n
Operator
\n
Description
\n
Example
\n
\n\n\n
\n
-
\n
If placed before a text term, it excludes the notes that contain that term. You can also place it before a filter to negate it.
\n
-spam searches for all notes without the word spam. office -trash searches for all notes with the wordoffice and without the word trash.
\n
\n
\n
any:
\n
Return notes that satisfy any/all of the required conditions. any:0 is the default, which means all conditions must be satisfied.
\n
any:1 cat dog will return notes that have the word cat or dog. any:0 cat dog will return notes with both the words cat and dog.
\n
\n
\n
title: body:
\n
Restrict your search to just the title or the body field.
\n
title:\"hello world\" searches for notes whose title contains hello and world. title:hello -body:world searches for notes whose title contains hello and body does not contain world.
\n
\n
\n
tag:
\n
Restrict the search to the notes with the specified tags.
\n
tag:office searches for all notes having tag office. tag:office tag:important searches for all notes having both office and important tags. tag:office -tag:spam searches for notes having tag office which do not have tag spam. any:1 tag:office tag:spam searches for notes having tag office or tag spam. tag:be*ful does a search with wildcards. tag:* returns all notes with tags. -tag:* returns all notes without tags.
\n
\n
\n
notebook:
\n
Restrict the search to the specified notebook(s).
\n
notebook:books limits the search scope within books and all its subnotebooks. notebook:wheel*time does a wildcard search.
\n
\n
\n
created: updated: due:
\n
Searches for notes created/updated on dates specified using YYYYMMDD format. You can also search relative to the current day, week, month, or year.
\n
created:20201218 will return notes created on or after December 18, 2020. -updated:20201218 will return notes updated before December 18, 2020. created:20200118 -created:20201215 will return notes created between January 18, 2020, and before December 15, 2020. created:202001 -created:202003 will return notes created on or after January and before March 2020. updated:1997 -updated:2020 will return all notes updated between the years 1997 and 2019. created:day-2 searches for all notes created in the past two days. updated:year-0 searches all notes updated in the current year. -due:day+7 will return all todos which are due or will be due in the next seven days. -due:day-5 searches all todos that are overdue for more than 5 days.
\n
\n
\n
type:
\n
Restrict the search to either notes or todos.
\n
type:note to return all notes type:todo to return all todos
\n
\n
\n
iscompleted:
\n
Restrict the search to either completed or uncompleted todos.
\n
iscompleted:1 to return all completed todos iscompleted:0 to return all uncompleted todos
\n
\n
\n
latitude: longitude: altitude:
\n
Filter by location
\n
latitude:40 -latitude:50 to return notes with latitude >= 40 and < 50
\n
\n
\n
resource:
\n
Filter by attachment MIME type
\n
resource:image/jpeg to return notes with a jpeg attachment. -resource:application/pdf to return notes without a pdf attachment. resource:image/* to return notes with any images.
\n
\n
\n
sourceurl:
\n
Filter by source URL
\n
sourceurl:https://www.google.com sourceurl:*joplinapp.org to perform a wildcard search.
\n
\n
\n
id:
\n
Filter by note ID
\n
id:9cbc1b4f242043a9b8a50627508bccd5 return a note with the specified id
\n
\n\n
\n
Note: In the CLI client you have to escape the query using -- when using negated filters.\nEg. :search -- \"-tag:tag1\".
\n
The filters are implicitly connected by and/or connectives depending on the following rules:
\n
\n
By default, all filters are connected by \"AND\".
\n
To override this default behaviour, use the any filter, in which case the search terms will be connected by \"OR\" instead.
\n
There's an exception for the notebook filters which are connected by \"OR\". The reason being that no note can be in multiple notebooks at once.
\n
\n
Incorrect search filters are interpreted as a phrase search, e.g. misspelled nootebook:Example or non-existing https://joplinapp.org.
\n
Search order
\n
Notes are sorted by \"relevance\". Currently it means the notes that contain the requested terms the most times are on top. For queries with multiple terms, it also matters how close to each other the terms are. This is a bit experimental so if you notice a search query that returns unexpected results, please report it in the forum, providing as many details as possible to replicate the issue.
\n
Goto Anything
\n
In the desktop application, press Ctrl+P or Cmd+P and type a note title or part of its content to jump to it. Or type # followed by a tag name, or @ followed by a notebook name.
\n
Donations
\n
Donations to Joplin support the development of the project. Developing quality applications mostly takes time, but there are also some expenses, such as digital certificates to sign the applications, app store fees, hosting, etc. Most of all, your donation will make it possible to keep up the current development standard.
\n
Please see the donation page for information on how to support the development of Joplin.
This is the main place for general discussion about Joplin, user support, software development questions, and to discuss new features. Also where the latest beta versions are released and discussed.
Joplin is currently available in the languages below. If you would like to contribute a new translation, it is quite straightforward, please follow these steps:
In Poedit, open this .pot file, go into the Catalog menu and click Configuration. Change \"Country\" and \"Language\" to your own country and language.
🌞 Joplin participates in Google Summer of Code 2022! More info on the announcement post. 🌞
\n\n
Joplin is a free, open source note taking and to-do application, which can handle a large number of notes organised into notebooks. The notes are searchable, can be copied, tagged and modified either from the applications directly or from your own text editor. The notes are in Markdown format.
\n
Notes exported from Evernote can be imported into Joplin, including the formatted content (which is converted to Markdown), resources (images, attachments, etc.) and complete metadata (geolocation, updated time, created time, etc.). Plain Markdown files can also be imported.
Full text search is available on all platforms to quickly find the information you need. The app can be customised using plugins and themes, and you can also easily create your own.
\n
The application is available for Windows, Linux, macOS, Android and iOS. A Web Clipper, to save web pages and screenshots from your browser, is also available for Firefox and Chrome.
\n
\n
Installation
\n
Three types of applications are available: for desktop (Windows, macOS and Linux), for mobile (Android and iOS) and for terminal (Windows, macOS, Linux and FreeBSD). All the applications have similar user interfaces and can synchronise with each other.
\n
Desktop applications
\n
\n\n
\n
Operating System
\n
Download
\n
\n\n\n
\n
Windows (32 and 64-bit)
\n
\n
\n
\n
macOS
\n
\n
\n
\n
Linux
\n
\n
\n\n
\n
On Windows, you may also use the Portable version. The portable application allows installing the software on a portable device such as a USB key. Simply copy the file JoplinPortable.exe in any directory on that USB key ; the application will then create a directory called \"JoplinProfile\" next to the executable file.
\n
On Linux, the recommended way is to use the following installation script as it will handle the desktop icon too:
By default, the application binary will be installed under ~/.joplin-bin. You may change this directory if needed. Alternatively, if your npm permissions are setup as described here (Option 2) then simply running npm -g install joplin would work.
The Web Clipper is a browser extension that allows you to save web pages and screenshots from your browser. For more information on how to install and use it, see the Web Clipper Help Page.
\n
Unofficial Alternative Distributions
\n
There are a number of unofficial alternative Joplin distributions. If you do not want to or cannot use appimages or any of the other officially supported releases then you may wish to consider these.
\n
However these come with a caveat in that they are not officially supported so certain issues may not be supportable by the main project. Rather support requests, bug reports and general advice would need to go to the maintainers of these distributions.
Synchronisation with various services, including Nextcloud, Dropbox, WebDAV and OneDrive.
\n
Offline first, so the entire data is always available on the device even without an internet connection.
\n
Import Enex files (Evernote export format) and Markdown files.
\n
Export JEX files (Joplin Export format) and raw files.
\n
Support notes, to-dos, tags and notebooks.
\n
Sort notes by multiple criteria - title, updated time, etc.
\n
Support for alarms (notifications) in mobile and desktop applications.
\n
Markdown notes, which are rendered with images and formatting in the desktop and mobile applications. Support for extra features such as math notation and checkboxes.
\n
Choice of both Markdown and Rich Text (WYSIWYG) editors.
\n
File attachment support - images are displayed, other files are linked and can be opened in the relevant application.
\n
Inline display of PDF, video and audio files.
\n
Goto Anything feature.
\n
Search functionality.
\n
Geo-location support.
\n
Supports multiple languages.
\n
External editor support - open notes in your favorite external editor with one click in Joplin.
\n
Extensible functionality through plugin and data APIs.
\n
Custom CSS support for customisation of both the rendered markdown and overall user interface.
\n
Customisable layout allows toggling, movement and sizing of various elements.
\n
Keyboard shortcuts are editable and allow binding of most Joplin commands with export/import functionality.
\n
\n
Importing
\n
Importing from Evernote
\n
Joplin was designed as a replacement for Evernote and so can import complete Evernote notebooks, as well as notes, tags, resources (attached files) and note metadata (such as author, geo-location, etc.) via ENEX files. In terms of data, the only two things that might slightly differ are:
\n
\n
\n
Recognition data - Evernote images, in particular scanned (or photographed) documents have recognition data associated with them. It is the text that Evernote has been able to recognise in the document. This data is not preserved when the note are imported into Joplin. However, should it become supported in the search tool or other parts of Joplin, it should be possible to regenerate this recognition data since the actual image would still be available.
\n
\n
\n
Colour, font sizes and faces - Evernote text is stored as HTML and this is converted to Markdown during the import process. For notes that are mostly plain text or with basic formatting (bold, italic, bullet points, links, etc.) this is a lossless conversion, and the note, once rendered back to HTML should be very similar. Tables are also imported and converted to Markdown tables. For very complex notes, some formatting data might be lost - in particular colours, font sizes and font faces will not be imported. The text itself however is always imported in full regardless of formatting. If it is essential that this extra data is preserved then Joplin also allows import of ENEX files as HTML.
\n
\n
\n
To import Evernote data, first export your Evernote notebooks to ENEX files as described here. Then follow these steps:
\n
In the desktop application, open File > Import > ENEX and select your file. The notes will be imported into a new separate notebook. If needed they can then be moved to a different notebook, or the notebook can be renamed, etc.
\n
In the terminal application, in command-line mode, type import /path/to/file.enex. This will import the notes into a new notebook named after the filename.
\n
Importing from Markdown files
\n
Joplin can import notes from plain Markdown file. You can either import a complete directory of Markdown files or individual files.
\n
In the desktop application:
\n
\n
File import: Go to File > Import > MD - Markdown (file) and select the Markdown file. This file will then be imported to the currently selected Notebook.
\n
Directory import: Go to File > Import > MD - Markdown (directory) and select the top level of the directory that is being imported. Directory (folder) structure will be preserved in the Notebook > Subnotebook > Note structure within Joplin.
\n
\n
In the terminal application, in command-line mode, type import --format md /path/to/file.md or import --format md /path/to/directory/.
\n
Importing from other applications
\n
In general the way to import notes from any application into Joplin is to convert the notes to ENEX files (Evernote format) and to import these ENEX files into Joplin using the method above. Most note-taking applications support ENEX files so it should be relatively straightforward. For help about specific applications, see below:
NixNote: Synchronise with Evernote, then export the ENEX files and import them into Joplin. More info in this thread.
\n
\n
Exporting
\n
Joplin can export to the JEX format (Joplin Export file), which is a tar file that can contain multiple notes, notebooks, etc. This is a lossless format in that all the notes, but also metadata such as geo-location, updated time, tags, etc. are preserved. This format is convenient for backup purposes and can be re-imported into Joplin. A \"raw\" format is also available. This is the same as the JEX format except that the data is saved to a directory and each item represented by a single file.\nJoplin is also capable of exporting to a number of other formats including HTML and PDF which can be done for single notes, notebooks or everything.
\n
Synchronisation
\n
One of the goals of Joplin is to avoid being tied to any particular company or service, whether it is Evernote, Google or Microsoft. As such the synchronisation is designed without any hard dependency to any particular service. Most of the synchronisation process is done at an abstract level and access to external services, such as Nextcloud or Dropbox, is done via lightweight drivers. It is easy to support new services by creating simple drivers that provide a filesystem-like interface, i.e. the ability to read, write, delete and list items. It is also simple to switch from one service to another or to even sync to multiple services at once. Each note, notebook, tags, as well as the relation between items is transmitted as plain text files during synchronisation, which means the data can also be moved to a different application, can be easily backed up, inspected, etc.
\n
Currently, synchronisation is possible with Nextcloud, WebDAV, Dropbox, OneDrive or the local filesystem. To enable synchronisation please follow the instructions below. After that, the application will synchronise in the background whenever it is running, or you can click on \"Synchronise\" to start a synchronisation manually. Joplin will background sync automatically after any content change is made on the local application.
\n
If the terminal client has been installed, it is possible to also synchronise outside of the user interface by typing joplin sync from the terminal. This can be used to setup a cron script to synchronise at a regular interval. For example, this would do it every 30 minutes:
\n
*/30 * * * * /path/to/joplin sync
\n
Nextcloud synchronisation
\n
Nextcloud is a self-hosted, private cloud solution. It can store documents, images and videos but also calendars, passwords and countless other things and can sync them to your laptop or phone. As you can host your own Nextcloud server, you own both the data on your device and infrastructure used for synchronisation. As such it is a good fit for Joplin. The platform is also well supported and with a strong community, so it is likely to be around for a while - since it's open source anyway, it is not a service that can be closed, it can exist on a server for as long as one chooses.
\n
In the desktop application or mobile application, go to the Configuration screen and select Nextcloud as the synchronisation target. Then input the WebDAV URL (to get it, click on Settings in the bottom left corner of the page, in Nextcloud), this is normally https://example.com/nextcloud/remote.php/webdav/Joplin (make sure to create the \"Joplin\" directory in Nextcloud), and set the username and password. If it does not work, please see this explanation for more details.
\n
In the terminal application, you will need to set the sync.target config variable and all the sync.5.path, sync.5.username and sync.5.password config variables to, respectively the Nextcloud WebDAV URL, your username and your password. This can be done from the command line mode using:
If synchronisation does not work, please consult the logs in the app profile directory - it is often due to a misconfigured URL or password. The log should indicate what the exact issue is.
\n
WebDAV synchronisation
\n
Select the \"WebDAV\" synchronisation target and follow the same instructions as for Nextcloud above (for the terminal application you will need to select sync target 6 rather than 5)
\n
WebDAV-compatible services that are known to work with Joplin:
When syncing with Dropbox, Joplin creates a sub-directory in Dropbox, in /Apps/Joplin and read/write the notes and notebooks from it. The application does not have access to anything outside this directory.
\n
In the desktop application or mobile application, select \"Dropbox\" as the synchronisation target in the Configuration screen (it is selected by default). Then, to initiate the synchronisation process, click on the \"Synchronise\" button in the sidebar and follow the instructions.
\n
In the terminal application, to initiate the synchronisation process, type :sync. You will be asked to follow a link to authorise the application.
\n
OneDrive synchronisation
\n
When syncing with OneDrive, Joplin creates a sub-directory in OneDrive, in /Apps/Joplin and read/write the notes and notebooks from it. The application does not have access to anything outside this directory.
\n
In the desktop application or mobile application, select \"OneDrive\" as the synchronisation target in the Configuration screen. Then, to initiate the synchronisation process, click on the \"Synchronise\" button in the sidebar and follow the instructions.
\n
In the terminal application, to initiate the synchronisation process, type :sync. You will be asked to follow a link to authorise the application (simply input your Microsoft credentials - you do not need to register with OneDrive).
\n
S3 synchronisation
\n
As of Joplin 2.x.x, Joplin supports multiple S3 providers. We expose some options that will need to be configured depending on your provider of choice. We have tested with UpCloud, AWS, and Linode. others should work as well.
\n
In the desktop application or mobile application, select \"S3 (Beta)\" as the synchronisation target in the Configuration screen.
\n
\n
S3 Bucket: The name of your Bucket, such as joplin-bucket
\n
S3 URL: Fully qualified URL; For AWS this should be https://s3.amazonaws.com/
\n
S3 Access Key & S3 Secret Key: The User's programmatic access key. To create a new key & secret on AWS, visit IAM Security Credentials. For other providers follow their documentation.
\n
S3 Region: Some providers require you to provide the region of your bucket. This is usually in the form of \"eu-west1\" or something similar depending on your region. For providers that do not require a region, you can leave it blank.
\n
Force Path Style: This setting enables Joplin to talk to S3 providers using an older style S3 Path. Depending on your provider you may need to try with this on and off.
\n
\n
While creating a new Bucket for Joplin, disable Bucket Versioning, enable Block all public access and enable Default encryption with Amazon S3 key (SSE-S3). Some providers do not expose these options, and it could create a syncing problem. Do attempt and report back so we can update the documentation appropriately.
\n
To add a Bucket Policy from the AWS S3 Web Console, navigate to the Permissions tab. Temporarily disable Block all public access to edit the Bucket policy, something along the lines of:
All providers will require a bucket, Access Key, and Secret Key.
\n
If you provide a configuration and you receive \"success!\" on the \"check config\" then your S3 sync should work for your provider. If you do not receive success, you may need to adjust your settings, or save them, restart the app, and attempt a sync. This may reveal more clear error messaging that will help you deduce the problem.
URL: https://..upcloudobjects.com (They will provide you with multiple URLs, the one that follows this pattern should work.)
\n
Region: required
\n
Force Path Style: unchecked
\n
\n
Encryption
\n
Joplin supports end-to-end encryption (E2EE) on all the applications. E2EE is a system where only the owner of the notes, notebooks, tags or resources can read them. It prevents potential eavesdroppers - including telecom providers, internet providers, and even the developers of Joplin from being able to access the data. Please see the End-To-End Encryption Tutorial for more information about this feature and how to enable it.
\n
For a more technical description, mostly relevant for development or to review the method being used, please see the Encryption specification.
\n
Note history
\n
The Joplin applications automatically save previous versions of your notes at regular intervals. These versions are synced across devices and can be viewed from the desktop application. To do so, click on the \"Information\" button on a note, then click on \"Previous version of this note\". From this screen you can view the previous versions of the note as well as restore any of them.
\n
This feature can be disabled from the \"Note history\" section in the Configuration screen, and it is also possible to change for how long the history of a note is saved.
Joplin notes can be opened and edited using an external editor of your choice. It can be a simple text editor like Notepad++ or Sublime Text or an actual Markdown editor like Typora. In that case, images will also be displayed within the editor. To open the note in an external editor, click on the icon in the toolbar or press Ctrl+E (or Cmd+E). Your default text editor will be used to open the note. If needed, you can also specify the editor directly in the General Options, under \"Text editor command\".
\n
Attachments
\n
Any kind of file can be attached to a note. In Markdown, links to these files are represented as a simple ID to the attachment, clicking on this link will open the file in the default application. In the case of audio, video and pdf files, these will be displayed inline with the note and so can be viewed or played within Joplin.
\n
In the desktop application, files can be attached either by clicking the \"Attach file\" icon in the editor or via drag and drop. If you prefer to create a link to a local file instead, hold the ALT key while performing the drag and drop operation. You can also copy and paste images directly in the editor via Ctrl+V.
\n
Resources that are not attached to any note will be automatically deleted in accordance to the Note History settings.
\n
Important: Resources larger than 10 MB are not currently supported on mobile. They will crash the application when synchronising so it is recommended not to attach such resources at the moment. The issue is being looked at.
\n
Downloading attachments
\n
The way the attachments are downloaded during synchronisation can be customised in the Configuration screen, under \"Attachment download behaviour\". The default option (\"Always\") is to download all the attachments, all the time, so that the data is available even when the device is offline. There is also the option to download the attachments manually (option \"Manual\"), by clicking on it, or automatically (Option \"Auto\"), in which case the attachments are downloaded only when a note is opened. These options should help saving disk space and network bandwidth, especially on mobile.
\n
Notifications
\n
In the desktop and mobile apps, an alarm can be associated with any to-do. It will be triggered at the given time by displaying a notification. How the notification will be displayed depends on the operating system since each has a different way to handle this. Please see below for the requirements for the desktop applications:
\n
\n
Windows: >= 8. Make sure the Action Center is enabled on Windows. Task bar balloon for Windows < 8. Growl as fallback. Growl takes precedence over Windows balloons.
\n
macOS: >= 10.8 or Growl if earlier.
\n
Linux: notify-send tool, delivered through packages notify-osd, libnotify-bin or libnotify-tools. GNOME should have this by default, but install libnotify-tools if using KDE Plasma.
On mobile, the alarms will be displayed using the built-in notification system.
\n
If for any reason the notifications do not work, please open an issue.
\n
Sub-notebooks
\n
Sub-notebooks allow organising multiple notebooks into a tree of notebooks. For example it can be used to regroup all the notebooks related to work, to family or to a particular project under a parent notebook.
\n
\n
\n
In the desktop application, to create a subnotebook, drag and drop it onto another notebook. To move it back to the root, drag and drop it on the \"Notebooks\" header. Currently only the desktop app can be used to organise the notebooks.
\n
The mobile application supports displaying and collapsing/expanding the tree of notebooks, however it does not currently support moving the subnotebooks to different notebooks.
\n
The terminal app supports displaying the tree of subnotebooks but it does not support collapsing/expanding them or moving the subnotebooks around.
\n
\n
Markdown
\n
Joplin uses and renders a Github-flavoured Markdown with a few variations and additions. In particular it adds math formula support, interactive checkboxes and support for note links. Joplin also supports Markdown plugins which allow enabling and disabling various advanced Markdown features. Have a look at the Markdown Guide for more information.
\n
Custom CSS
\n
Rendered markdown can be customized by placing a userstyle file in the profile directory ~/.config/joplin-desktop/userstyle.css (This path might be different on your device - check at the top of the General page of the Configuration screen for the exact path). This file supports standard CSS syntax. Joplin must be restarted for the new css to be applied, please ensure that Joplin is not closing to the tray, but is actually exiting. Note that this file is used for both displaying the notes and printing the notes. Be aware how the CSS may look printed (for example, printing white text over a black background is usually not wanted).
\n
The whole UI can be customized by placing a custom editor style file in the profile directory ~/.config/joplin-desktop/userchrome.css.
\n
Important: userstyle.css and userchrome.css are provided for your convenience, but they are advanced settings, and styles you define may break from one version to the next. If you want to use them, please know that it might require regular development work from you to keep them working. The Joplin team cannot make a commitment to keep the application HTML structure stable.
\n
Plugins
\n
The desktop app has the ability to extend beyond its standard functionality by the way of plugins. These plugins adhere to the Joplin plugin API and can be installed & configured within the application via the Plugins page in the Configuration screen. This menu allows the manual installation of the plugin using the single 'Joplin Plugin Archive' (*.jpl) file. Once the application is reloaded the plugins will appear within the plugins menu where they can be toggled on/off or removed entirely.
Joplin implements the SQLite Full Text Search (FTS4) extension. It means the content of all the notes is indexed in real time and search queries return results very fast. Both Simple FTS Queries and Full-Text Index Queries are supported. See below for the list of supported queries:
\n
One caveat of SQLite FTS is that it does not support languages which do not use Latin word boundaries (spaces, tabs, punctuation). To solve this issue, Joplin has a custom search mode, that does not use FTS, but still has all of its features (multi term search, filters, etc.). One of its drawbacks is that it can get slow on larger note collections. Also, the sorting of the results will be less accurate, as the ranking algorithm (BM25) is, for now, only implemented for FTS. Finally, in this mode there are no restrictions on using the * wildcard (swim*, *swim and ast*rix all work). This search mode is currently enabled if one of the following languages are detected:
\n
\n
Chinese
\n
Japanese
\n
Korean
\n
Thai
\n
\n
Supported queries
\n
\n\n
\n
Search type
\n
Description
\n
Example
\n
\n\n\n
\n
Single word
\n
Returns all the notes that contain this term.
\n
For example, searching for cat will return all the notes that contain this exact word. Note: it will not return the notes that contain the substring - thus, for \"cat\", notes that contain \"cataclysmic\" or \"prevaricate\" will not be returned.
\n
\n
\n
Multiple word
\n
Returns all the notes that contain all these words, but not necessarily next to each other.
\n
dog cat - will return any notes that contain the words \"dog\" and \"cat\" anywhere in the note, no necessarily in that order nor next to each other. It will not return results that contain \"dog\" or \"cat\" only.
\n
\n
\n
Phrase
\n
Add double quotes to return the notes that contain exactly this phrase.
\n
\"shopping list\" - will return the notes that contain these exact terms next to each other and in this order. It will not return for example a note that contains \"going shopping with my list\".
\n
\n
\n
Prefix
\n
Add a wildcard to return all the notes that contain a term with a specified prefix.
\n
swim* - will return all the notes that contain eg. \"swim\", but also \"swimming\", \"swimsuit\", etc. IMPORTANT: The wildcard can only be at the end - it will be ignored at the beginning of a word (eg. *swim) and will be treated as a literal asterisk in the middle of a word (eg. ast*rix)
\n
\n
\n
Switch to basic search
\n
One drawback of Full Text Search is that it ignores most non-alphabetical characters. However in some cases you might want to search for this too. To do that, you can use basic search. You switch to this mode by prefixing your search with a slash /. This won't provide the benefits of FTS but it will allow searching exactly for what you need. Note that it can also be much slower, even extremely slow, depending on your query.
\n
/\"- [ ]\" - will return all the notes that contain unchecked checkboxes.
\n
\n\n
\n
Search filters
\n
You can also use search filters to further restrict the search.
\n
\n\n
\n
Operator
\n
Description
\n
Example
\n
\n\n\n
\n
-
\n
If placed before a text term, it excludes the notes that contain that term. You can also place it before a filter to negate it.
\n
-spam searches for all notes without the word spam. office -trash searches for all notes with the wordoffice and without the word trash.
\n
\n
\n
any:
\n
Return notes that satisfy any/all of the required conditions. any:0 is the default, which means all conditions must be satisfied.
\n
any:1 cat dog will return notes that have the word cat or dog. any:0 cat dog will return notes with both the words cat and dog.
\n
\n
\n
title: body:
\n
Restrict your search to just the title or the body field.
\n
title:\"hello world\" searches for notes whose title contains hello and world. title:hello -body:world searches for notes whose title contains hello and body does not contain world.
\n
\n
\n
tag:
\n
Restrict the search to the notes with the specified tags.
\n
tag:office searches for all notes having tag office. tag:office tag:important searches for all notes having both office and important tags. tag:office -tag:spam searches for notes having tag office which do not have tag spam. any:1 tag:office tag:spam searches for notes having tag office or tag spam. tag:be*ful does a search with wildcards. tag:* returns all notes with tags. -tag:* returns all notes without tags.
\n
\n
\n
notebook:
\n
Restrict the search to the specified notebook(s).
\n
notebook:books limits the search scope within books and all its subnotebooks. notebook:wheel*time does a wildcard search.
\n
\n
\n
created: updated: due:
\n
Searches for notes created/updated on dates specified using YYYYMMDD format. You can also search relative to the current day, week, month, or year.
\n
created:20201218 will return notes created on or after December 18, 2020. -updated:20201218 will return notes updated before December 18, 2020. created:20200118 -created:20201215 will return notes created between January 18, 2020, and before December 15, 2020. created:202001 -created:202003 will return notes created on or after January and before March 2020. updated:1997 -updated:2020 will return all notes updated between the years 1997 and 2019. created:day-2 searches for all notes created in the past two days. updated:year-0 searches all notes updated in the current year. -due:day+7 will return all todos which are due or will be due in the next seven days. -due:day-5 searches all todos that are overdue for more than 5 days.
\n
\n
\n
type:
\n
Restrict the search to either notes or todos.
\n
type:note to return all notes type:todo to return all todos
\n
\n
\n
iscompleted:
\n
Restrict the search to either completed or uncompleted todos.
\n
iscompleted:1 to return all completed todos iscompleted:0 to return all uncompleted todos
\n
\n
\n
latitude: longitude: altitude:
\n
Filter by location
\n
latitude:40 -latitude:50 to return notes with latitude >= 40 and < 50
\n
\n
\n
resource:
\n
Filter by attachment MIME type
\n
resource:image/jpeg to return notes with a jpeg attachment. -resource:application/pdf to return notes without a pdf attachment. resource:image/* to return notes with any images.
\n
\n
\n
sourceurl:
\n
Filter by source URL
\n
sourceurl:https://www.google.com sourceurl:*joplinapp.org to perform a wildcard search.
\n
\n
\n
id:
\n
Filter by note ID
\n
id:9cbc1b4f242043a9b8a50627508bccd5 return a note with the specified id
\n
\n\n
\n
Note: In the CLI client you have to escape the query using -- when using negated filters.\nEg. :search -- \"-tag:tag1\".
\n
The filters are implicitly connected by and/or connectives depending on the following rules:
\n
\n
By default, all filters are connected by \"AND\".
\n
To override this default behaviour, use the any filter, in which case the search terms will be connected by \"OR\" instead.
\n
There's an exception for the notebook filters which are connected by \"OR\". The reason being that no note can be in multiple notebooks at once.
\n
\n
Incorrect search filters are interpreted as a phrase search, e.g. misspelled nootebook:Example or non-existing https://joplinapp.org.
\n
Search order
\n
Notes are sorted by \"relevance\". Currently it means the notes that contain the requested terms the most times are on top. For queries with multiple terms, it also matters how close to each other the terms are. This is a bit experimental so if you notice a search query that returns unexpected results, please report it in the forum, providing as many details as possible to replicate the issue.
\n
Goto Anything
\n
In the desktop application, press Ctrl+P or Cmd+P and type a note title or part of its content to jump to it. Or type # followed by a tag name, or @ followed by a notebook name.
\n
Donations
\n
Donations to Joplin support the development of the project. Developing quality applications mostly takes time, but there are also some expenses, such as digital certificates to sign the applications, app store fees, hosting, etc. Most of all, your donation will make it possible to keep up the current development standard.
\n
Please see the donation page for information on how to support the development of Joplin.
This is the main place for general discussion about Joplin, user support, software development questions, and to discuss new features. Also where the latest beta versions are released and discussed.
Joplin is currently available in the languages below. If you would like to contribute a new translation, it is quite straightforward, please follow these steps:
In Poedit, open this .pot file, go into the Catalog menu and click Configuration. Change \"Country\" and \"Language\" to your own country and language.
There are many ways to contribute to the project: logging bugs, submitting pull requests, reporting issues, and creating suggestions.
\n
Even if you have push rights on the repository, you should create a personal fork and create feature branches there when you need them. This keeps the main repository clean, and your personal workflow cruft out of sight.
\n
We're also interested in your feedback for the future of this project. You can submit a suggestion or feature request through the issue tracker. To make this process more effective, we're asking that these include more information to help define them more clearly.
There are many ways to contribute to the project: logging bugs, submitting pull requests, reporting issues, and creating suggestions.
\n
Even if you have push rights on the repository, you should create a personal fork and create feature branches there when you need them. This keeps the main repository clean, and your personal workflow cruft out of sight.
\n
We're also interested in your feedback for the future of this project. You can submit a suggestion or feature request through the issue tracker. To make this process more effective, we're asking that these include more information to help define them more clearly.
As yout can see, the image preview software of Mac OS has a terrible experience: it can't be zoomed in with the scroll wheel, and it doesn't support viewing all the pictures in the folder directly... \nSo, I developed this software. \nKankan is a Mac OS software to help you quickly look pictures. The experience is similar to win10's \"image\" and \"king of pictures\" apps.
\n
SCREENSHOT
\n
Day Mode \n\nDark Mode \n
\n
WHAT WE HAVE
\n
1.Fully comply with the Mac OS native design language, and the UI is simple and generous \n2.\"Dark mode\" is supported natively, which can be switched automatically or manually between \"light\" and \"dark\" themes \n3.Enlarge image by wheeling support \n4.Drag image support \n5.Support browsing all images under the folder \n6.Support previous, next and cycle browsing \n7.Support setting wallpaper \n8.Support to copy file name and path \n9.Support for copying images
\n
More content will be added according to user feedback in the future...
\n
SUPPORTED IMAGE FORMATS
\n
\n\n
\n
Suffix
\n
Support
\n
\n\n\n
\n
.jpg
\n
✅
\n
\n
\n
.jpeg
\n
✅
\n
\n
\n
.png
\n
✅
\n
\n
\n
.bmp
\n
✅
\n
\n
\n
.gif
\n
✅
\n
\n
\n
.ico
\n
✅
\n
\n\n
\n
SHORTCUTS
\n
\n\n
\n
Key
\n
Function
\n
\n\n\n
\n
↓,→
\n
Next
\n
\n
\n
↑,←
\n
Previous
\n
\n
\n
Esc
\n
Exit app
\n
\n
\n
Double-click
\n
Original size ↔ Fit to window
\n
\n\n
\n
BUTTON FUNCTIONS
\n
\n\n
\n
Button
\n
Function
\n
\n\n\n
\n
◀
\n
previous
\n
\n
\n
▶
\n
next
\n
\n
\n
↗
\n
Maximize to window size
\n
\n
\n
↙
\n
Minimize to original size
\n
\n
\n
✂
\n
Copy to clipboard
\n
\n
\n
♡
\n
Set as wallpaper (Authorization is required to operate 'Finder')
\n
\n
\n
↺
\n
Rotate picture counter-clockwise
\n
\n
\n
↻
\n
Rotate picture clockwise
\n
\n
\n
◐
\n
Change to the dark theme
\n
\n\n
\n
UPDATE
\n
\n\n
\n
version
\n
time
\n
content
\n
download
\n
\n\n\n
\n
0.2.0
\n
2020.04.03
\n
first version,A small amount bugs
\n
-
\n
\n
\n
0.2.3
\n
2020.04.03
\n
Fix bugs, basically complete functions
\n
-
\n
\n
\n
0.2.4
\n
2020.04.16
\n
New features: 1. Add the magnification display. 2. Add the resolution display. 3. Add new original size function. 4. Modify some menus and button positions
\n
-
\n
\n
\n
0.2.5
\n
2020.05.31
\n
New features: 1.Globalization support,3 languages supported: zh-CN en en-US More work needs yours help and feedback. If you need support from other languages, please give me feedback ! 2.Fix the bug that you can still right-click to open the menu in Hello page.
\n
-
\n
\n
\n
0.3.1
\n
2020.08.09
\n
New features: 1. Add drag and drop support, drag the picture to the window to open it! 2. Fix the problem of scrollbar in Y-axis when browsing large images in version <= mac os 10.14. 3. Fix the bug that the welcome window cannot be moved.
\n
-
\n
\n
\n
*0.4.0
\n
2021.07.02
\n
New feature: clockwise / counter-clockwise rotation of pictures supported
As yout can see, the image preview software of Mac OS has a terrible experience: it can't be zoomed in with the scroll wheel, and it doesn't support viewing all the pictures in the folder directly... \nSo, I developed this software. \nKankan is a Mac OS software to help you quickly look pictures. The experience is similar to win10's \"image\" and \"king of pictures\" apps.
\n
SCREENSHOT
\n
Day Mode \n\nDark Mode \n
\n
WHAT WE HAVE
\n
1.Fully comply with the Mac OS native design language, and the UI is simple and generous \n2.\"Dark mode\" is supported natively, which can be switched automatically or manually between \"light\" and \"dark\" themes \n3.Enlarge image by wheeling support \n4.Drag image support \n5.Support browsing all images under the folder \n6.Support previous, next and cycle browsing \n7.Support setting wallpaper \n8.Support to copy file name and path \n9.Support for copying images
\n
More content will be added according to user feedback in the future...
\n
SUPPORTED IMAGE FORMATS
\n
\n\n
\n
Suffix
\n
Support
\n
\n\n\n
\n
.jpg
\n
✅
\n
\n
\n
.jpeg
\n
✅
\n
\n
\n
.png
\n
✅
\n
\n
\n
.bmp
\n
✅
\n
\n
\n
.gif
\n
✅
\n
\n
\n
.ico
\n
✅
\n
\n\n
\n
SHORTCUTS
\n
\n\n
\n
Key
\n
Function
\n
\n\n\n
\n
↓,→
\n
Next
\n
\n
\n
↑,←
\n
Previous
\n
\n
\n
Esc
\n
Exit app
\n
\n
\n
Double-click
\n
Original size ↔ Fit to window
\n
\n\n
\n
BUTTON FUNCTIONS
\n
\n\n
\n
Button
\n
Function
\n
\n\n\n
\n
◀
\n
previous
\n
\n
\n
▶
\n
next
\n
\n
\n
↗
\n
Maximize to window size
\n
\n
\n
↙
\n
Minimize to original size
\n
\n
\n
✂
\n
Copy to clipboard
\n
\n
\n
♡
\n
Set as wallpaper (Authorization is required to operate 'Finder')
\n
\n
\n
↺
\n
Rotate picture counter-clockwise
\n
\n
\n
↻
\n
Rotate picture clockwise
\n
\n
\n
◐
\n
Change to the dark theme
\n
\n\n
\n
UPDATE
\n
\n\n
\n
version
\n
time
\n
content
\n
download
\n
\n\n\n
\n
0.2.0
\n
2020.04.03
\n
first version,A small amount bugs
\n
-
\n
\n
\n
0.2.3
\n
2020.04.03
\n
Fix bugs, basically complete functions
\n
-
\n
\n
\n
0.2.4
\n
2020.04.16
\n
New features: 1. Add the magnification display. 2. Add the resolution display. 3. Add new original size function. 4. Modify some menus and button positions
\n
-
\n
\n
\n
0.2.5
\n
2020.05.31
\n
New features: 1.Globalization support,3 languages supported: zh-CN en en-US More work needs yours help and feedback. If you need support from other languages, please give me feedback ! 2.Fix the bug that you can still right-click to open the menu in Hello page.
\n
-
\n
\n
\n
0.3.1
\n
2020.08.09
\n
New features: 1. Add drag and drop support, drag the picture to the window to open it! 2. Fix the problem of scrollbar in Y-axis when browsing large images in version <= mac os 10.14. 3. Fix the bug that the welcome window cannot be moved.
\n
-
\n
\n
\n
*0.4.0
\n
2021.07.02
\n
New feature: clockwise / counter-clockwise rotation of pictures supported
Hello. Welcome to the source repo for Kaplan Desktop. It’s been in the works for quite some time and it is exciting to go out and show it to fellow linguists. Please do not hesitate to reach out to contact@kaplan.pro should you have any inquiries.
\n
The documentation for the app itself is available here.
\n
Installation
\n
There are a few options:
\n\n
Microsoft Store
\n
.exe, .deb, and .rpm releases
\n
Building from source (for advanced users)
\n\n
Microsoft Store
\n
The Microsoft Store page for Kaplan Desktop is located here.
NB: Ubuntu users may experience a bug where they cannot run the .deb file, unless they save it in a directory other than the default download directory.
\n
Building from source
\n
This is by far the most efficient method and the steps are more or less the same for all operating systems.
\n\n
\n
Install Python 3, if it’s not installed on your computer.
\n
\n
\n
Get the source code from the repo.
\n
\n
\n
Navigate to /backend/ and create a Python 3 virtual environment.
\n
\n
\n
Activate the virtual environment.
\n
\n
\n
Update pip and install the required Python libraries:
Hello. Welcome to the source repo for Kaplan Desktop. It’s been in the works for quite some time and it is exciting to go out and show it to fellow linguists. Please do not hesitate to reach out to contact@kaplan.pro should you have any inquiries.
\n
The documentation for the app itself is available here.
\n
Installation
\n
There are a few options:
\n\n
Microsoft Store
\n
.exe, .deb, and .rpm releases
\n
Building from source (for advanced users)
\n\n
Microsoft Store
\n
The Microsoft Store page for Kaplan Desktop is located here.
NB: Ubuntu users may experience a bug where they cannot run the .deb file, unless they save it in a directory other than the default download directory.
\n
Building from source
\n
This is by far the most efficient method and the steps are more or less the same for all operating systems.
\n\n
\n
Install Python 3, if it’s not installed on your computer.
\n
\n
\n
Get the source code from the repo.
\n
\n
\n
Navigate to /backend/ and create a Python 3 virtual environment.
\n
\n
\n
Activate the virtual environment.
\n
\n
\n
Update pip and install the required Python libraries:
An app to organize, learn, and practice keyboard shortcuts!
\n
\n \n
This repository serves as a public bug and request tracker, and as a Wiki for advanced users.
\n
It contains all user-requested features and all user-submitted bug reports. Issues that were not raised by users are not necessarily included.
\n
If you encountered a bug or have a feature request, please create an issue. Please also consider upvoting existing issues by adding a thumbs-up emoji or sharing your perspective in a comment.
An app to organize, learn, and practice keyboard shortcuts!
\n
\n \n
This repository serves as a public bug and request tracker, and as a Wiki for advanced users.
\n
It contains all user-requested features and all user-submitted bug reports. Issues that were not raised by users are not necessarily included.
\n
If you encountered a bug or have a feature request, please create an issue. Please also consider upvoting existing issues by adding a thumbs-up emoji or sharing your perspective in a comment.
Free cross-platform password manager compatible with KeePass
\n
This webapp is a browser and desktop password manager compatible with KeePass databases. It doesn't require any server or additional resources.\nThe app can run either in browser, or as a desktop app.
The app is quite stable now. Basic stuff, as well as more advanced operations, should be rather reliable.
\n
Self-hosting
\n
Everything you need to host this app on your server is any static file server. The app is a single HTML file + a service worker (optionally; for offline access).\nYou can download the latest distribution files from gh-pages branch.
\n
If you are using Docker:
\n\n
put your dh.pem, cert.pem, key.pem to /etc/nginx/external/
The app can be built with grunt: grunt (html files will be in dist/). \nDesktop apps are built with grunt desktop. This requires some magic and currently works only on CI,\nyou can find more details in the GitHub Actions workflow.
\n
To run the desktop (electron) app without building an installer, build the app with grunt and start it this way:
\n
npm run dev\nnpm run electron
\n
For debug build:
\n\n
run npm run dev
\n
open http://localhost:8085
\n\n
To build desktop apps, use these goals, the result can be found in tmp:
\n
npm run dev-desktop-macos\nnpm run dev-desktop-windows\nnpm run dev-desktop-linux\n
Other ways of contribution can be found on this page.
\n
Important notes for pull requests
\n
\n
please branch from develop, not master
\n
don't edit translation files except base.json, they will be replaced
\n
\n
Donations
\n
KeeWeb is not free to develop. It takes time, requires paid code signing certificates and domains. \nYou can help the project or say \"thank you\" with this button: \n
\n
You can also sponsor the developer directly on GitHub.
\n
Please note: donation does not imply any type of service contract.
Free cross-platform password manager compatible with KeePass
\n
This webapp is a browser and desktop password manager compatible with KeePass databases. It doesn't require any server or additional resources.\nThe app can run either in browser, or as a desktop app.
The app is quite stable now. Basic stuff, as well as more advanced operations, should be rather reliable.
\n
Self-hosting
\n
Everything you need to host this app on your server is any static file server. The app is a single HTML file + a service worker (optionally; for offline access).\nYou can download the latest distribution files from gh-pages branch.
\n
If you are using Docker:
\n\n
put your dh.pem, cert.pem, key.pem to /etc/nginx/external/
The app can be built with grunt: grunt (html files will be in dist/). \nDesktop apps are built with grunt desktop. This requires some magic and currently works only on CI,\nyou can find more details in the GitHub Actions workflow.
\n
To run the desktop (electron) app without building an installer, build the app with grunt and start it this way:
\n
npm run dev\nnpm run electron
\n
For debug build:
\n\n
run npm run dev
\n
open http://localhost:8085
\n\n
To build desktop apps, use these goals, the result can be found in tmp:
\n
npm run dev-desktop-macos\nnpm run dev-desktop-windows\nnpm run dev-desktop-linux\n
Other ways of contribution can be found on this page.
\n
Important notes for pull requests
\n
\n
please branch from develop, not master
\n
don't edit translation files except base.json, they will be replaced
\n
\n
Donations
\n
KeeWeb is not free to develop. It takes time, requires paid code signing certificates and domains. \nYou can help the project or say \"thank you\" with this button: \n
\n
You can also sponsor the developer directly on GitHub.
\n
Please note: donation does not imply any type of service contract.
Important Note:\nSeptember 8th 2021 - This GitHub is no longer updated by the software vendor. Please use our rebranded site: https://github.com/WiiisdomOps
\n
Education and innovation is a sample project for users of the Kinesis CI tool for Tableau.\nKinesis CI is a test framework that adds automated testing and continuous integration capability to Tableau Server.\nFor more information on Kinesis CI, please visit http://kinesis-ci.com
\n
\n
Concept
\n
This project is designed to give you an example for setting up your testing projects in Kinesis CI.
\n
It contains a collection of test cases for a Tableau Workbook – Education and Innovation,\nincluding the following test cases:
\n
Functional Testing
\n
\n
Load data into a database
\n
Publish Tableau workbooks and data sources to Tableau Server
\n
Refresh data extracts
\n
Filters
\n
Parameters
\n
Checking data against an expected data set
\n
Checking the layout of the Dashboard to an expected layout
\n
Checking data against pre-defined rules and criterias
\n
Checking data against the datasource by an SQL query in the underlying database
\n
Running custom webdriver commands (required for SSO and custom login pages)
\n
Switch Tab
\n
Selecting Marks for testing interactivity/ user clicks
\n
\n
Regression Testing
\n
\n
Running regression test on a Tableau dashboard to compare against a baseline in terms of data, layout, filter and parameter consitency
\n
\n
Cross Environment Testing
\n
\n
Comparing the same Tableau View on two different environments i.e. dev and prod or two different Tableau Server versions, when doing and upgrade, in terms of data, layout, filter and parameter consitency
\n
\n
Performance Testing
\n
\n
Testing the performance of your Tableau Server by driving load against it
Clone the repository in Kinesis Designer (File -> Clone Git Repository and enter https://github.com/Kinesis-CI/education-and-innovation.git) and open project.json. This project.json file contains key\ninformation to identify the individual test projects within this directory.\nAlternatively, you can use the Kinesis Command Line Interface and open the files in a text editor.
\n
\n
\n
Edit context variables to fit your environment. i.e. reference the Tableau Server you are using within your organization and use a database you have access to. For more information on context variables visit\nhttps://kinesis-ci.com/documents/#/context-variables
In Cross Environment test, update the target environment to fit your target environment you want to compare to your source environment. For more information on Cross Environment tests visit https://kinesis-ci.com/documents/#/cross-environment-test
\n
\n\n
Directory layout
\n
\n\n
\n
File Type
\n
Description
\n
\n\n\n
\n
src
\n
Contains the Tableau source files that have been imported into the given Project
Contains files related to the individual Tests that have been created within the Project
\n
\n
\n
test/<TEST_NAME>/resources
\n
Test resources. These are typically data files (.csv) needed to load data into source systems (i.e. databases) or validate data to expected results
\n
\n
\n
test/<TEST_NAME>/kinesis.json
\n
JSON files that describe the individual Test steps that have been created within the Project
\n
\n
\n
project.json
\n
JSON file that contains the key information to identify the individual Projects. This is only needed for Kinesis Designer, but not to run tests from the Command Line Interface
If you want to run tests automatically on a Continuous Integration Server, for example on Jenkins, TeamCity or any other similar tool, then you will need to install the Kinesis Command Line Interface to the server where your CI/CD server is running.
\n
Command Line Interface allows you to run previously created Kinesis tests and integrate it with the CI tool of your choice.
Important Note:\nSeptember 8th 2021 - This GitHub is no longer updated by the software vendor. Please use our rebranded site: https://github.com/WiiisdomOps
\n
Education and innovation is a sample project for users of the Kinesis CI tool for Tableau.\nKinesis CI is a test framework that adds automated testing and continuous integration capability to Tableau Server.\nFor more information on Kinesis CI, please visit http://kinesis-ci.com
\n
\n
Concept
\n
This project is designed to give you an example for setting up your testing projects in Kinesis CI.
\n
It contains a collection of test cases for a Tableau Workbook – Education and Innovation,\nincluding the following test cases:
\n
Functional Testing
\n
\n
Load data into a database
\n
Publish Tableau workbooks and data sources to Tableau Server
\n
Refresh data extracts
\n
Filters
\n
Parameters
\n
Checking data against an expected data set
\n
Checking the layout of the Dashboard to an expected layout
\n
Checking data against pre-defined rules and criterias
\n
Checking data against the datasource by an SQL query in the underlying database
\n
Running custom webdriver commands (required for SSO and custom login pages)
\n
Switch Tab
\n
Selecting Marks for testing interactivity/ user clicks
\n
\n
Regression Testing
\n
\n
Running regression test on a Tableau dashboard to compare against a baseline in terms of data, layout, filter and parameter consitency
\n
\n
Cross Environment Testing
\n
\n
Comparing the same Tableau View on two different environments i.e. dev and prod or two different Tableau Server versions, when doing and upgrade, in terms of data, layout, filter and parameter consitency
\n
\n
Performance Testing
\n
\n
Testing the performance of your Tableau Server by driving load against it
Clone the repository in Kinesis Designer (File -> Clone Git Repository and enter https://github.com/Kinesis-CI/education-and-innovation.git) and open project.json. This project.json file contains key\ninformation to identify the individual test projects within this directory.\nAlternatively, you can use the Kinesis Command Line Interface and open the files in a text editor.
\n
\n
\n
Edit context variables to fit your environment. i.e. reference the Tableau Server you are using within your organization and use a database you have access to. For more information on context variables visit\nhttps://kinesis-ci.com/documents/#/context-variables
In Cross Environment test, update the target environment to fit your target environment you want to compare to your source environment. For more information on Cross Environment tests visit https://kinesis-ci.com/documents/#/cross-environment-test
\n
\n\n
Directory layout
\n
\n\n
\n
File Type
\n
Description
\n
\n\n\n
\n
src
\n
Contains the Tableau source files that have been imported into the given Project
Contains files related to the individual Tests that have been created within the Project
\n
\n
\n
test/<TEST_NAME>/resources
\n
Test resources. These are typically data files (.csv) needed to load data into source systems (i.e. databases) or validate data to expected results
\n
\n
\n
test/<TEST_NAME>/kinesis.json
\n
JSON files that describe the individual Test steps that have been created within the Project
\n
\n
\n
project.json
\n
JSON file that contains the key information to identify the individual Projects. This is only needed for Kinesis Designer, but not to run tests from the Command Line Interface
If you want to run tests automatically on a Continuous Integration Server, for example on Jenkins, TeamCity or any other similar tool, then you will need to install the Kinesis Command Line Interface to the server where your CI/CD server is running.
\n
Command Line Interface allows you to run previously created Kinesis tests and integrate it with the CI tool of your choice.
Before you start forwarding internal resources to your local machine, you have to add cluster configuration.\nTo do this we have 3 different options in the app:
\n\n
Auto-detection of ~/.kube/config file and parsing settings from it
\n
Manual adding of Kubernetes config by selecting a file(s)
\n
Manual adding of Kubernetes config by pasting a text
\n
Import of the JSON file that could be generated via Kube Forwarder export functionality
\n\n
When you add a new cluster via auto-detection (option 1) or manually using a file(a) selection (option 2), we could parse\nconfigs and if there are multiple contexts inside we will suggest you to add multiple clusters to the app.\nFew examples of yaml files we expect to have you could find there
\n
Also, you could add a cluster by filling a form manually (option 3). The form has the following fields:
\n
\n
\n
Name - the name of a cluster withing Kube Forwarder app.
\n
\n
\n
Storing method (Set destination to your kube config or paste it as a text) - the method of storing a config It has two options:
\n
\n
Set a path - storing a path to the config file. It will be read every time when you forwarding a port. It allows\na user to don't do any changes in Kube Forwarder's settings when a third-party app updates the config file.\nFor example, when azure-cli updates an access token (#13).
\n
Paste as a text - storing a config just as a yml text.
\n
\n
\n
\n
Path (if storing method is Set a path) - the path to a config file.
\n
\n
\n
Content (if storing method is Paste as a text) - Yml config as a text.
\n
\n
\n
Current Context (if storing method is Set a path) - When you use Set a path, you must select a context from a file\nwhich will be used to connect to a resource. Let's see an example of a problem that the field solves.
\n\n
Let's say we don't have Current context field.
\n
A user has a config file with two contexts: local-cluster and remote-cluster.\ncurrent-context in the yml file is local-cluster.
\n
The user configured a cluster in Kube Forwarder with Set a path option.
\n
The user created a resource postgres and successfully forwarded ports for some time.
\n
Then the user executed kubectl config use-context remote-cluster
\n
If the user tries to forward the resource in Kube Forwarder again, most likely there will be an error\nsince a connection will be established with remote-cluster, not local-cluster as the user expected,\nand remote-cluster couldn't have postgres resource.
\n\n
So, to avoid the error we should store the current context in a separate field.
\n
\n
\n
\n
Add a resource
\n
Kube Forwarder supports forwarding of all types of resources that supported by kubectl – Pod, Deployment, Service.
\n
We ask you to fill the form with the following fields:
\n
Cluster Name - pick a cluster from one of the added clusters.
\n
Namespace - the namespace of the resource you plan to forward.
\n
Kind – pick one of the options Pod, Deployment or Service.
\n
Name - name of the Pod, Deployment or Service.
\n
Alias - alternative name of the resource that will be displayed on the homepage(optional)
\n
Port Forwarding
\n
\n
Local port - port from your local machine where the resource will be forwarded. Note that ports <= 1024 are\nrestricted to user root
\n
Resource port - port of the resource from the Kubernetes cluster
\n
\n
Use Custom Local Address - Check this and put an IP address or hostname into the text field to\nuse a different listen address. Putting each service on its own address avoids sharing/collisions between\nservices on cookies and port number. Specify a loopback address like 127.0.x.x or add entries to your\nhosts file like 127.0.1.1 dashboard.production.kbf and put the assigned name in this column. If blank or\nunchecked, localhost / 127.0.0.1 will be used.
\n
\n
Import/Export
\n
Kube Forwarder allows you export cluster configuration in JSON that you could use to share with your team members or for the backup purpose. You could easily store it on Github. When you export cluster, you could export it with or without confidential information.
\n
\n
Install with Homebrew
\n
brew cask install kube-forwarder\n
\n
Contributing
\n
We encourage you to contribute to Kube Forwarder!
\n
We expect contributors to abide by our underlying code of conduct.\nAll conversations and discussions on GitHub (issues, pull requests)\nmust be respectful and harassment-free.
\n
This project was generated with electron-vue@8fae476 using vue-cli. Documentation about the original structure can be found here.
\n
How to contribute
\n\n
Fork the project & clone locally. Follow the initial setup here.
\n
Create a branch, naming it either a feature or bug: git checkout -b feature/that-new-feature or bug/fixing-that-bug
\n
Code and commit your changes. Bonus points if you write a good commit message: git commit -m 'Add some feature'
\n
Push to the branch: git push origin feature/that-new-feature
/kube-forwarder\n\n# install dependencies\nnpm install\n\n# prepare .env files\ncp .env.example .env\ncp .env.example .env.production\n\n# serve with hot reload in Electron Dev app\nnpm run dev\n\n# serve WEB version with hot reload at localhost:9081\nnpm run web\">
# Clone source code\ngit clone https://github.com/<your-username>/kube-forwarder\n\n# install dependencies\nnpm install\n\n# prepare .env files\ncp .env.example .env\ncp .env.example .env.production\n\n# serve with hot reload in Electron Dev app\nnpm run dev\n\n# serve WEB version with hot reload at localhost:9081\nnpm run web\n
\n
Build
\n
Build an application for production
\n
# Build a target for current OS\nnpm run build\n\n# Build a target for Windows\nnpm run build -- -- --win\n\n# Build a target for Linux\nnpm run build -- -- --linux\n\n# You can mix targets\nnpm run build -- -- --win --linux\n\n# You can build static and target separately\nnpm run build:dist\nnpm run build:target -- --win\n
\n
A built version will be appear in build directory.
\n
Running the tests
\n
We are using Cypress to run integration tests.\nThere are visual regression tests. It's important to run them inside docker\ncontainer to get same screenshots as in Drone CI.
\n
npm run test:cypress\n
\n
Or you can run it manually on a local machine.
\n
# Run the web version to test it\nnpm run web\n\n# Run this command in a separate terminal tab\nnpm run test:cypress:onhost\n\n# Or you can open Cypress GUI\nnpm run test:cypress:open\n
\n
Troubleshooting
\n
Q) Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 12.x\nA) npm rebuild node-sass
Before you start forwarding internal resources to your local machine, you have to add cluster configuration.\nTo do this we have 3 different options in the app:
\n\n
Auto-detection of ~/.kube/config file and parsing settings from it
\n
Manual adding of Kubernetes config by selecting a file(s)
\n
Manual adding of Kubernetes config by pasting a text
\n
Import of the JSON file that could be generated via Kube Forwarder export functionality
\n\n
When you add a new cluster via auto-detection (option 1) or manually using a file(a) selection (option 2), we could parse\nconfigs and if there are multiple contexts inside we will suggest you to add multiple clusters to the app.\nFew examples of yaml files we expect to have you could find there
\n
Also, you could add a cluster by filling a form manually (option 3). The form has the following fields:
\n
\n
\n
Name - the name of a cluster withing Kube Forwarder app.
\n
\n
\n
Storing method (Set destination to your kube config or paste it as a text) - the method of storing a config It has two options:
\n
\n
Set a path - storing a path to the config file. It will be read every time when you forwarding a port. It allows\na user to don't do any changes in Kube Forwarder's settings when a third-party app updates the config file.\nFor example, when azure-cli updates an access token (#13).
\n
Paste as a text - storing a config just as a yml text.
\n
\n
\n
\n
Path (if storing method is Set a path) - the path to a config file.
\n
\n
\n
Content (if storing method is Paste as a text) - Yml config as a text.
\n
\n
\n
Current Context (if storing method is Set a path) - When you use Set a path, you must select a context from a file\nwhich will be used to connect to a resource. Let's see an example of a problem that the field solves.
\n\n
Let's say we don't have Current context field.
\n
A user has a config file with two contexts: local-cluster and remote-cluster.\ncurrent-context in the yml file is local-cluster.
\n
The user configured a cluster in Kube Forwarder with Set a path option.
\n
The user created a resource postgres and successfully forwarded ports for some time.
\n
Then the user executed kubectl config use-context remote-cluster
\n
If the user tries to forward the resource in Kube Forwarder again, most likely there will be an error\nsince a connection will be established with remote-cluster, not local-cluster as the user expected,\nand remote-cluster couldn't have postgres resource.
\n\n
So, to avoid the error we should store the current context in a separate field.
\n
\n
\n
\n
Add a resource
\n
Kube Forwarder supports forwarding of all types of resources that supported by kubectl – Pod, Deployment, Service.
\n
We ask you to fill the form with the following fields:
\n
Cluster Name - pick a cluster from one of the added clusters.
\n
Namespace - the namespace of the resource you plan to forward.
\n
Kind – pick one of the options Pod, Deployment or Service.
\n
Name - name of the Pod, Deployment or Service.
\n
Alias - alternative name of the resource that will be displayed on the homepage(optional)
\n
Port Forwarding
\n
\n
Local port - port from your local machine where the resource will be forwarded. Note that ports <= 1024 are\nrestricted to user root
\n
Resource port - port of the resource from the Kubernetes cluster
\n
\n
Use Custom Local Address - Check this and put an IP address or hostname into the text field to\nuse a different listen address. Putting each service on its own address avoids sharing/collisions between\nservices on cookies and port number. Specify a loopback address like 127.0.x.x or add entries to your\nhosts file like 127.0.1.1 dashboard.production.kbf and put the assigned name in this column. If blank or\nunchecked, localhost / 127.0.0.1 will be used.
\n
\n
Import/Export
\n
Kube Forwarder allows you export cluster configuration in JSON that you could use to share with your team members or for the backup purpose. You could easily store it on Github. When you export cluster, you could export it with or without confidential information.
\n
\n
Install with Homebrew
\n
brew cask install kube-forwarder\n
\n
Contributing
\n
We encourage you to contribute to Kube Forwarder!
\n
We expect contributors to abide by our underlying code of conduct.\nAll conversations and discussions on GitHub (issues, pull requests)\nmust be respectful and harassment-free.
\n
This project was generated with electron-vue@8fae476 using vue-cli. Documentation about the original structure can be found here.
\n
How to contribute
\n\n
Fork the project & clone locally. Follow the initial setup here.
\n
Create a branch, naming it either a feature or bug: git checkout -b feature/that-new-feature or bug/fixing-that-bug
\n
Code and commit your changes. Bonus points if you write a good commit message: git commit -m 'Add some feature'
\n
Push to the branch: git push origin feature/that-new-feature
# Clone source code\ngit clone https://github.com/<your-username>/kube-forwarder\n\n# install dependencies\nnpm install\n\n# prepare .env files\ncp .env.example .env\ncp .env.example .env.production\n\n# serve with hot reload in Electron Dev app\nnpm run dev\n\n# serve WEB version with hot reload at localhost:9081\nnpm run web\n
\n
Build
\n
Build an application for production
\n
# Build a target for current OS\nnpm run build\n\n# Build a target for Windows\nnpm run build -- -- --win\n\n# Build a target for Linux\nnpm run build -- -- --linux\n\n# You can mix targets\nnpm run build -- -- --win --linux\n\n# You can build static and target separately\nnpm run build:dist\nnpm run build:target -- --win\n
\n
A built version will be appear in build directory.
\n
Running the tests
\n
We are using Cypress to run integration tests.\nThere are visual regression tests. It's important to run them inside docker\ncontainer to get same screenshots as in Drone CI.
\n
npm run test:cypress\n
\n
Or you can run it manually on a local machine.
\n
# Run the web version to test it\nnpm run web\n\n# Run this command in a separate terminal tab\nnpm run test:cypress:onhost\n\n# Or you can open Cypress GUI\nnpm run test:cypress:open\n
\n
Troubleshooting
\n
Q) Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 12.x\nA) npm rebuild node-sass
# For development,\n# Start development server with Vite\nyarn run dev:one\n# Start Electron\nyarn run dev:two\n\n# For production,\n# Build files with Vite\nyarn run prod\n# Make executable\nyarn run pack
# For development,\n# Start development server with Vite\nyarn run dev:one\n# Start Electron\nyarn run dev:two\n\n# For production,\n# Build files with Vite\nyarn run prod\n# Make executable\nyarn run pack
Knowte is a note taking application that allows you to quickly and easily organize and find your notes. This version is written using Electron, Angular and Typescript. The original Knowte (for Windows), which is written in WPF and C#, remains available here.
\n
\n\n
\n
\n
\n
Screenshot
\n
\n
Build prerequisites
\n
\n
wine: required to build Windows package
\n
rpm: required to build rpm package
\n
libarchive-tools: contains bsdtar, which is required to build pacman package.
\n
\n
To install the prerequisites on Ubuntu:
\n
sudo apt install wine rpm libarchive-tools
\n
To install the prerequisites on Manjaro:
\n
sudo pacman -S wine rpm-tools
\n
Build instructions
\n
$ git clone https://github.com/digimezzo/knowte.git\n$ cd knowte\n$ npm install # Download dependencies\n$ npm start # Start Knowte\n$ npm run electron:windows # Build for Windows\n$ npm run electron:linux # Build for Linux\n$ npm run electron:mac # Build for Mac
\n
Pacman installation notes
\n
The pacman package contains a dependency to package libappindicator-sharp, which is no longer distributed with Arch Linux. I cannot remove this dependency for now, because it is an issue in electron-builder (the packaging tool which is used in this project). It is, however, possible to install Knowte on Arch Linux or Manjaro using this command (replace x.y.z with the correct version number):
Knowte is a note taking application that allows you to quickly and easily organize and find your notes. This version is written using Electron, Angular and Typescript. The original Knowte (for Windows), which is written in WPF and C#, remains available here.
\n
\n\n
\n
\n
\n
Screenshot
\n
\n
Build prerequisites
\n
\n
wine: required to build Windows package
\n
rpm: required to build rpm package
\n
libarchive-tools: contains bsdtar, which is required to build pacman package.
\n
\n
To install the prerequisites on Ubuntu:
\n
sudo apt install wine rpm libarchive-tools
\n
To install the prerequisites on Manjaro:
\n
sudo pacman -S wine rpm-tools
\n
Build instructions
\n
$ git clone https://github.com/digimezzo/knowte.git\n$ cd knowte\n$ npm install # Download dependencies\n$ npm start # Start Knowte\n$ npm run electron:windows # Build for Windows\n$ npm run electron:linux # Build for Linux\n$ npm run electron:mac # Build for Mac
\n
Pacman installation notes
\n
The pacman package contains a dependency to package libappindicator-sharp, which is no longer distributed with Arch Linux. I cannot remove this dependency for now, because it is an issue in electron-builder (the packaging tool which is used in this project). It is, however, possible to install Knowte on Arch Linux or Manjaro using this command (replace x.y.z with the correct version number):
First UI automation testing tool design for all team members.
\n
\n\n
\n
last-hit-quick-start
\n
Last-hit is an automation testing solution aimed at development and operations teams.\nIt is focused on web test, gives you broad, deep and exact control over your web apps automation testing
\n
A quick guide to set up and start your first automation test with last-hit, a free test automation tool built on top of electron and puppeteer. You now can begin automation testing on web & mobile with the least amount of effort. Free download at site.
Not supported yet. You can clone source code repo and package by yourself. We use Electron Builder.
\n
Install from source code
\n
To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\ngit clone https://github.com/last-hit-aab/last-hit.git\n# Install dependencies\nnpm install\n# Go into the repository\ncd last-hit\n# Install dependencies\nnpm install\n# Go into the render folder\ncd render\n# Install dependencies\nnpm install\n# Back to the root directory of the repository\ncd ../\n# Run the app\nnpm run start
\n
\n
Note: If you want to use the Installation package, \nPlease download Release Package,
First UI automation testing tool design for all team members.
\n
\n\n
\n
last-hit-quick-start
\n
Last-hit is an automation testing solution aimed at development and operations teams.\nIt is focused on web test, gives you broad, deep and exact control over your web apps automation testing
\n
A quick guide to set up and start your first automation test with last-hit, a free test automation tool built on top of electron and puppeteer. You now can begin automation testing on web & mobile with the least amount of effort. Free download at site.
Not supported yet. You can clone source code repo and package by yourself. We use Electron Builder.
\n
Install from source code
\n
To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\ngit clone https://github.com/last-hit-aab/last-hit.git\n# Install dependencies\nnpm install\n# Go into the repository\ncd last-hit\n# Install dependencies\nnpm install\n# Go into the render folder\ncd render\n# Install dependencies\nnpm install\n# Back to the root directory of the repository\ncd ../\n# Run the app\nnpm run start
\n
\n
Note: If you want to use the Installation package, \nPlease download Release Package,
A Software to create aliases for commands, applications to type in cmd, terminal. Just type the original command and type an alias for it. You can also assign a program for it. Browse through the directory to find the program or anything executable using the command line and you can create an alias for the same. Only Windows is supported for releases.
Full Windows install for 64-bit Windows.\nSetupx86.exe => Full Windows install for 32-bit Windows.\">
Setupx64.exe => Full Windows install for 64-bit Windows.\nSetupx86.exe => Full Windows install for 32-bit Windows.
\n
Contributing
\n
Big Kudos to Hitesh Peswani for his incredible UI contributions.
\n
We encourage you to contribute to Lazy Type!
\n
We expect contributors to abide by our underlying code of conduct.\nAll conversations and discussions on GitHub (issues, pull requests)\nmust be respectful and harassment-free.
\n
\n
License
\n
This project is licensed under the MIT License - see the LICENSE.md file for details.
\n
",
"readmeOriginal": "
\n\n\n\n
\n
Lazy Type
\n
A Software to create aliases for commands, applications to type in cmd, terminal. Just type the original command and type an alias for it. You can also assign a program for it. Browse through the directory to find the program or anything executable using the command line and you can create an alias for the same. Only Windows is supported for releases.
Setupx64.exe => Full Windows install for 64-bit Windows.\nSetupx86.exe => Full Windows install for 32-bit Windows.
\n
Contributing
\n
Big Kudos to Hitesh Peswani for his incredible UI contributions.
\n
We encourage you to contribute to Lazy Type!
\n
We expect contributors to abide by our underlying code of conduct.\nAll conversations and discussions on GitHub (issues, pull requests)\nmust be respectful and harassment-free.
\n
\n
License
\n
This project is licensed under the MIT License - see the LICENSE.md file for details.
This repo contains the UI code that powers the official LBRY desktop app. The LBRY app is a graphical browser for the decentralized content marketplace provided by the\nLBRY protocol. It is essentially the\nlbry daemon bundled with a UI using\nElectron.
We provide installers for Windows, macOS (v10.12.4, Sierra, or greater), and Debian-based Linux. See community maintained builds section for alternative Linux installations.
Our releases page also contains the latest\nrelease, pre-releases, and past builds.\nNote: If the deb fails to install using the Ubuntu Software Center, install manually via sudo dpkg -i <path to deb>. You'll need to run sudo apt-get install -f if this is the first time installing it to install dependencies
\n
To install from source or make changes to the application, continue to the next section below.
\n
Community maintained builds for Arch Linux and Flatpak are available, see below. These installs will need to be updated manually as the in-app update process only supports Debian installs at this time.\nNote: If coming from a deb install, the directory structure is different and you'll need to migrate data.
Clone (or fork) this repository: git clone https://github.com/lbryio/lbry-desktop
\n
Change directory into the cloned repository: cd lbry-desktop
\n
If corepack is not enabled, run sudo corepack enable (the sudo is necessary for system-wide installation, if you use container, nvm etc... you might not be forced to use it)
\n
Install the dependencies: yarn
\n\n
Run the electron app
\n
yarn dev
\n
\n
If you want to build and launch the production app you can run yarn build. This will give you an executable inside the /dist folder. We use electron-builder to create distributable packages.
\n
\n
Resetting your Packages
\n
If the app isn't building, or yarn xxx commands aren't working you may need to just reset your node_modules. To do so you can run: rm -r node_modules && yarn or del /s /q node_modules && yarn on Windows.
\n
If you really think something might have gone wrong, you can force your repo to clear everything that doesn't match the repo with git reset --hard HEAD && git clean -fxd && git pull -r
\n
Contributing
\n
We ❤️ contributions from everyone and contributions to this project are encouraged, and compensated. We welcome bug reports, bug fixes and feedback is always appreciated. For more details, see CONTRIBUTING.md.
\n
\n
License
\n
This project is MIT licensed. For the full license, see LICENSE.
\n
Security
\n
We take security seriously. Please contact security@lbry.com regarding any security issues. Our PGP key is here if you need it. Previous versions up to v0.50.2 were signed by Sean Yesmunt.\nNew Releases are signed by Jessop Breth.
This repo contains the UI code that powers the official LBRY desktop app. The LBRY app is a graphical browser for the decentralized content marketplace provided by the\nLBRY protocol. It is essentially the\nlbry daemon bundled with a UI using\nElectron.
We provide installers for Windows, macOS (v10.12.4, Sierra, or greater), and Debian-based Linux. See community maintained builds section for alternative Linux installations.
Our releases page also contains the latest\nrelease, pre-releases, and past builds.\nNote: If the deb fails to install using the Ubuntu Software Center, install manually via sudo dpkg -i <path to deb>. You'll need to run sudo apt-get install -f if this is the first time installing it to install dependencies
\n
To install from source or make changes to the application, continue to the next section below.
\n
Community maintained builds for Arch Linux and Flatpak are available, see below. These installs will need to be updated manually as the in-app update process only supports Debian installs at this time.\nNote: If coming from a deb install, the directory structure is different and you'll need to migrate data.
Clone (or fork) this repository: git clone https://github.com/lbryio/lbry-desktop
\n
Change directory into the cloned repository: cd lbry-desktop
\n
If corepack is not enabled, run sudo corepack enable (the sudo is necessary for system-wide installation, if you use container, nvm etc... you might not be forced to use it)
\n
Install the dependencies: yarn
\n\n
Run the electron app
\n
yarn dev
\n
\n
If you want to build and launch the production app you can run yarn build. This will give you an executable inside the /dist folder. We use electron-builder to create distributable packages.
\n
\n
Resetting your Packages
\n
If the app isn't building, or yarn xxx commands aren't working you may need to just reset your node_modules. To do so you can run: rm -r node_modules && yarn or del /s /q node_modules && yarn on Windows.
\n
If you really think something might have gone wrong, you can force your repo to clear everything that doesn't match the repo with git reset --hard HEAD && git clean -fxd && git pull -r
\n
Contributing
\n
We ❤️ contributions from everyone and contributions to this project are encouraged, and compensated. We welcome bug reports, bug fixes and feedback is always appreciated. For more details, see CONTRIBUTING.md.
\n
\n
License
\n
This project is MIT licensed. For the full license, see LICENSE.
\n
Security
\n
We take security seriously. Please contact security@lbry.com regarding any security issues. Our PGP key is here if you need it. Previous versions up to v0.50.2 were signed by Sean Yesmunt.\nNew Releases are signed by Jessop Breth.
Lectrote packages up IF interpreters with the Chromium browser as a Mac/Win/Linux app.
\n
When launched, it prompts you to select a game file to play. You can play several games at the same time in separate windows. Your position is always autosaved; when you launch a game, your last play session will automatically be resumed.
\n
Lectrote currently supports:
\n
\n
Glulx games (.ulx or .gblorb), as produced by Inform 7.
\n
Z-code games (.z3/.z4/.z5/.z8 or .zblorb), as produced by Inform 7 or earlier versions of Inform.
Ink compiled game files (.json), as produced by the Ink scripting language.
\n
\n
You can also use this package to construct a \"bound game\" -- an app which plays a single built-in game. This is a package containing Chromium, the interpreter, your game file, and perhaps some additional configuration. You can distribute this as a standalone game application; it's bulky but it lets people play your game.
\n
Linux note: Depending on your Linux configuration and how you install this package, you may have to add the --no-sandbox option when launching Lectrote.
\n
Glulx (Inform 7) support
\n
Because this relies on the Quixe interpreter, sound is not supported. It's also not as fast as a native interpreter.
\n
Z-code support
\n
Lectrote uses the ZVM interpreter for Z-machine support. (V3/4/5 and V8 only.)
\n
Hugo support
\n
The Hugo engine does not currently support autosave.
\n
TADS support
\n
The TADS 2/3 engine does not currently support autosave.
\n
Ink support
\n
This relies on the inkjs interpreter. It is a deliberately non-fancy presentation -- no attempt to slow-print the output or hide the choice list.
\n
License information
\n
\n
Lectrote is copyright (c) 2016-2021, Andrew Plotkin (MIT license)
\n
Electron is copyright (c) 2013-2021 GitHub Inc. (MIT license)
\n
Quixe is copyright (c) 2010-2020, Andrew Plotkin (MIT license)
\n
inkjs is copyright (c) 2017-2020 Yannick Lohse (MIT license)
\n
ifvms.js is copyright (c) 2016 Dannii Willis and other contributors (MIT license)
\n
emglken is copyright (c) 2012-2017, Andrew Plotkin, Dannii Willis (MIT license)
\n
Git (in emglken) is copyright (c) 2003 Iain Merrick (MIT license)
\n
Glulxe (in emglken) is copyright (c) 1999-2016, Andrew Plotkin (MIT license)
\n
Hugo (in emglken) is copyright (c) 2011 by Kent Tessman (BSD license)
To fetch all the necessary Node packages and place them in a node_modules directory:
\n
npm install\n
\n
This command also fetches the Quixe submodule (which will live in the quixe directory). You must have git installed for this to work.
\n
Now just type
\n
npm start\n
\n
...to launch the app.
\n
When run this way, the app will show up named as \"Electron\", not \"Lectrote\".
\n
Packaging Lectrote
\n
The makedist.py script builds the zip files which you see on the release page. (Yes, it is silly to use a Python packaging script in a Node.js package. Maybe I'll rewrite it into Javascript. Later.)
\n
python3 makedist.py\n
\n
This creates build directories and then zip files in a dist directory. Add -b to only generate the build dirs; -z to transform existing build dirs into zip files.
\n
You can add arguments to narrow down the platforms you are building, e.g.:
To build a universal (Intel/ARM) Mac binary, you must first build the Intel and ARM binaries. This command will build all three:
\n
python3 makedist.py darwin\n
\n
If you want to code-sign the Mac version, use the --macsign argument:
\n
python3 makedist.py darwin --macsign 'Developer ID Application: ...'\n
\n
You must be a registered Apple developer to do this. The argument must be the name of the \"Developer Id Application\" certificate in your keychain. Run the Keychain Access app to see this. If you don't have one, the easiest way to set it up is to run Xcode, open the Preferences, select Accounts, and hit Manage Certificates.
\n
Building a signed universal Mac version is unfortunately a pain in the butt. You must (a) build the darwin-x64 and darwin-arm64 versions unsigned; (b) build darwin-univ with the --macsign argument; (c) build the first two again with the --macsign argument. I may streamline this in the future.
\n
Packaging a bound game
\n
You will need to create a separate directory for your game's files. Copy package.json to the directory, adding or modifying these lines:
\n
\n
name: A node package name. This is not used anywhere, so it doesn't really matter.
\n
productName: The display name for the app.
\n
version: Version number of your game.
\n
author: You, the game's author.
\n
description: One-line description of your game.
\n
lectrotePackagedGame: Pathname to the game file.
\n
lectroteSoleInterpreter: Set to \"ifvms\", \"inkjs\", \"emglken\" to include just one of Lectrote's interpreter engines. (Optional, but it saves a little bit of space.) (Note that Git, Glulxe, Hugo, and TADS are all handled by the emglken package. There's currently no way to include just one of them.)
\n
lectroteExtraFiles: An array of extra files to include. These are assumed to be in the game directory, so you do not have to include the directory prefix. (This list must include the game file -- yes, it's redundant with lectrotePackagedGame.)
\n
lectroteMacAppID: If you plan to build a MacOS app, a reverse-DNS ID string to uniquely identify it.
\n
lectroteCopyright: Copyright string (applied to Windows binaries).
\n
\n
(Do not change lectroteVersion; that should always show the Lectrote release that you built your bound app from.)
\n
To create a Mac DMG archive, you will also need a resources/pack-dmg-spec.json file. See samplegame/resources/pack-dmg-spec.json. You should update the \"title\", the \"dist/Adventure-$PLATFORM$\" paths under \"contents\", and (if you want) the \"background\" image which is used for the folder window.
\n
You may also copy any of Lectrote's content files to your game directory and customize them. You will probably want to customize about.html, for example.
\n
The samplegame directory in the Lectrote source demonstrates the layout. It will be simplest to clone that and alter it.
\n
Once your files are ready, do:
\n
python3 makedist.py --game GAMEDIR\n
\n
This will build and package apps for all platforms. (You can test this out of the box by using samplegame for the GAMEDIR.) As noted above, you can cut down the stages or targets with the -b, -z options or by naming platforms.
\n
You cannot launch a bound game by typing npm start. You have to package it, at least to the -b stage, and run it from the dist directory.
\n
Customizing your bound app
\n
As noted, you can copy play.html, el-glkote.css, or other Lectrote files into your gamedir and customize them. When packaging with the --game option, files found in the gamedir will replace normal Lectrote files.
\n
If you add new files (not replacing Lectrote files), be sure to list them in the lectroteExtraFiles array.
\n
You can extend the functionality of the app -- for example, adding or removing menu items. Add a Javascript file to your gamedir, and name it in your package.json file:
\n
\"lectroteMainExtension\": \"GAMEDIR/FILE.js\",\n
\n
(And add it to lectroteExtraFiles as well.)
\n
This file can define new functionality by exporting any of the following Javascript functions. For example, you could say:
\n
exports.launch = function() { ... }\n
\n
\n
exports.launch(): Called when the app starts up.
\n
exports.app_ready(): Called when the app is ready to open windows. At this point the game window has already been opened.
\n
exports.construct_menu_template(template, special): Called to customize the app menu template. The template argument is a Javascript data structure as described in the Electron Menu docs. special is null for the game window, or one of the strings \"about\", \"prefs\", \"card\" for one of Lectrote's special windows. Modify template and return it.
\n
exports.set_zoom_factor(val): Called when the app's zoom level changes. The argument is suitable for Electron's setZoomFactor() method.
\n
exports.set_darklight_mode(val): Called when the OS native theme changes. The argument is false for light theme, true for dark theme.
\n
exports.export_game_path(): The bound app normally has an \"Export Portable Game File...\" menu option, which lets the user extract your game file for use in other interpreters. You can implement this function and return null to suppress this menu option. You can also return the pathname of a different game file, which is not actually a useful thing to do.
\n
exports.cover_image_info: An object { url:URL, width:W, height:H } which provides cover art. This is only needed if your game is not a blorb file. (If it is not provided, Lectrote attempts to load the blorb cover art as usual.)
\n
exports.about_window_size: An object { width:W, height:H } which customizes the size of the about.html window. (Defaults to { width:600, height:450 }.)
\n
\n
The main Lectrote module exports several functions you can use in your extension code. I have not yet documented them; see the main.js file.
\n
Style customizations for dark/light mode
\n
As of release 1.3.6 (August 2020), Lectrote supports OS dark theme. You should do the same for any windows you have added or customized.
\n
Look at about.html to see how this works. The evhan_darklight() function alters the document style; the onready() function now sets up a callback for this function. The <body> tag now has <body id=\"body\"> to support this, and several .DarkMode stanzas have been added to the CSS. You should copy these changes in your own about.html.
\n
When opening a window, use a backgroundColor line to set the loading color, minimizing flash:
Also add a set_darklight_mode() routine to your extension code (see above). This routine should send the same message to all open windows.
\n
In the window, set up a handler for this message and adjust your body styles appropriately:
\n
require('electron').ipcRenderer.on('set-darklight-mode', function(ev, arg) {\n\t// arg is false for light mode, true for dark mode.\n});\n
\n
See about.html and if-card.html for examples of dark/light style handling.
\n
Be sure to test that your windows open with the appropriate theme (matching the OS theme), and also that they change dynamically when the OS theme changes.
Lectrote packages up IF interpreters with the Chromium browser as a Mac/Win/Linux app.
\n
When launched, it prompts you to select a game file to play. You can play several games at the same time in separate windows. Your position is always autosaved; when you launch a game, your last play session will automatically be resumed.
\n
Lectrote currently supports:
\n
\n
Glulx games (.ulx or .gblorb), as produced by Inform 7.
\n
Z-code games (.z3/.z4/.z5/.z8 or .zblorb), as produced by Inform 7 or earlier versions of Inform.
Ink compiled game files (.json), as produced by the Ink scripting language.
\n
\n
You can also use this package to construct a \"bound game\" -- an app which plays a single built-in game. This is a package containing Chromium, the interpreter, your game file, and perhaps some additional configuration. You can distribute this as a standalone game application; it's bulky but it lets people play your game.
\n
Linux note: Depending on your Linux configuration and how you install this package, you may have to add the --no-sandbox option when launching Lectrote.
\n
Glulx (Inform 7) support
\n
Because this relies on the Quixe interpreter, sound is not supported. It's also not as fast as a native interpreter.
\n
Z-code support
\n
Lectrote uses the ZVM interpreter for Z-machine support. (V3/4/5 and V8 only.)
\n
Hugo support
\n
The Hugo engine does not currently support autosave.
\n
TADS support
\n
The TADS 2/3 engine does not currently support autosave.
\n
Ink support
\n
This relies on the inkjs interpreter. It is a deliberately non-fancy presentation -- no attempt to slow-print the output or hide the choice list.
\n
License information
\n
\n
Lectrote is copyright (c) 2016-2021, Andrew Plotkin (MIT license)
\n
Electron is copyright (c) 2013-2021 GitHub Inc. (MIT license)
\n
Quixe is copyright (c) 2010-2020, Andrew Plotkin (MIT license)
\n
inkjs is copyright (c) 2017-2020 Yannick Lohse (MIT license)
\n
ifvms.js is copyright (c) 2016 Dannii Willis and other contributors (MIT license)
\n
emglken is copyright (c) 2012-2017, Andrew Plotkin, Dannii Willis (MIT license)
\n
Git (in emglken) is copyright (c) 2003 Iain Merrick (MIT license)
\n
Glulxe (in emglken) is copyright (c) 1999-2016, Andrew Plotkin (MIT license)
\n
Hugo (in emglken) is copyright (c) 2011 by Kent Tessman (BSD license)
To fetch all the necessary Node packages and place them in a node_modules directory:
\n
npm install\n
\n
This command also fetches the Quixe submodule (which will live in the quixe directory). You must have git installed for this to work.
\n
Now just type
\n
npm start\n
\n
...to launch the app.
\n
When run this way, the app will show up named as \"Electron\", not \"Lectrote\".
\n
Packaging Lectrote
\n
The makedist.py script builds the zip files which you see on the release page. (Yes, it is silly to use a Python packaging script in a Node.js package. Maybe I'll rewrite it into Javascript. Later.)
\n
python3 makedist.py\n
\n
This creates build directories and then zip files in a dist directory. Add -b to only generate the build dirs; -z to transform existing build dirs into zip files.
\n
You can add arguments to narrow down the platforms you are building, e.g.:
To build a universal (Intel/ARM) Mac binary, you must first build the Intel and ARM binaries. This command will build all three:
\n
python3 makedist.py darwin\n
\n
If you want to code-sign the Mac version, use the --macsign argument:
\n
python3 makedist.py darwin --macsign 'Developer ID Application: ...'\n
\n
You must be a registered Apple developer to do this. The argument must be the name of the \"Developer Id Application\" certificate in your keychain. Run the Keychain Access app to see this. If you don't have one, the easiest way to set it up is to run Xcode, open the Preferences, select Accounts, and hit Manage Certificates.
\n
Building a signed universal Mac version is unfortunately a pain in the butt. You must (a) build the darwin-x64 and darwin-arm64 versions unsigned; (b) build darwin-univ with the --macsign argument; (c) build the first two again with the --macsign argument. I may streamline this in the future.
\n
Packaging a bound game
\n
You will need to create a separate directory for your game's files. Copy package.json to the directory, adding or modifying these lines:
\n
\n
name: A node package name. This is not used anywhere, so it doesn't really matter.
\n
productName: The display name for the app.
\n
version: Version number of your game.
\n
author: You, the game's author.
\n
description: One-line description of your game.
\n
lectrotePackagedGame: Pathname to the game file.
\n
lectroteSoleInterpreter: Set to \"ifvms\", \"inkjs\", \"emglken\" to include just one of Lectrote's interpreter engines. (Optional, but it saves a little bit of space.) (Note that Git, Glulxe, Hugo, and TADS are all handled by the emglken package. There's currently no way to include just one of them.)
\n
lectroteExtraFiles: An array of extra files to include. These are assumed to be in the game directory, so you do not have to include the directory prefix. (This list must include the game file -- yes, it's redundant with lectrotePackagedGame.)
\n
lectroteMacAppID: If you plan to build a MacOS app, a reverse-DNS ID string to uniquely identify it.
\n
lectroteCopyright: Copyright string (applied to Windows binaries).
\n
\n
(Do not change lectroteVersion; that should always show the Lectrote release that you built your bound app from.)
\n
To create a Mac DMG archive, you will also need a resources/pack-dmg-spec.json file. See samplegame/resources/pack-dmg-spec.json. You should update the \"title\", the \"dist/Adventure-$PLATFORM$\" paths under \"contents\", and (if you want) the \"background\" image which is used for the folder window.
\n
You may also copy any of Lectrote's content files to your game directory and customize them. You will probably want to customize about.html, for example.
\n
The samplegame directory in the Lectrote source demonstrates the layout. It will be simplest to clone that and alter it.
\n
Once your files are ready, do:
\n
python3 makedist.py --game GAMEDIR\n
\n
This will build and package apps for all platforms. (You can test this out of the box by using samplegame for the GAMEDIR.) As noted above, you can cut down the stages or targets with the -b, -z options or by naming platforms.
\n
You cannot launch a bound game by typing npm start. You have to package it, at least to the -b stage, and run it from the dist directory.
\n
Customizing your bound app
\n
As noted, you can copy play.html, el-glkote.css, or other Lectrote files into your gamedir and customize them. When packaging with the --game option, files found in the gamedir will replace normal Lectrote files.
\n
If you add new files (not replacing Lectrote files), be sure to list them in the lectroteExtraFiles array.
\n
You can extend the functionality of the app -- for example, adding or removing menu items. Add a Javascript file to your gamedir, and name it in your package.json file:
\n
\"lectroteMainExtension\": \"GAMEDIR/FILE.js\",\n
\n
(And add it to lectroteExtraFiles as well.)
\n
This file can define new functionality by exporting any of the following Javascript functions. For example, you could say:
\n
exports.launch = function() { ... }\n
\n
\n
exports.launch(): Called when the app starts up.
\n
exports.app_ready(): Called when the app is ready to open windows. At this point the game window has already been opened.
\n
exports.construct_menu_template(template, special): Called to customize the app menu template. The template argument is a Javascript data structure as described in the Electron Menu docs. special is null for the game window, or one of the strings \"about\", \"prefs\", \"card\" for one of Lectrote's special windows. Modify template and return it.
\n
exports.set_zoom_factor(val): Called when the app's zoom level changes. The argument is suitable for Electron's setZoomFactor() method.
\n
exports.set_darklight_mode(val): Called when the OS native theme changes. The argument is false for light theme, true for dark theme.
\n
exports.export_game_path(): The bound app normally has an \"Export Portable Game File...\" menu option, which lets the user extract your game file for use in other interpreters. You can implement this function and return null to suppress this menu option. You can also return the pathname of a different game file, which is not actually a useful thing to do.
\n
exports.cover_image_info: An object { url:URL, width:W, height:H } which provides cover art. This is only needed if your game is not a blorb file. (If it is not provided, Lectrote attempts to load the blorb cover art as usual.)
\n
exports.about_window_size: An object { width:W, height:H } which customizes the size of the about.html window. (Defaults to { width:600, height:450 }.)
\n
\n
The main Lectrote module exports several functions you can use in your extension code. I have not yet documented them; see the main.js file.
\n
Style customizations for dark/light mode
\n
As of release 1.3.6 (August 2020), Lectrote supports OS dark theme. You should do the same for any windows you have added or customized.
\n
Look at about.html to see how this works. The evhan_darklight() function alters the document style; the onready() function now sets up a callback for this function. The <body> tag now has <body id=\"body\"> to support this, and several .DarkMode stanzas have been added to the CSS. You should copy these changes in your own about.html.
\n
When opening a window, use a backgroundColor line to set the loading color, minimizing flash:
Also add a set_darklight_mode() routine to your extension code (see above). This routine should send the same message to all open windows.
\n
In the window, set up a handler for this message and adjust your body styles appropriately:
\n
require('electron').ipcRenderer.on('set-darklight-mode', function(ev, arg) {\n\t// arg is false for light mode, true for dark mode.\n});\n
\n
See about.html and if-card.html for examples of dark/light style handling.
\n
Be sure to test that your windows open with the appropriate theme (matching the OS theme), and also that they change dynamically when the OS theme changes.
To Lepton users around the world in more than 130 countries: We hope you all stay safe, healthy, and strong as we get through the COVID-19 pandemic. Lepton will continue to be free, as always. If you find this app helpful, we encourage you to make a donation to a local or global charity of your choice to help fight against the pandemic. Together, we can make the world a better place. ❤️
Lepton's can be customized by <home_dir>/.leptonrc! You can find its exact path in the About page by Command/Ctrl + ,. Create the file if it does not exist.
\n
\n
Theme (light/dark)
\n
Snippet
\n
Editor
\n
Logger
\n
Proxy
\n
Shortcuts
\n
Enterprise
\n
Notifications
\n
\n
Check out the configuration docs to explore different customization options.
To Lepton users around the world in more than 130 countries: We hope you all stay safe, healthy, and strong as we get through the COVID-19 pandemic. Lepton will continue to be free, as always. If you find this app helpful, we encourage you to make a donation to a local or global charity of your choice to help fight against the pandemic. Together, we can make the world a better place. ❤️
Lepton's can be customized by <home_dir>/.leptonrc! You can find its exact path in the About page by Command/Ctrl + ,. Create the file if it does not exist.
\n
\n
Theme (light/dark)
\n
Snippet
\n
Editor
\n
Logger
\n
Proxy
\n
Shortcuts
\n
Enterprise
\n
Notifications
\n
\n
Check out the configuration docs to explore different customization options.
A modern, electron and nodejs based image viewer for Mac, Windows and Linux.\n
\n
Main features
\n
\n
Built with Electron.\n
\n
LightGallery uses HTML, CSS, and JavaScript with Chromium and Node.js to build the app.
\n
\n
\n
Cross-platform.\n
\n
LightGallery works across operating systems. You can use it on OS X, Windows, or Linux.
\n
\n
\n
20+ Animations\n
\n
LightGallery comes with numerous number of beautiful in-built animations.
\n
\n
\n
Animated thumbnails\n
\n
You also have the option to enable animated thumbnails from the settings.
\n
\n
\n
Zoom & Fullscreen\n
\n
You can double-click on the image to see its actual size. Zoom-in and zoom-out controls can be used for changing the zoom values of the image.
\n
\n
\n
Mouse Drag & keyboard Navigations\n
\n
LightGallery allows users to navigate between slides via mouse drag and keyboard arrows.
\n
\n
\n
Pagers
\n
Auto slideshow
\n
Support various kind of image formats (jpg, png, gif, webp).
\n
Highly customizable
\n
And many more.
\n
\n
Watch ⭐ this repository. More features are coming
\n
Settings
\n
\n\n
\n
Name
\n
Default
\n
Description
\n
\n\n\n
\n
mode
\n
'lg-slide'
\n
Type of transition between images. lightGallery comes with lots of transition effects such as 'lg-slide', 'lg-fade', 'lg-zoom-in', 'lg-zoom-in-big', 'lg-zoom-out', 'lg-zoom-out-big', 'lg-zoom-out-in', 'lg-zoom-in-out', 'lg-soft-zoom', 'lg-scale-up', 'lg-slide-circular', 'lg-slide-circular-vertical', 'lg-slide-vertical', 'lg-slide-vertical-growth', 'lg-slide-skew-only', 'lg-slide-skew-only-rev', 'lg-slide-skew-only-y', 'lg-slide-skew-only-y-rev', 'lg-slide-skew', 'lg-slide-skew-rev', 'lg-slide-skew-cross', 'lg-slide-skew-cross-rev', 'lg-slide-skew-ver', 'lg-slide-skew-ver-rev', 'lg-slide-skew-ver-cross', 'lg-slide-skew-ver-cross-rev', 'lg-lollipop', 'lg-lollipop-rev', 'lg-rotate', 'lg-rotate-rev', 'lg-tube'
\n
\n
\n
cssEasing
\n
'ease'
\n
Type of easing to be used for animations
\n
\n
\n
speed
\n
600
\n
Transition duration (in ms).
\n
\n
\n
hideBarsDelay
\n
6000
\n
Delay for hiding gallery controls in ms
\n
\n
\n
useLeft
\n
false
\n
force lightgallery to use css left property instead of transform.
\n
\n
\n
closable
\n
true
\n
allows clicks on dimmer to close gallery.
\n
\n
\n
loop
\n
true
\n
If false, will disable the ability to loop back to the beginning of the gallery when on the last element.
\n
\n
\n
keyPress
\n
true
\n
Enable keyboard navigation
\n
\n
\n
controls
\n
true
\n
If false, prev/next buttons will not be displayed.
\n
\n
\n
slideEndAnimatoin
\n
true
\n
Enable slideEnd animation
\n
\n
\n
hideControlOnEnd
\n
false
\n
If true, prev/next button will be hidden on first/last image.
\n
\n
\n
mousewheel
\n
true
\n
Change slide on mousewheel
\n
\n
\n
preload
\n
1
\n
Number of preload slides. will exicute only after the current slide is fully loaded. ex:// you clicked on 4th image and if preload = 1 then 3rd slide and 5th slide will be loaded in the background after the 4th slide is fully loaded.. if preload is 2 then 2nd 3rd 5th 6th slides will be preloaded
\n
\n
\n
showAfterLoad
\n
true
\n
Show Content once it is fully loaded
\n
\n
\n
counter
\n
true
\n
Whether to show total number of images and index number of currently displayed image.
\n
\n
\n
swipeThreshold
\n
50
\n
By setting the swipeThreshold (in px) you can set how far the user must swipe for the next/prev image.
\n
\n
\n
enableDrag
\n
true
\n
Enables desktop mouse drag support
\n
\n
\n
thumbnail
\n
true
\n
Enable thumbnails for the gallery
\n
\n
\n
animateThumb
\n
true
\n
Enable thumbnail animation.
\n
\n
\n
currentPagerPosition
\n
'middle'
\n
Position of selected thumbnail. 'left' or 'middle' or 'right'
\n
\n
\n
thumbWidth
\n
100
\n
Width of each thumbnails.
\n
\n
\n
thumbContHeight
\n
100
\n
Height of the thumbnail container including padding and border
\n
\n
\n
thumbMargin
\n
5
\n
Spacing between each thumbnails
\n
\n
\n
toogleThumb
\n
true
\n
Whether to display thumbnail toggle button.
\n
\n
\n
enableThumbDrag
\n
true
\n
Enables desktop mouse drag support for thumbnails.
\n
\n
\n
swipeThreshold
\n
50
\n
By setting the swipeThreshold (in px) you can set how far the user must swipe for the next/prev slide.
\n
\n
\n
autoplay
\n
true
\n
Enable gallery autoplay
\n
\n
\n
pause
\n
5000
\n
The time (in ms) between each auto transition.
\n
\n
\n
progressBar
\n
true
\n
Enable autoplay progress bar
\n
\n
\n
fourceAutoplay
\n
false
\n
If false autoplay will be stopped after first user action
\n
\n
\n
autoplayControls
\n
true
\n
Show/hide autoplay controls.
\n
\n
\n
pager
\n
true
\n
Enable/Disable pager
\n
\n
\n
zoom
\n
true
\n
Enable/Disable zoom option
\n
\n
\n
scale
\n
1
\n
Value of zoom should be incremented/decremented
\n
\n\n
\n
Development
\n
Project's folders
\n
\n
app - code of your application goes here.
\n
config - place for you to declare environment specific stuff.
\n
build - in this folder lands built, runnable application.
\n
releases - ready for distribution installers will land here.
\n
resources - resources for particular operating system.
\n
tasks - build and development environment scripts.
\n
\n
Installation
\n
npm install\n
\n
It will also download Electron runtime, and install dependencies for second package.json file inside app folder.
\n
Starting the app
\n
npm start\n
\n
Making a release
\n
To make ready for distribution installer use command:
\n
npm run release\n
\n
It will start the packaging process for the operating system you are running this command on. The file which is ready for distribution will be outputted to releases directory.
\n
You can create Windows installer only when running on Windows, the same is true for Linux and OSX. So to generate all three installers you need all three operating systems.
Integrated Suite of Business Applications.. (Not an open source project but free for the first 1,000 Companies!)
\n
\n
Follow me on twitter @sachinchoolur for the latest news, updates about this project.
\n
Special thanks to Jakub Szwacz for electron boilerplate
\n
License
\n
MIT License
\n
",
"readmeOriginal": "
lightGallery
\n
A modern, electron and nodejs based image viewer for Mac, Windows and Linux.\n
\n
Main features
\n
\n
Built with Electron.\n
\n
LightGallery uses HTML, CSS, and JavaScript with Chromium and Node.js to build the app.
\n
\n
\n
Cross-platform.\n
\n
LightGallery works across operating systems. You can use it on OS X, Windows, or Linux.
\n
\n
\n
20+ Animations\n
\n
LightGallery comes with numerous number of beautiful in-built animations.
\n
\n
\n
Animated thumbnails\n
\n
You also have the option to enable animated thumbnails from the settings.
\n
\n
\n
Zoom & Fullscreen\n
\n
You can double-click on the image to see its actual size. Zoom-in and zoom-out controls can be used for changing the zoom values of the image.
\n
\n
\n
Mouse Drag & keyboard Navigations\n
\n
LightGallery allows users to navigate between slides via mouse drag and keyboard arrows.
\n
\n
\n
Pagers
\n
Auto slideshow
\n
Support various kind of image formats (jpg, png, gif, webp).
\n
Highly customizable
\n
And many more.
\n
\n
Watch ⭐ this repository. More features are coming
\n
Settings
\n
\n\n
\n
Name
\n
Default
\n
Description
\n
\n\n\n
\n
mode
\n
'lg-slide'
\n
Type of transition between images. lightGallery comes with lots of transition effects such as 'lg-slide', 'lg-fade', 'lg-zoom-in', 'lg-zoom-in-big', 'lg-zoom-out', 'lg-zoom-out-big', 'lg-zoom-out-in', 'lg-zoom-in-out', 'lg-soft-zoom', 'lg-scale-up', 'lg-slide-circular', 'lg-slide-circular-vertical', 'lg-slide-vertical', 'lg-slide-vertical-growth', 'lg-slide-skew-only', 'lg-slide-skew-only-rev', 'lg-slide-skew-only-y', 'lg-slide-skew-only-y-rev', 'lg-slide-skew', 'lg-slide-skew-rev', 'lg-slide-skew-cross', 'lg-slide-skew-cross-rev', 'lg-slide-skew-ver', 'lg-slide-skew-ver-rev', 'lg-slide-skew-ver-cross', 'lg-slide-skew-ver-cross-rev', 'lg-lollipop', 'lg-lollipop-rev', 'lg-rotate', 'lg-rotate-rev', 'lg-tube'
\n
\n
\n
cssEasing
\n
'ease'
\n
Type of easing to be used for animations
\n
\n
\n
speed
\n
600
\n
Transition duration (in ms).
\n
\n
\n
hideBarsDelay
\n
6000
\n
Delay for hiding gallery controls in ms
\n
\n
\n
useLeft
\n
false
\n
force lightgallery to use css left property instead of transform.
\n
\n
\n
closable
\n
true
\n
allows clicks on dimmer to close gallery.
\n
\n
\n
loop
\n
true
\n
If false, will disable the ability to loop back to the beginning of the gallery when on the last element.
\n
\n
\n
keyPress
\n
true
\n
Enable keyboard navigation
\n
\n
\n
controls
\n
true
\n
If false, prev/next buttons will not be displayed.
\n
\n
\n
slideEndAnimatoin
\n
true
\n
Enable slideEnd animation
\n
\n
\n
hideControlOnEnd
\n
false
\n
If true, prev/next button will be hidden on first/last image.
\n
\n
\n
mousewheel
\n
true
\n
Change slide on mousewheel
\n
\n
\n
preload
\n
1
\n
Number of preload slides. will exicute only after the current slide is fully loaded. ex:// you clicked on 4th image and if preload = 1 then 3rd slide and 5th slide will be loaded in the background after the 4th slide is fully loaded.. if preload is 2 then 2nd 3rd 5th 6th slides will be preloaded
\n
\n
\n
showAfterLoad
\n
true
\n
Show Content once it is fully loaded
\n
\n
\n
counter
\n
true
\n
Whether to show total number of images and index number of currently displayed image.
\n
\n
\n
swipeThreshold
\n
50
\n
By setting the swipeThreshold (in px) you can set how far the user must swipe for the next/prev image.
\n
\n
\n
enableDrag
\n
true
\n
Enables desktop mouse drag support
\n
\n
\n
thumbnail
\n
true
\n
Enable thumbnails for the gallery
\n
\n
\n
animateThumb
\n
true
\n
Enable thumbnail animation.
\n
\n
\n
currentPagerPosition
\n
'middle'
\n
Position of selected thumbnail. 'left' or 'middle' or 'right'
\n
\n
\n
thumbWidth
\n
100
\n
Width of each thumbnails.
\n
\n
\n
thumbContHeight
\n
100
\n
Height of the thumbnail container including padding and border
\n
\n
\n
thumbMargin
\n
5
\n
Spacing between each thumbnails
\n
\n
\n
toogleThumb
\n
true
\n
Whether to display thumbnail toggle button.
\n
\n
\n
enableThumbDrag
\n
true
\n
Enables desktop mouse drag support for thumbnails.
\n
\n
\n
swipeThreshold
\n
50
\n
By setting the swipeThreshold (in px) you can set how far the user must swipe for the next/prev slide.
\n
\n
\n
autoplay
\n
true
\n
Enable gallery autoplay
\n
\n
\n
pause
\n
5000
\n
The time (in ms) between each auto transition.
\n
\n
\n
progressBar
\n
true
\n
Enable autoplay progress bar
\n
\n
\n
fourceAutoplay
\n
false
\n
If false autoplay will be stopped after first user action
\n
\n
\n
autoplayControls
\n
true
\n
Show/hide autoplay controls.
\n
\n
\n
pager
\n
true
\n
Enable/Disable pager
\n
\n
\n
zoom
\n
true
\n
Enable/Disable zoom option
\n
\n
\n
scale
\n
1
\n
Value of zoom should be incremented/decremented
\n
\n\n
\n
Development
\n
Project's folders
\n
\n
app - code of your application goes here.
\n
config - place for you to declare environment specific stuff.
\n
build - in this folder lands built, runnable application.
\n
releases - ready for distribution installers will land here.
\n
resources - resources for particular operating system.
\n
tasks - build and development environment scripts.
\n
\n
Installation
\n
npm install\n
\n
It will also download Electron runtime, and install dependencies for second package.json file inside app folder.
\n
Starting the app
\n
npm start\n
\n
Making a release
\n
To make ready for distribution installer use command:
\n
npm run release\n
\n
It will start the packaging process for the operating system you are running this command on. The file which is ready for distribution will be outputted to releases directory.
\n
You can create Windows installer only when running on Windows, the same is true for Linux and OSX. So to generate all three installers you need all three operating systems.
An easy, distraction-free way to record your thoughts, declutter your mind and keep the things you want to remember. We all only have so much room in our brains for things. Let Linked be the place to put something you want to remember and let you free up space for deeper thinking.
Make sure to follow @uselinked on twitter to get the latest news about the project or feel free to check github discussions.
\n
",
"readmeOriginal": "
\n
\n
Daily journaling without distraction
\n
An easy, distraction-free way to record your thoughts, declutter your mind and keep the things you want to remember. We all only have so much room in our brains for things. Let Linked be the place to put something you want to remember and let you free up space for deeper thinking.
Local Mock Server is a simple tool for creating mock server locally. With this you can create number of mock api's by configuring request method, request path, response status and JSON response body
\n
This app spins up a server locally and saves all the JSON data locally on your system(on Desktop)
\n
Uses
\n
\n
Before integrating with the real api, front-end developers can create a mock server to simulate each endpoint and its corresponding response body and also response status
\n
Helps in reducing the dependency of UI team with the server team
\n
\n
ScreenShots
\n
\n
\n
Creating new Mock API\n
\n
\n
\n
Editing Mock API\n
\n
\n
\n
JSON Viewer\n
\n
\n
\n
",
"readmeOriginal": "
Local Mock Server
\n
Local Mock Server is a simple tool for creating mock server locally. With this you can create number of mock api's by configuring request method, request path, response status and JSON response body
\n
This app spins up a server locally and saves all the JSON data locally on your system(on Desktop)
\n
Uses
\n
\n
Before integrating with the real api, front-end developers can create a mock server to simulate each endpoint and its corresponding response body and also response status
\n
Helps in reducing the dependency of UI team with the server team
Welcome to the official component library for Local!
\n
What's included in this component library?
\n
We appreciate curious minds and that's a great question!\nTake a quick look at our living component documentation here.
\n
In additional to a quickly growing set of React components, we also have SVGs, SASS partials, and more to come!
\n
Installation
\n\n
Clone and pull down the latest from the repo
\n
Install dependencies using yarn
\n\n
Storybook
\n
The quickest way to work on local-components is to leverage Storybook. Storybook is a\nlocal development area that works well with React components and supports hot-module reloading.
\n
To start Storybook, run yarn storybook.
\n
Developing within Local
\n
If you wish to work on local-components and see the changes within Local, you will need to do the following:
\n\n
First run yarn build in local-components
\n
Next run yarn link (only needed one time or after unlinking)
\n
Switch to flywheel-local
\n
Then run nps components.link (only needed one time or after unlinking)
\n
Finally run nps build.dev
\n
Start Local
\n
Make any necessary changes in local-components. Note, Local does not support hot-module reloading in all locations\nso refreshing the UI in Local (Cmd + R) will likely be necessary.
\n\n
Running both Storybook and Watch at the same time
\n
If you wish to run both Storybook and the watcher for Local at the same time, you can run yarn start. Note, this particular\nscript spawns two instances of Webpack and is very resource intensive.
\n
Digging deeper
\n
The local-components library can be broken down into 3 main parts:
These are the visual elements that make up both Local and its Add-ons.\nThere are currently 40+ React components in the library.\nEach component consists of a .tsx, index.js, README.md and optional .sass file.
\n
Try it out for yourself!
\n\n
Make changes to the internals of a component through its .tsx and .sass files (they should live reload)
\n
Play around with the examples found in the README.md files
Note: the entry point for all components and styles is index.ts.
\n
\n
Containers Wrapper
\n
Several components leverage the Container.tsx component to wrap their own implementation.\nContainer is a highly specialized component that can be toggled on (wraps contents in extra div) or toggled off (no extra div).\nIn addition, the Container wrapper adds convenience props that allow for easy one-off adjustments like adding 3px of margin without conflicting with the inner content's classes and styles.
\n
\n
Note: setting any of container's props will automatically toggle it on (disabled: false) thus wrapping the contents in the container wrapper.
\n
\n
Organization
\n
Components are organized by type. These type groups can be seen when running Storybook.
\n
Styles
\n
Suit CSS
\n
Naming is hard. And there's no perfect system.\nThat said, we have chosen Suit CSS for naming conventions.
\n
\n
Note: instead of dashes, local-components uses underscores due to a limitation of a legacy package.
\n
\n
CSS Modules
\n
The component library leverages CSS Modules to manage and scope styles.\nThese are considered local styles (not to be confused with the Local app 😉)\nScoped local styles are a beautiful thing that allow Local to isolate components, run Add-ons with multiple versions of local-components and avoid collisions.
\n
As wonderful as local styles are, there are instances where CSS needs to transcend a single component.\nFor that, we make use of global styles.\nGlobal styles should be familiar to most as that's what the web largely used for 20+ years.\nGlobal styles are intended to be used sparingly as they introduce a lot of challenges when scaling an app with a library of Add-ons and Environments.
\n
The following is an instance where a scoped component may use a combination of local and global styles to achieve a specific result:
\n
:global(.WindowsToolbar .DragRegion)
\n
This is something we try to avoid and are actively working to whittle down to the bare essentials.
\n
If you'd like to learn more about scoped styles, please check out CSS Modules here.
\n
SASS Partials, Mixins, and Functions
\n
There is an extensive sass system in use that many -- if not most -- components leverage.
\n
Partials
\n
If you search for the _partials directory, you will find variables, mixins, functions, and other shared resources.
\n
Variables
\n
If Local uses a color, it's defined as a variable within the _variables.scss file.\nIn addition, there are fonts, font sizes, font weights, and margin/padding preset values here.
\n
\n
Note: font sies and margin/padding uses t-shirt sizes to indicate relative sizing while adhering to strict design standards/values.
\n
\n
Themes
\n
Local has both light and dark modes. Since this impacts every single components, the _theme.scss file contains\nmixins that simplifies the implementation of these variations in a repeatable and predictable way.
\n
While you could leverage if-theme-light and if-theme-dark directly, most light/dark combinations follow a specific pattern and therefore have dedicated mixin.\nFor example, the theme-color-black-else-white mixin applies the color style of black (if light) otherwise white (if dark).\nAnother example, the theme-background-green-else-graydark mixin applies the background style of green (if light) otherwise graydark (if dark).
\n
\n
Note: light/dark mode styles are applied by toggling a class added to the html element (e.g. Theme__Light).
Welcome to the official component library for Local!
\n
What's included in this component library?
\n
We appreciate curious minds and that's a great question!\nTake a quick look at our living component documentation here.
\n
In additional to a quickly growing set of React components, we also have SVGs, SASS partials, and more to come!
\n
Installation
\n\n
Clone and pull down the latest from the repo
\n
Install dependencies using yarn
\n\n
Storybook
\n
The quickest way to work on local-components is to leverage Storybook. Storybook is a\nlocal development area that works well with React components and supports hot-module reloading.
\n
To start Storybook, run yarn storybook.
\n
Developing within Local
\n
If you wish to work on local-components and see the changes within Local, you will need to do the following:
\n\n
First run yarn build in local-components
\n
Next run yarn link (only needed one time or after unlinking)
\n
Switch to flywheel-local
\n
Then run nps components.link (only needed one time or after unlinking)
\n
Finally run nps build.dev
\n
Start Local
\n
Make any necessary changes in local-components. Note, Local does not support hot-module reloading in all locations\nso refreshing the UI in Local (Cmd + R) will likely be necessary.
\n\n
Running both Storybook and Watch at the same time
\n
If you wish to run both Storybook and the watcher for Local at the same time, you can run yarn start. Note, this particular\nscript spawns two instances of Webpack and is very resource intensive.
\n
Digging deeper
\n
The local-components library can be broken down into 3 main parts:
These are the visual elements that make up both Local and its Add-ons.\nThere are currently 40+ React components in the library.\nEach component consists of a .tsx, index.js, README.md and optional .sass file.
\n
Try it out for yourself!
\n\n
Make changes to the internals of a component through its .tsx and .sass files (they should live reload)
\n
Play around with the examples found in the README.md files
Note: the entry point for all components and styles is index.ts.
\n
\n
Containers Wrapper
\n
Several components leverage the Container.tsx component to wrap their own implementation.\nContainer is a highly specialized component that can be toggled on (wraps contents in extra div) or toggled off (no extra div).\nIn addition, the Container wrapper adds convenience props that allow for easy one-off adjustments like adding 3px of margin without conflicting with the inner content's classes and styles.
\n
\n
Note: setting any of container's props will automatically toggle it on (disabled: false) thus wrapping the contents in the container wrapper.
\n
\n
Organization
\n
Components are organized by type. These type groups can be seen when running Storybook.
\n
Styles
\n
Suit CSS
\n
Naming is hard. And there's no perfect system.\nThat said, we have chosen Suit CSS for naming conventions.
\n
\n
Note: instead of dashes, local-components uses underscores due to a limitation of a legacy package.
\n
\n
CSS Modules
\n
The component library leverages CSS Modules to manage and scope styles.\nThese are considered local styles (not to be confused with the Local app 😉)\nScoped local styles are a beautiful thing that allow Local to isolate components, run Add-ons with multiple versions of local-components and avoid collisions.
\n
As wonderful as local styles are, there are instances where CSS needs to transcend a single component.\nFor that, we make use of global styles.\nGlobal styles should be familiar to most as that's what the web largely used for 20+ years.\nGlobal styles are intended to be used sparingly as they introduce a lot of challenges when scaling an app with a library of Add-ons and Environments.
\n
The following is an instance where a scoped component may use a combination of local and global styles to achieve a specific result:
\n
:global(.WindowsToolbar .DragRegion)
\n
This is something we try to avoid and are actively working to whittle down to the bare essentials.
\n
If you'd like to learn more about scoped styles, please check out CSS Modules here.
\n
SASS Partials, Mixins, and Functions
\n
There is an extensive sass system in use that many -- if not most -- components leverage.
\n
Partials
\n
If you search for the _partials directory, you will find variables, mixins, functions, and other shared resources.
\n
Variables
\n
If Local uses a color, it's defined as a variable within the _variables.scss file.\nIn addition, there are fonts, font sizes, font weights, and margin/padding preset values here.
\n
\n
Note: font sies and margin/padding uses t-shirt sizes to indicate relative sizing while adhering to strict design standards/values.
\n
\n
Themes
\n
Local has both light and dark modes. Since this impacts every single components, the _theme.scss file contains\nmixins that simplifies the implementation of these variations in a repeatable and predictable way.
\n
While you could leverage if-theme-light and if-theme-dark directly, most light/dark combinations follow a specific pattern and therefore have dedicated mixin.\nFor example, the theme-color-black-else-white mixin applies the color style of black (if light) otherwise white (if dark).\nAnother example, the theme-background-green-else-graydark mixin applies the background style of green (if light) otherwise graydark (if dark).
\n
\n
Note: light/dark mode styles are applied by toggling a class added to the html element (e.g. Theme__Light).
\n The swiss army knife of lossless video/audio editing\n\t \n \n \n\t \n\t \n Thanks to all my supporters\n\t \n\t \n
\n\t \n\t \n
\n
LosslessCut aims to be the ultimate cross platform FFmpeg GUI for extremely fast and lossless operations on video, audio, subtitle and other related media files.\nThe main feature is lossless trimming and cutting of video and audio files, which is great for saving space by rough-cutting your large video files taken from a video camera, GoPro, drone, etc. It lets you quickly extract the good parts from your videos and discard many gigabytes of data without doing a slow re-encode and thereby losing quality. Or you can add a music or subtitle track to your video without needing to encode. Everything is extremely fast because it does an almost direct data copy, fueled by the awesome FFmpeg which does all the grunt work.
Convert a video or parts of it into X image files (not lossless)
\n
\n
Export cut times as YouTube Chapters
\n\n
Export with Merge and \"Create chapters from merged segments\" enabled
\n
Open the exported file and select \"Import chapters\" in the dialog
\n
File -> Export project -> YouTube Chapters
\n\n
Re-encode only the audio track, keeping the lossless video track
\n
First export each track as individual files. Then use Handbrake or similar to re-encode the audio file. Then use the Tools->Merge in LosslessCut to merge the original video stream with your Handbrake output (or drag it into your original LosslessCut video to include it as a new track.)
\n
Advanced multi-step workflows
\n
Tip: you can use LosslessCut in multiple passes in order to achieve separate trimming of individual tracks:
\n\n
Open a file an export all tracks as individual files
\n
Open the exported track files independently and cut them as desired
\n
Add the track back to the video and combine them to one output video
\n\n
Download
\n
If you want to support my continued work on LosslessCut, and you want the advantage of a secure and simple installation process with automatic updates, consider getting it from your favorite store:
\n
\n
If you prefer to download the executables manually, this will of course always be free:
If you find LosslessCut useful, I'm very thankful for donations.
\n
Difference between App Stores and Github download
\n
They have exactly the same in-app features, except for a few platform limitations. Apple doesn't allow opening VOB files with App Store apps. Apple App Store apps need to prompt for output directory. LosslessCut version in the App Stores is a few versions behind the GitHub version, because I want to be sure that the new versions work perfectly before releasing in the App Stores. GitHub version can contain new, untested features and may contain some bugs. I consider the newest GitHub versions to be a public \"beta\" test.
\n
Supported formats
\n
Since LosslessCut is based on Chromium and uses the HTML5 video player, not all FFmpeg supported formats will be supported smoothly.\nThe following formats/codecs should generally work: MP4, MOV, WebM, MKV, OGG, WAV, MP3, AAC, H264, Theora, VP8, VP9\nFor more information about supported formats / codecs, see https://www.chromium.org/audio-video.
\n
Unsupported files can still be converted to a supported format/codec from the File menu. (Try the \"fastest\" option first.) A low quality version of the file (with/without audio) will then be created and opened in the player. The actual cut/export operation will still be performed on the original file, so it will be lossless. This allows for potentially opening any file that FFmpeg is able to decode.
Your video here? If you would like to make a video showing off LosslessCut use cases, let me know and I can link it here!
\n
\n
\n
Typical workflow
\n
\n
Drag drop a video file into player or use ⌘/CTRL+O.
\n
Press SPACE to play/pause or ◀▶, ,. or mouse/trackpad wheel to seek back/forth.
\n
Select the cut segment's start and end time by moving the time marker and then pressing I to set start time, and O to set end time.\n
\n
Note that all segments you create will be preserved and exported as new files. You can change this behavior with the Yin Yang symbol ☯️, in which case it will instead remove all selected segments and export the parts between segments.
\n
Note also that start times will not be accurate, see Known issues
\n
\n
\n
(optional) If you want to add more than one segment, move to the desired start time and press +, then select the next segment start/end times with I/O.
\n
(optional) If you want to re-merge all the selected segments into one file after cutting, toggle the button Separate files to Merge cuts.
\n
(optional) If you want to export to a certain output folder, press the Working dir unset button (default: Input file folder)
\n
(optional) If you want to change orientation, press the rotation button
\n
(optional) By default, audio, video and subtitle tracks from the input file will be cut and exported. Press the Tracks button to customise and/or add new tracks from other files.
\n
(optional) select a new output format
\n
(optional) In the right-hand segments panel, right click a segment for options, or drag-drop to reorder. Segments will appear in this order in the merged output.
\n
When done, press the Export button (or E) to show an overview with export options.
\n
(optional) adjust any export options
\n
Then press Export again to confirm the export
\n
Press the Camera button (or C) if you want to take a JPEG/PNG snapshot from the current time
\n
If you want to move the original file to trash, press the trash button
\n
For best results you may need to trial and error with another output format (Matroska takes nearly everything), change keyframe cut mode or disable some tracks (see known issues below).
\n
Press H to view help and all keyboard shortcuts.
\n
Note: The original video file will not be modified. Instead, a file is created file in the same directory as the original file with from/to timestamps in the file name.
\n
\n
Known issues & limitations
\n
\n
Cutting times are not accurate! Start cut time will be \"rounded\" to the nearest previous keyframe. This means that you often have move the start cut time to few frames after the desired keyframe.\n
\n
Lossless cutting is not an exact science. For some codecs, it just works. For others, you may need to trial and error depending on the codec, keyframes etc to get the best cut. See #330
\n
Your mileage may vary when it comes to Keyframe cut vs Normal cut. You may need to try both, depending on the video. ffmpeg also has documentation about these two seek/cut modes. Keyframe cut means -ssbefore-i and Normal cut means -ssafter-i.
\n
You may try to enable the new \"Smart cut\" mode. However it is very experimental and may not work for most files.
\n
\n
\n
When exporting you may lose some proprietary data tracks (like tmcd, fdsc and gpmd added by GoPro). These can however be losslessly exported to separate files.
\n
EXIF/metadata can be preserved (see Export Options dialog), but it doesn't always output compliant files, so use it carefully.
\n
Some codecs are not supported natively. There is partial support with low quality playback and no audio. You can convert to a supported codec from the File menu, see #88, however it may take some time.
\n
\n
Troubleshooting / FAQ
\n
\n
Windows: What's the difference between .exe and .zip downloads? .exe will self-extract on startup to a temp folder and is therefore slower to start up. .zip must be extracted manually but is very fast to start up.
\n
Windows: If you get an error when cutting or opening any kind of file, try to disable your anti-virus. See #18
\n
Windows: How to uninstall LosslessCut? There is no installer. Just delete the EXE file or containing folder. User files are stored in your appData folder.
\n
Linux: If you get an error like FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now., try to run it as ./lossless-cut --no-sandbox. See #258
\n
If any other problem, check Known issues, or please search for existing issues before you file an issue here on GitHub.
\n
If the app crashes immediately upon startup, check the permissions of your User and Temp folders, see 61.
\n
Completely white window when starting up? Try to run with --disable-gpu - See 781.
\n
\n
If you have an issue you can check the developer tools for any errors or clues. Menu: Tools -> Toggle Developer Tools
\n
CSV import/export
\n
\n
The CSV export/import function takes CSV files with one cut segment on each line. Each line contains three columns: segment start, segment end, label.
\n
segment start and segment end are expressed in seconds or left empty. Empty segment end means segment ends at the duration of the video.
\n
Use comma , to separate the fields (not semicolon ;)
\n
\n
example.csv
\n
,56.9568,First segment starting at 0\n70,842.33,\"Another quoted label\"\n1234,,Last segment\n
\n
Command line interface (CLI)
\n
Note that these exampels assume that you have set up LosslessCut in your PATH environment. Alternatively you can run it like this:
\n
# First navigate to the folder containing the LosslessCut app\ncd /path/to/directory/containing/app\n# On Linux:\n./LosslessCut arguments\n# On Windows:\n./LosslessCut.exe arguments\n# On MacOS:\n./LosslessCut.app/Contents/MacOS/LosslessCut arguments\n
\n
Open one or more files:
\n
LosslessCut file1.mp4 file2.mkv
\n
Override settings (experimental)
\n
See available settings. Note that this is subject to change in newer versions. ⚠️ If you specify incorrect values it could corrupt your configuration file. You may use JSON or JSON5:
This project is maintained by me alone. The project will always remain free and open source, but if it's useful for you, consider supporting me. :) It will give me extra motivation to improve it. Or even better donate to ffmpeg because they are doing the world a big favor 🙏
\n The swiss army knife of lossless video/audio editing\n\t \n \n \n\t \n\t \n Thanks to all my supporters\n\t \n\t \n
\n\t \n\t \n
\n
LosslessCut aims to be the ultimate cross platform FFmpeg GUI for extremely fast and lossless operations on video, audio, subtitle and other related media files.\nThe main feature is lossless trimming and cutting of video and audio files, which is great for saving space by rough-cutting your large video files taken from a video camera, GoPro, drone, etc. It lets you quickly extract the good parts from your videos and discard many gigabytes of data without doing a slow re-encode and thereby losing quality. Or you can add a music or subtitle track to your video without needing to encode. Everything is extremely fast because it does an almost direct data copy, fueled by the awesome FFmpeg which does all the grunt work.
Convert a video or parts of it into X image files (not lossless)
\n
\n
Export cut times as YouTube Chapters
\n\n
Export with Merge and \"Create chapters from merged segments\" enabled
\n
Open the exported file and select \"Import chapters\" in the dialog
\n
File -> Export project -> YouTube Chapters
\n\n
Re-encode only the audio track, keeping the lossless video track
\n
First export each track as individual files. Then use Handbrake or similar to re-encode the audio file. Then use the Tools->Merge in LosslessCut to merge the original video stream with your Handbrake output (or drag it into your original LosslessCut video to include it as a new track.)
\n
Advanced multi-step workflows
\n
Tip: you can use LosslessCut in multiple passes in order to achieve separate trimming of individual tracks:
\n\n
Open a file an export all tracks as individual files
\n
Open the exported track files independently and cut them as desired
\n
Add the track back to the video and combine them to one output video
\n\n
Download
\n
If you want to support my continued work on LosslessCut, and you want the advantage of a secure and simple installation process with automatic updates, consider getting it from your favorite store:
\n
\n
If you prefer to download the executables manually, this will of course always be free:
If you find LosslessCut useful, I'm very thankful for donations.
\n
Difference between App Stores and Github download
\n
They have exactly the same in-app features, except for a few platform limitations. Apple doesn't allow opening VOB files with App Store apps. Apple App Store apps need to prompt for output directory. LosslessCut version in the App Stores is a few versions behind the GitHub version, because I want to be sure that the new versions work perfectly before releasing in the App Stores. GitHub version can contain new, untested features and may contain some bugs. I consider the newest GitHub versions to be a public \"beta\" test.
\n
Supported formats
\n
Since LosslessCut is based on Chromium and uses the HTML5 video player, not all FFmpeg supported formats will be supported smoothly.\nThe following formats/codecs should generally work: MP4, MOV, WebM, MKV, OGG, WAV, MP3, AAC, H264, Theora, VP8, VP9\nFor more information about supported formats / codecs, see https://www.chromium.org/audio-video.
\n
Unsupported files can still be converted to a supported format/codec from the File menu. (Try the \"fastest\" option first.) A low quality version of the file (with/without audio) will then be created and opened in the player. The actual cut/export operation will still be performed on the original file, so it will be lossless. This allows for potentially opening any file that FFmpeg is able to decode.
Your video here? If you would like to make a video showing off LosslessCut use cases, let me know and I can link it here!
\n
\n
\n
Typical workflow
\n
\n
Drag drop a video file into player or use ⌘/CTRL+O.
\n
Press SPACE to play/pause or ◀▶, ,. or mouse/trackpad wheel to seek back/forth.
\n
Select the cut segment's start and end time by moving the time marker and then pressing I to set start time, and O to set end time.\n
\n
Note that all segments you create will be preserved and exported as new files. You can change this behavior with the Yin Yang symbol ☯️, in which case it will instead remove all selected segments and export the parts between segments.
\n
Note also that start times will not be accurate, see Known issues
\n
\n
\n
(optional) If you want to add more than one segment, move to the desired start time and press +, then select the next segment start/end times with I/O.
\n
(optional) If you want to re-merge all the selected segments into one file after cutting, toggle the button Separate files to Merge cuts.
\n
(optional) If you want to export to a certain output folder, press the Working dir unset button (default: Input file folder)
\n
(optional) If you want to change orientation, press the rotation button
\n
(optional) By default, audio, video and subtitle tracks from the input file will be cut and exported. Press the Tracks button to customise and/or add new tracks from other files.
\n
(optional) select a new output format
\n
(optional) In the right-hand segments panel, right click a segment for options, or drag-drop to reorder. Segments will appear in this order in the merged output.
\n
When done, press the Export button (or E) to show an overview with export options.
\n
(optional) adjust any export options
\n
Then press Export again to confirm the export
\n
Press the Camera button (or C) if you want to take a JPEG/PNG snapshot from the current time
\n
If you want to move the original file to trash, press the trash button
\n
For best results you may need to trial and error with another output format (Matroska takes nearly everything), change keyframe cut mode or disable some tracks (see known issues below).
\n
Press H to view help and all keyboard shortcuts.
\n
Note: The original video file will not be modified. Instead, a file is created file in the same directory as the original file with from/to timestamps in the file name.
\n
\n
Known issues & limitations
\n
\n
Cutting times are not accurate! Start cut time will be \"rounded\" to the nearest previous keyframe. This means that you often have move the start cut time to few frames after the desired keyframe.\n
\n
Lossless cutting is not an exact science. For some codecs, it just works. For others, you may need to trial and error depending on the codec, keyframes etc to get the best cut. See #330
\n
Your mileage may vary when it comes to Keyframe cut vs Normal cut. You may need to try both, depending on the video. ffmpeg also has documentation about these two seek/cut modes. Keyframe cut means -ssbefore-i and Normal cut means -ssafter-i.
\n
You may try to enable the new \"Smart cut\" mode. However it is very experimental and may not work for most files.
\n
\n
\n
When exporting you may lose some proprietary data tracks (like tmcd, fdsc and gpmd added by GoPro). These can however be losslessly exported to separate files.
\n
EXIF/metadata can be preserved (see Export Options dialog), but it doesn't always output compliant files, so use it carefully.
\n
Some codecs are not supported natively. There is partial support with low quality playback and no audio. You can convert to a supported codec from the File menu, see #88, however it may take some time.
\n
\n
Troubleshooting / FAQ
\n
\n
Windows: What's the difference between .exe and .zip downloads? .exe will self-extract on startup to a temp folder and is therefore slower to start up. .zip must be extracted manually but is very fast to start up.
\n
Windows: If you get an error when cutting or opening any kind of file, try to disable your anti-virus. See #18
\n
Windows: How to uninstall LosslessCut? There is no installer. Just delete the EXE file or containing folder. User files are stored in your appData folder.
\n
Linux: If you get an error like FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now., try to run it as ./lossless-cut --no-sandbox. See #258
\n
If any other problem, check Known issues, or please search for existing issues before you file an issue here on GitHub.
\n
If the app crashes immediately upon startup, check the permissions of your User and Temp folders, see 61.
\n
Completely white window when starting up? Try to run with --disable-gpu - See 781.
\n
\n
If you have an issue you can check the developer tools for any errors or clues. Menu: Tools -> Toggle Developer Tools
\n
CSV import/export
\n
\n
The CSV export/import function takes CSV files with one cut segment on each line. Each line contains three columns: segment start, segment end, label.
\n
segment start and segment end are expressed in seconds or left empty. Empty segment end means segment ends at the duration of the video.
\n
Use comma , to separate the fields (not semicolon ;)
\n
\n
example.csv
\n
,56.9568,First segment starting at 0\n70,842.33,\"Another quoted label\"\n1234,,Last segment\n
\n
Command line interface (CLI)
\n
Note that these exampels assume that you have set up LosslessCut in your PATH environment. Alternatively you can run it like this:
\n
# First navigate to the folder containing the LosslessCut app\ncd /path/to/directory/containing/app\n# On Linux:\n./LosslessCut arguments\n# On Windows:\n./LosslessCut.exe arguments\n# On MacOS:\n./LosslessCut.app/Contents/MacOS/LosslessCut arguments\n
\n
Open one or more files:
\n
LosslessCut file1.mp4 file2.mkv
\n
Override settings (experimental)
\n
See available settings. Note that this is subject to change in newer versions. ⚠️ If you specify incorrect values it could corrupt your configuration file. You may use JSON or JSON5:
This project is maintained by me alone. The project will always remain free and open source, but if it's useful for you, consider supporting me. :) It will give me extra motivation to improve it. Or even better donate to ffmpeg because they are doing the world a big favor 🙏
Do you have a lot of things and you don't know where it is or if you have it at all?\nJust manage your things digitally, as individual as each thing is itself!
Do you have a lot of things and you don't know where it is or if you have it at all?\nJust manage your things digitally, as individual as each thing is itself!
You can download the latest release from Lisk.com. The link automatically detects your operating system and downloads the correct app. Currently we are supporting the following operating systems:
\n
\n
MacOS (individual builds for Apple Silicon and Intel chips)
Basier Circle and Gilroy used in the production version are commercial fonts. This repository only contains open fonts and uses Open Sans as a replacement for the commercial ones.
\n
If you have licensed copies of Basier Circle and Gilroy, you can add them to fonts folder. If you don't have the fonts, you need to remove lines 25 - 81 of type.css. After that, the build and dev npm scripts run without any errors.
\n
Setup environment
\n
The development environment currently depends on Node.js version 16 (lts/gallium). The below instructions assume nvm is being used to manage Node.js versions.
\n
Note:\nFor Windows users, make sure to set the correct msvs_version config for installing and packing the Lisk Desktop application.
\n
git clone https://github.com/LiskHQ/lisk-desktop.git\ncd lisk-desktop\nnvm install lts/erbium\nnpm ci\nnpm run dev\n
If you are actively developing in a specific route, and want to be automatically signed in every time you reload the page, please add the following input pairs to your localStorage:
\n
loginKey: a valid passphrase
\n
Add the above pair using the storage tab in your dev tools or via JavaScript command:
\n
localStorage.setItem('loginKey', 'wagon stock borrow episode laundry kitten salute link globe zero feed marble') // desired account passphrase\n
\n
When developing with hardware wallet, this will sign you in using the first account on the first connected hardware wallet:
You can use the same approach to define a desired network to which Lisk Desktop connects:
\n
localStorage.setItem('liskServiceUrl', 'http://localhost:4000') // desired node to log in into\n
\n
Build
\n
Production build
\n
To build the project simply run
\n
npm run build\n
\n
Under the hood, this script runs
\n
npm run build:prod\n
\n
to build the React app under src/ and
\n
npm run build:electron\n
\n
to build the electron app under app/ using webpack. You can run the above scripts individually if you're looking to see the changes solely on one of the two said applications.
\n
Run Electron
\n
If you have already built the application as described above, you can launch Electron using
\n
npm run start\n
\n
Run with parameters
\n
To launch a version which supports hardware wallets, you can run
\n
npm run dev:hw\n
\n
or to launch electron and receive live updates from already running webpack-dev-server on port 8080 and you can run
\n
LISK_DESKTOP_URL=\"http://localhost:8080\" DEBUG=true npm run start\n
\n
This comes with Redux dev tools.
\n
Distribution
\n
Windows
\n
Build package for Windows (on Windows in Git BASH).
├── __mocks__/ # Modules used to mock dependencies for testing purpose.\n├── .storybook/ # React storybooks reside here.\n├── app/ # Electron based application that launces the react app.\n├── build/ # Build specific materials.\n├── config/ # Automation scripts (Webpack configurations, i18n scanner, etc)\n├── coverage/ # Results of Jest test coverage.\n├── dist/ # Platform specific built outputs.\n├── docs/ # Project documentations such as contribution guides and development guidelines.\n├── i18n/ # Localization files inluding setup scripts and translation json files.\n├── libs/ # Modules which can be consumed individually in other projects.\n├── node_modules/ # 3rd-party libraries and utilities.\n├── src/ # Application source code.\n│ ├── app/ # The bootstrap React application\n│ ├── assets/ # Static files (images, fonts, etc)\n│ ├── components/ # React presentational components are located here.\n│ │ ├── screens/ # These are the component that represent screens with dedicated URL.\n│ │ ├── shared/ # These are the React components used at least in 2 other components (calendar, liskAmount, etc)\n│ │ └── toolbox/ # Basic elements with basic styles and functionality which are used in numerous places (button, input, etc)\n│ ├── constants/ # Names, addresses, static configurations and other values used throughout the application\n│ ├── context/ # React context configuration files\n│ ├── hooks/ # React custom hooks\n│ ├── store/ # Redux store resides here.\n│ │ ├── actions/ # Store actions reside here and are broken into script files dedicated to each system entity.\n│ │ ├── middlewares/ # All the Redux middlewares are places here and have their dedicated script files based on the system entities.\n│ │ ├── reducers/ # Redux reducers are located here. similar to actions and reducers, they are placed in script files named after the entity they represent.\n│ ├── utils/ # Utility functions\n└──test/ # E2E tests written with Cypress.io and Cucumber; also some helpers used by unit test that live in /src\n
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
\n
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You can download the latest release from Lisk.com. The link automatically detects your operating system and downloads the correct app. Currently we are supporting the following operating systems:
\n
\n
MacOS (individual builds for Apple Silicon and Intel chips)
Basier Circle and Gilroy used in the production version are commercial fonts. This repository only contains open fonts and uses Open Sans as a replacement for the commercial ones.
\n
If you have licensed copies of Basier Circle and Gilroy, you can add them to fonts folder. If you don't have the fonts, you need to remove lines 25 - 81 of type.css. After that, the build and dev npm scripts run without any errors.
\n
Setup environment
\n
The development environment currently depends on Node.js version 16 (lts/gallium). The below instructions assume nvm is being used to manage Node.js versions.
\n
Note:\nFor Windows users, make sure to set the correct msvs_version config for installing and packing the Lisk Desktop application.
\n
git clone https://github.com/LiskHQ/lisk-desktop.git\ncd lisk-desktop\nnvm install lts/erbium\nnpm ci\nnpm run dev\n
If you are actively developing in a specific route, and want to be automatically signed in every time you reload the page, please add the following input pairs to your localStorage:
\n
loginKey: a valid passphrase
\n
Add the above pair using the storage tab in your dev tools or via JavaScript command:
\n
localStorage.setItem('loginKey', 'wagon stock borrow episode laundry kitten salute link globe zero feed marble') // desired account passphrase\n
\n
When developing with hardware wallet, this will sign you in using the first account on the first connected hardware wallet:
You can use the same approach to define a desired network to which Lisk Desktop connects:
\n
localStorage.setItem('liskServiceUrl', 'http://localhost:4000') // desired node to log in into\n
\n
Build
\n
Production build
\n
To build the project simply run
\n
npm run build\n
\n
Under the hood, this script runs
\n
npm run build:prod\n
\n
to build the React app under src/ and
\n
npm run build:electron\n
\n
to build the electron app under app/ using webpack. You can run the above scripts individually if you're looking to see the changes solely on one of the two said applications.
\n
Run Electron
\n
If you have already built the application as described above, you can launch Electron using
\n
npm run start\n
\n
Run with parameters
\n
To launch a version which supports hardware wallets, you can run
\n
npm run dev:hw\n
\n
or to launch electron and receive live updates from already running webpack-dev-server on port 8080 and you can run
\n
LISK_DESKTOP_URL=\"http://localhost:8080\" DEBUG=true npm run start\n
\n
This comes with Redux dev tools.
\n
Distribution
\n
Windows
\n
Build package for Windows (on Windows in Git BASH).
├── __mocks__/ # Modules used to mock dependencies for testing purpose.\n├── .storybook/ # React storybooks reside here.\n├── app/ # Electron based application that launces the react app.\n├── build/ # Build specific materials.\n├── config/ # Automation scripts (Webpack configurations, i18n scanner, etc)\n├── coverage/ # Results of Jest test coverage.\n├── dist/ # Platform specific built outputs.\n├── docs/ # Project documentations such as contribution guides and development guidelines.\n├── i18n/ # Localization files inluding setup scripts and translation json files.\n├── libs/ # Modules which can be consumed individually in other projects.\n├── node_modules/ # 3rd-party libraries and utilities.\n├── src/ # Application source code.\n│ ├── app/ # The bootstrap React application\n│ ├── assets/ # Static files (images, fonts, etc)\n│ ├── components/ # React presentational components are located here.\n│ │ ├── screens/ # These are the component that represent screens with dedicated URL.\n│ │ ├── shared/ # These are the React components used at least in 2 other components (calendar, liskAmount, etc)\n│ │ └── toolbox/ # Basic elements with basic styles and functionality which are used in numerous places (button, input, etc)\n│ ├── constants/ # Names, addresses, static configurations and other values used throughout the application\n│ ├── context/ # React context configuration files\n│ ├── hooks/ # React custom hooks\n│ ├── store/ # Redux store resides here.\n│ │ ├── actions/ # Store actions reside here and are broken into script files dedicated to each system entity.\n│ │ ├── middlewares/ # All the Redux middlewares are places here and have their dedicated script files based on the system entities.\n│ │ ├── reducers/ # Redux reducers are located here. similar to actions and reducers, they are placed in script files named after the entity they represent.\n│ ├── utils/ # Utility functions\n└──test/ # E2E tests written with Cypress.io and Cucumber; also some helpers used by unit test that live in /src\n
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
\n
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
MagicCap is a image/GIF capture suite for Mac and Linux. You can get a precompiled copy from the releases page of this GitHub page. It has the following features:
\n
\n
Very cross compatible. You should get the same experience on Mac and Linux.
\n
Very easy to add to. You don't need to faff around with modifying HTML; instead you write a small file that includes all of the config options and the upload script (most of this is handled by capture.js anyway).
\n
Very fast. Captures are optimised to be as fast as possible.
\n
Very flexible. You can choose to upload to whatever service you want to or just save the file.
\n
Very functional. Want to capture a GIF? No problem. Want to blur a screenshot? No problem. MagicCap is there to help you with whatever you want.
MagicCap supports the following uploaders (this list will expand over time):
\n
\n
Custom HTTP POST
\n
elixi.re
\n
Passive (S)FTP
\n
Pomf
\n
imgur
\n
Lunus
\n
i.magiccap
\n
reUpload
\n
Ultrashare
\n
S3 (Amazon and other S3-compatible providers)
\n
ShareX (upload only)
\n
\n
Credit
\n
The following people have done a ton to help in the creation of MagicCap. If you have done something to help and want your name here, feel free to make a pull request. This is in alphabetical order, not the order of the work people have done:
\n
\n
Devon (Da532) - Made all of the branding.
\n
Harrison (AO554) - Helped us test for Mac.
\n
Jacob (Kelwing) - Helped with some Go towards the project.
\n
Jake (JakeMakesStuff) - Made the majority of the GUI/capture code for MagicCap.
\n
Jake (techfan36) - Helped us test for Linux.
\n
Matt (IPv4) - Refactored file naming, added random emoji & upload from clipboard.
\n
Rhys (SunburntRock89) - Helped me with the structure and fixing bugs. Also fixed FTP.
\n
Sam (REC) - Made the FTP logo.
\n
\n
Building
\n
In order to download needed packages, run npm i. This will get all of the needed packages. You can then run one of the following commands:
\n
\n
npm run maccompile - Compiles for Mac.
\n
npm run linuxcompile - Compiles for Linux.
\n
\n
Mac Note
\n
If you are on Mac, you'll need to download XCode.
\n
More Information
\n
For more information on installation/configuration and compiling, please refer to the documentation.
MagicCap is a image/GIF capture suite for Mac and Linux. You can get a precompiled copy from the releases page of this GitHub page. It has the following features:
\n
\n
Very cross compatible. You should get the same experience on Mac and Linux.
\n
Very easy to add to. You don't need to faff around with modifying HTML; instead you write a small file that includes all of the config options and the upload script (most of this is handled by capture.js anyway).
\n
Very fast. Captures are optimised to be as fast as possible.
\n
Very flexible. You can choose to upload to whatever service you want to or just save the file.
\n
Very functional. Want to capture a GIF? No problem. Want to blur a screenshot? No problem. MagicCap is there to help you with whatever you want.
MagicCap supports the following uploaders (this list will expand over time):
\n
\n
Custom HTTP POST
\n
elixi.re
\n
Passive (S)FTP
\n
Pomf
\n
imgur
\n
Lunus
\n
i.magiccap
\n
reUpload
\n
Ultrashare
\n
S3 (Amazon and other S3-compatible providers)
\n
ShareX (upload only)
\n
\n
Credit
\n
The following people have done a ton to help in the creation of MagicCap. If you have done something to help and want your name here, feel free to make a pull request. This is in alphabetical order, not the order of the work people have done:
\n
\n
Devon (Da532) - Made all of the branding.
\n
Harrison (AO554) - Helped us test for Mac.
\n
Jacob (Kelwing) - Helped with some Go towards the project.
\n
Jake (JakeMakesStuff) - Made the majority of the GUI/capture code for MagicCap.
\n
Jake (techfan36) - Helped us test for Linux.
\n
Matt (IPv4) - Refactored file naming, added random emoji & upload from clipboard.
\n
Rhys (SunburntRock89) - Helped me with the structure and fixing bugs. Also fixed FTP.
\n
Sam (REC) - Made the FTP logo.
\n
\n
Building
\n
In order to download needed packages, run npm i. This will get all of the needed packages. You can then run one of the following commands:
\n
\n
npm run maccompile - Compiles for Mac.
\n
npm run linuxcompile - Compiles for Linux.
\n
\n
Mac Note
\n
If you are on Mac, you'll need to download XCode.
\n
More Information
\n
For more information on installation/configuration and compiling, please refer to the documentation.
Mailspring is a new version of Nylas Mail maintained by one of the original authors. It's faster, leaner, and shipping today! It replaces the JavaScript sync code in Nylas Mail with a new C++ sync engine based on Mailcore2. It uses roughly half the RAM and CPU of Nylas Mail and idles with almost zero \"CPU Wakes\", which translates to great battery life. It also has an entirely revamped composer and other great new features.
\n
Mailspring's UI is open source (GPLv3) and written in TypeScript with Electron and React - it's built on a plugin architecture and was designed to be easy to extend. Check out CONTRIBUTING.md to get started!
\n
Mailspring's sync engine is spawned by the Electron application and runs locally on your computer. It is open source (GPLv3) and written in C++ and C. For convenience, however, when you set up your development environment, Mailspring uses the latest version of the sync engine we've shipped for your platform so you don't need to pull sources or install its compile-time dependencies.
\n
\n
Features
\n
Mailspring comes packed with powerful features like Unified Inbox, Snooze, Send\nLater, Mail Rules, Templates and more. Mailspring Pro, which you can unlock\nwith a monthly subscription, adds even more features for people who send a ton\nof email: link tracking, read receipts, mailbox analytics, contact and company\nprofiles. All of these features run in the client - Mailspring does not send\nyour email credentials to the cloud. For a full list of features, check out\ngetmailspring.com.
\n
Download Mailspring
\n
You can download compiled versions of Mailspring for Windows, Mac OS X, and\nLinux (deb, rpm and snap) from\nhttps://getmailspring.com/download.
\n
Getting Help
\n
You can find community-based help and discussion with other Mailspring users on our\nDiscourse community.
\n
Contributing
\n
Mailspring is entirely open-source. Pull requests and contributions are\nwelcome! There are three ways to contribute: building a plugin, building a\ntheme, and submitting pull requests to the project itself. When you're getting\nstarted, you may want to join our\nDiscourse so you can ask questions and\nlearn from other people doing development.
\n
\n
Running Mailspring from Source
\n
To install all dependencies and run Mailspring from its source code,\nrun the following commands from the root directory of the Mailspring repository:
\n
export npm_config_arch=x64 # If you are on an M1 / Apple Silicon Mac\nnpm install\nnpm start\n
\n
You can attach command line parameters by separating them using a double hyphen:
\n
npm start -- --help\n
\n
Building Mailspring
\n
To build Mailspring, you need to run the following command from the root directory\nof the Mailspring repository:
\n
npm run-script build\n
\n
Building A Plugin
\n
Plugins lie at the heart of Mailspring and give it its powerful features.\nBuilding your own plugins allows you to integrate the app with other tools,\nexperiment with new workflows, and more. Follow the Getting Started\nguide to write your first plugin in\nfive minutes.
A plugin \"store\" like the Chrome Web Store is coming soon, and will make it\neasy for other users to discover plugins you create. (Right now, users need to\n\"sideload\" the plugins into the app by downloading them and copying them into\nplace.)
\n
You can share and browse Mailspring Plugins, and discuss plugin development\nwith other developers, on our\nDiscourse.
\n
Building a Theme
\n
The Mailspring user interface is styled using CSS, which means it's easy to\nmodify and extend. Mailspring comes stock with a few beautiful themes, and\nthere are many more which have been built by community developers. To start\ncreating a theme, clone the theme starter!
You can share and browse Mailspring Themes, and discuss theme development with other developers, on our Discourse.
\n
Localizing / Translating
\n
Mailspring (1.5.0 and above) supports localization. If you're a fluent speaker of\nanother language, we'd love your help improving translations. Check out the\nLOCALIZATION\nguide for more information. You can discuss localization and translation with\nother developers on our Discourse.
\n
Contributing to Mailspring Core
\n
Pull requests are always welcome - check out\nCONTRIBUTING\nfor more information about setting up the development environment, running\ntests locally, and submitting pull requests.
\n
",
"readmeOriginal": "
💌 Mailspring
\n
\n
\n
Mailspring is a new version of Nylas Mail maintained by one of the original authors. It's faster, leaner, and shipping today! It replaces the JavaScript sync code in Nylas Mail with a new C++ sync engine based on Mailcore2. It uses roughly half the RAM and CPU of Nylas Mail and idles with almost zero \"CPU Wakes\", which translates to great battery life. It also has an entirely revamped composer and other great new features.
\n
Mailspring's UI is open source (GPLv3) and written in TypeScript with Electron and React - it's built on a plugin architecture and was designed to be easy to extend. Check out CONTRIBUTING.md to get started!
\n
Mailspring's sync engine is spawned by the Electron application and runs locally on your computer. It is open source (GPLv3) and written in C++ and C. For convenience, however, when you set up your development environment, Mailspring uses the latest version of the sync engine we've shipped for your platform so you don't need to pull sources or install its compile-time dependencies.
\n
\n
Features
\n
Mailspring comes packed with powerful features like Unified Inbox, Snooze, Send\nLater, Mail Rules, Templates and more. Mailspring Pro, which you can unlock\nwith a monthly subscription, adds even more features for people who send a ton\nof email: link tracking, read receipts, mailbox analytics, contact and company\nprofiles. All of these features run in the client - Mailspring does not send\nyour email credentials to the cloud. For a full list of features, check out\ngetmailspring.com.
\n
Download Mailspring
\n
You can download compiled versions of Mailspring for Windows, Mac OS X, and\nLinux (deb, rpm and snap) from\nhttps://getmailspring.com/download.
\n
Getting Help
\n
You can find community-based help and discussion with other Mailspring users on our\nDiscourse community.
\n
Contributing
\n
Mailspring is entirely open-source. Pull requests and contributions are\nwelcome! There are three ways to contribute: building a plugin, building a\ntheme, and submitting pull requests to the project itself. When you're getting\nstarted, you may want to join our\nDiscourse so you can ask questions and\nlearn from other people doing development.
\n
\n
Running Mailspring from Source
\n
To install all dependencies and run Mailspring from its source code,\nrun the following commands from the root directory of the Mailspring repository:
\n
export npm_config_arch=x64 # If you are on an M1 / Apple Silicon Mac\nnpm install\nnpm start\n
\n
You can attach command line parameters by separating them using a double hyphen:
\n
npm start -- --help\n
\n
Building Mailspring
\n
To build Mailspring, you need to run the following command from the root directory\nof the Mailspring repository:
\n
npm run-script build\n
\n
Building A Plugin
\n
Plugins lie at the heart of Mailspring and give it its powerful features.\nBuilding your own plugins allows you to integrate the app with other tools,\nexperiment with new workflows, and more. Follow the Getting Started\nguide to write your first plugin in\nfive minutes.
A plugin \"store\" like the Chrome Web Store is coming soon, and will make it\neasy for other users to discover plugins you create. (Right now, users need to\n\"sideload\" the plugins into the app by downloading them and copying them into\nplace.)
\n
You can share and browse Mailspring Plugins, and discuss plugin development\nwith other developers, on our\nDiscourse.
\n
Building a Theme
\n
The Mailspring user interface is styled using CSS, which means it's easy to\nmodify and extend. Mailspring comes stock with a few beautiful themes, and\nthere are many more which have been built by community developers. To start\ncreating a theme, clone the theme starter!
You can share and browse Mailspring Themes, and discuss theme development with other developers, on our Discourse.
\n
Localizing / Translating
\n
Mailspring (1.5.0 and above) supports localization. If you're a fluent speaker of\nanother language, we'd love your help improving translations. Check out the\nLOCALIZATION\nguide for more information. You can discuss localization and translation with\nother developers on our Discourse.
\n
Contributing to Mailspring Core
\n
Pull requests are always welcome - check out\nCONTRIBUTING\nfor more information about setting up the development environment, running\ntests locally, and submitting pull requests.
Luna was created with main purpose to provide a flexible and modern UI for npm dependencies management. You can install, update and uninstall packages using a user interface build on latest web technologies.
\n
Features
\n
\n
Manage global and local packages
\n
Search for new packages
\n
Install packages
\n
Update packages
\n
Uninstall packages
\n
Filter packages by name, group and outdated
\n
Preview package details (versions, statistics, dependencies and more)
\n
Get notifications for missing dependencies or extraneous packages
\n
\n
Screenshots
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
How it works
\n
The Renderer Process architecture:
\n
\n
Action (Event) driven nature
\n
The IO Management, Business Logic Management and Predictable Application State Management processors (middlewares)\nare subscribers of the application action stream.
\n
The IO Management and Business Logic Management are consumers and producers of actions.
\n
The Predictable State Management is just a consumer of actions
\n
The views are listeners of the predictable state and they are re rendered whenever the predictable state changes\nand they produce actions upon the user interaction (clicks)
\n
\n
\n
\n \n
\n
\n
Usage
\n
Install application's dependencies:
\n
npm install
\n
Start the application
\n
npm start
\n
Start the development server and run the application in development mode:
\n
npm run dev
\n
Binaries
\n
All binaries of the latest version are uploaded to the releases
\n
Tech Stack
\n
\n
Electron - 🛠 - 🐙 - Build cross-platform desktop apps with JavaScript, HTML, and CSS
\n
React - 🛠 - 🐙 - React is a JavaScript library for building user interfaces
\n
Redux - 🛠 - 🐙 - Predictable state container for JavaScript apps
\n
Webpack - 🛠️ - 🐙 - A static module bundler for modern JavaScript applications.
\n
Babel - 🛠️ - 🐙 - A JavaScript compiler; use next generation JavaScript, today.
Luna was created with main purpose to provide a flexible and modern UI for npm dependencies management. You can install, update and uninstall packages using a user interface build on latest web technologies.
\n
Features
\n
\n
Manage global and local packages
\n
Search for new packages
\n
Install packages
\n
Update packages
\n
Uninstall packages
\n
Filter packages by name, group and outdated
\n
Preview package details (versions, statistics, dependencies and more)
\n
Get notifications for missing dependencies or extraneous packages
\n
\n
Screenshots
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
How it works
\n
The Renderer Process architecture:
\n
\n
Action (Event) driven nature
\n
The IO Management, Business Logic Management and Predictable Application State Management processors (middlewares)\nare subscribers of the application action stream.
\n
The IO Management and Business Logic Management are consumers and producers of actions.
\n
The Predictable State Management is just a consumer of actions
\n
The views are listeners of the predictable state and they are re rendered whenever the predictable state changes\nand they produce actions upon the user interaction (clicks)
\n
\n
\n
\n \n
\n
\n
Usage
\n
Install application's dependencies:
\n
npm install
\n
Start the application
\n
npm start
\n
Start the development server and run the application in development mode:
\n
npm run dev
\n
Binaries
\n
All binaries of the latest version are uploaded to the releases
\n
Tech Stack
\n
\n
Electron - 🛠 - 🐙 - Build cross-platform desktop apps with JavaScript, HTML, and CSS
\n
React - 🛠 - 🐙 - React is a JavaScript library for building user interfaces
\n
Redux - 🛠 - 🐙 - Predictable state container for JavaScript apps
\n
Webpack - 🛠️ - 🐙 - A static module bundler for modern JavaScript applications.
\n
Babel - 🛠️ - 🐙 - A JavaScript compiler; use next generation JavaScript, today.
To clone and run this application, you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\n$ git clone https://github.com/amitmerchant1990/electron-markdownify\n\n# Go into the repository\n$ cd electron-markdownify\n\n# Install dependencies\n$ npm install\n\n# Run the app\n$ npm start
\n
Note: If you're using Linux Bash for Windows, see this guide or use node from the command prompt.
\n
Download
\n
You can download the latest installable version of Markdownify for Windows, macOS and Linux.
\n
Emailware
\n
Markdownify is an emailware. Meaning, if you liked using this app or it has helped you in any way, I'd like you send me an email at bullredeyes@gmail.com about anything you'd want to say about this software. I'd really appreciate it!
\n
Credits
\n
This software uses the following open source packages:
To clone and run this application, you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\n$ git clone https://github.com/amitmerchant1990/electron-markdownify\n\n# Go into the repository\n$ cd electron-markdownify\n\n# Install dependencies\n$ npm install\n\n# Run the app\n$ npm start
\n
Note: If you're using Linux Bash for Windows, see this guide or use node from the command prompt.
\n
Download
\n
You can download the latest installable version of Markdownify for Windows, macOS and Linux.
\n
Emailware
\n
Markdownify is an emailware. Meaning, if you liked using this app or it has helped you in any way, I'd like you send me an email at bullredeyes@gmail.com about anything you'd want to say about this software. I'd really appreciate it!
\n
Credits
\n
This software uses the following open source packages:
Mattermost is an open source platform for secure collaboration across the entire software development lifecycle. This repo is for the native desktop application that's built on Electron; it runs on Windows, Mac, and Linux.
\n
Originally created as \"electron-mattermost\" by Yuya Ochiai.
\n
\n
\n
Features
\n
Desktop integration
\n
\n
Server dropdown for access to multiple teams
\n
Dedicated tabs for Channels, Boards and Playbooks
\n
Desktop Notifications
\n
Badges for unread channels and mentions
\n
Deep Linking to open Mattermost links directly in the app
\n
Runs in background to reduce number of open windows
Launch Mattermost from your Applications folder, menu, or the unarchived folder.
\n
On the first launch, please enter a name and URL for your Mattermost server. For example, https://mattermost.example.com.
\n\n
Configuration
\n
You can show the dialog from menu bar.
\n
Configuration will be saved into Electron's userData directory:
\n
\n
%APPDATA%\\Mattermost on Windows
\n
~/Library/Application Support/Mattermost on OS X
\n
~/.config/Mattermost on Linux
\n
\n
A custom data directory location can be specified with:
\n
\n
Mattermost.exe --args --data-dir C:\\my-mattermost-data on Windows
\n
open /Applications/Mattermost.app/ --args --data-dir ~/my-mattermost-data/ on macOS
\n
./mattermost-desktop --args --data-dir ~/my-mattermost-data/ on Linux
\n
\n
Custom App Deployments
\n
Our docs provide a guide on how to customize and distribute your own Mattermost Desktop App, including how to distribute the official Windows Desktop App silently to end users, pre-configured with the server URL and other app settings.
\n
Development and Making Contributions
\n
Our developer guide has detailed information on how to set up your development environment, develop, and test changes to the Desktop App.
\n
",
"readmeOriginal": "
Mattermost Desktop
\n
Mattermost is an open source platform for secure collaboration across the entire software development lifecycle. This repo is for the native desktop application that's built on Electron; it runs on Windows, Mac, and Linux.
\n
Originally created as \"electron-mattermost\" by Yuya Ochiai.
\n
\n
\n
Features
\n
Desktop integration
\n
\n
Server dropdown for access to multiple teams
\n
Dedicated tabs for Channels, Boards and Playbooks
\n
Desktop Notifications
\n
Badges for unread channels and mentions
\n
Deep Linking to open Mattermost links directly in the app
\n
Runs in background to reduce number of open windows
Launch Mattermost from your Applications folder, menu, or the unarchived folder.
\n
On the first launch, please enter a name and URL for your Mattermost server. For example, https://mattermost.example.com.
\n\n
Configuration
\n
You can show the dialog from menu bar.
\n
Configuration will be saved into Electron's userData directory:
\n
\n
%APPDATA%\\Mattermost on Windows
\n
~/Library/Application Support/Mattermost on OS X
\n
~/.config/Mattermost on Linux
\n
\n
A custom data directory location can be specified with:
\n
\n
Mattermost.exe --args --data-dir C:\\my-mattermost-data on Windows
\n
open /Applications/Mattermost.app/ --args --data-dir ~/my-mattermost-data/ on macOS
\n
./mattermost-desktop --args --data-dir ~/my-mattermost-data/ on Linux
\n
\n
Custom App Deployments
\n
Our docs provide a guide on how to customize and distribute your own Mattermost Desktop App, including how to distribute the official Windows Desktop App silently to end users, pre-configured with the server URL and other app settings.
\n
Development and Making Contributions
\n
Our developer guide has detailed information on how to set up your development environment, develop, and test changes to the Desktop App.
massCode is open source project and completely free to use.
\n
However, the amount of effort needed to maintain and develop new features for the project is not sustainable without proper financial backing. You can support massCode development via the following methods:
\n
\n
\n\n\n
\n
\n
Overview
\n
The goal of creating this application was mostly my own growth as a developer. Also, I wanted this project to absorb the best of such applications already on the market (both free and paid). At the same time, I wanted this project to be an open source project.
\n
massCode allows you to organize snippets using multi-level folders as well as tags. Each snippet has fragments - tabs, which gives even greater level of organization
\n
A snippets manager must not only provide organization of snippets but also have a good code editor. That's why under the hood of massCode there's Monaco editor. Monaco is a modern code editor from Microsoft which is used in one of the most popular editor VS Code. The editor provides IntelliSense, validation for TypeScript, JavaScript, CSS, LESS, SCSS, JSON, HTML. It's also added a super productive Emmet and Prettier to code formatter.
\n
Development
\n
# install dependencies\nyarn\n# serve with hot reload\nyarn dev
massCode is open source project and completely free to use.
\n
However, the amount of effort needed to maintain and develop new features for the project is not sustainable without proper financial backing. You can support massCode development via the following methods:
\n
\n
\n\n\n
\n
\n
Overview
\n
The goal of creating this application was mostly my own growth as a developer. Also, I wanted this project to absorb the best of such applications already on the market (both free and paid). At the same time, I wanted this project to be an open source project.
\n
massCode allows you to organize snippets using multi-level folders as well as tags. Each snippet has fragments - tabs, which gives even greater level of organization
\n
A snippets manager must not only provide organization of snippets but also have a good code editor. That's why under the hood of massCode there's Monaco editor. Monaco is a modern code editor from Microsoft which is used in one of the most popular editor VS Code. The editor provides IntelliSense, validation for TypeScript, JavaScript, CSS, LESS, SCSS, JSON, HTML. It's also added a super productive Emmet and Prettier to code formatter.
\n
Development
\n
# install dependencies\nyarn\n# serve with hot reload\nyarn dev
\n 🔆 Next generation markdown editor 🌙 \n A simple and elegant open-source markdown editor that focused on speed and usability. \n Available for Linux, macOS and Windows.\n
\n This Markdown editor that could. Built with ❤︎ by\n Jocs and\n \n contributors\n \n .\n \n
\n \n
Supporting MarkText
\n
MarkText is an MIT licensed open source project, and the latest version will always be downloadable for free from the GitHub release page. MarkText is still in development, and its development is inseparable from all sponsors. I hope you join them:
What's the difference between Patreon and Open Collective?
\n
Patreon: Funds will be directly sponsored to Luo Ran (@jocs) who created MarkText and continues to maintain it.\nOpen Collective: All expenses are transparent. The funds will be used for the development and maintenance of MarkText, funding online and offline activities, and acquiring other necessary resources.\nNames and company logos of all sponsors (from both Patreon and Open Collective) will appear on the official website for MarkText and in its README.md file.
Markdown extensions such as math expressions (KaTeX), front matter and emojis.
\n
Support paragraphs and inline style shortcuts to improve your writing efficiency.
\n
Output HTML and PDF files.
\n
Various themes: Cadmium Light, Material Dark etc.
\n
Various editing modes: Source Code mode, Typewriter mode, Focus mode.
\n
Paste images directly from clipboard.
\n
\n
🌙themes🔆
\n
\n\n
\n
Cadmium Light
\n
Dark
\n
\n\n\n
\n
\n
\n
\n
\n
Graphite Light
\n
Material Dark
\n
\n
\n
\n
\n
\n
\n
Ulysses Light
\n
One Dark
\n
\n
\n
\n
\n
\n\n
\n
😸Edit modes🐶
\n
\n\n
\n
Source Code
\n
Typewriter
\n
Focus
\n
\n\n\n
\n
\n
\n
\n
\n\n
\n
Why make another editor?
\n\n
I love writing. I have used a lot of markdown editors, yet there is still not an editor that can fully meet my needs. I don't like to be disturbed when I write by some unbearable bug. MarkText uses virtual DOM to render pages which has the added benefits of being highly efficient and being open source. That way anyone who loves markdown and writing can use MarkText.
\n
As mentioned above, MarkText is completely free and open source and will be open source forever. We hope that all markdown lovers will contribute their own code and help develop MarkText into a popular markdown editor.
\n
There are many markdown editors and all have their own merits, some have features which others don't. It's difficult to satisfy each markdown users' needs but we hope MarkText will be able to satisfy each markdown user as much as possible. Although the latest MarkText is still not perfect, we will try to make it as best as we possibly can.
\n\n
Download and Installation
\n
\n
\n\n
\n
\n
\n
\n
\n\n\n
\n
\n
\n
\n
\n\n
\n
Want to see new features of the latest version? Please refer to CHANGELOG.
\n
macOS
\n
You can either download the latest marktext-%version%.dmg from the release page or install MarkText using homebrew cask. To use Homebrew-Cask you just need to have Homebrew installed.
\n
brew install --cask mark-text
\n
Windows
\n
Simply download and install MarkText via setup wizard (marktext-setup-%version%.exe) and choose whether to install per-user or machine wide. Alternatively, install MarkText using a package manager such as Chocolatey or Winget.
\n
To use Chocolatey, you need to have Chocolatey installed:
All binaries for Linux, macOS and Windows can be downloaded from the release page. If a version is unavailable for your system, then please open an issue.
\n
Development
\n
If you wish to build MarkText yourself, please check out our build instructions.
If you have any questions regarding MarkText, you are welcome to write an issue. When doing so please use the default format found when opening an issue. Of course, if you submit a PR directly, it will be greatly appreciated.
\n
Integrations
\n
\n
Alfred Workflow: A Workflow for the macOS app Alfred: Use \"mt\" to open files/folder with MarkText.
\n
\n
Contribution
\n
MarkText is in development, please make sure to read the Contributing Guide before making a pull request. Want to add some features to MarkText? Refer to our roadmap and open issues.
\n
Contributors
\n
Thank you to all the people who have already contributed to MarkText[contributors].
\n
Special thanks to @Yasujizr who designed the MarkText logo.
\n 🔆 Next generation markdown editor 🌙 \n A simple and elegant open-source markdown editor that focused on speed and usability. \n Available for Linux, macOS and Windows.\n
\n This Markdown editor that could. Built with ❤︎ by\n Jocs and\n \n contributors\n \n .\n \n
\n \n
Supporting MarkText
\n
MarkText is an MIT licensed open source project, and the latest version will always be downloadable for free from the GitHub release page. MarkText is still in development, and its development is inseparable from all sponsors. I hope you join them:
What's the difference between Patreon and Open Collective?
\n
Patreon: Funds will be directly sponsored to Luo Ran (@jocs) who created MarkText and continues to maintain it.\nOpen Collective: All expenses are transparent. The funds will be used for the development and maintenance of MarkText, funding online and offline activities, and acquiring other necessary resources.\nNames and company logos of all sponsors (from both Patreon and Open Collective) will appear on the official website for MarkText and in its README.md file.
Markdown extensions such as math expressions (KaTeX), front matter and emojis.
\n
Support paragraphs and inline style shortcuts to improve your writing efficiency.
\n
Output HTML and PDF files.
\n
Various themes: Cadmium Light, Material Dark etc.
\n
Various editing modes: Source Code mode, Typewriter mode, Focus mode.
\n
Paste images directly from clipboard.
\n
\n
🌙themes🔆
\n
\n\n
\n
Cadmium Light
\n
Dark
\n
\n\n\n
\n
\n
\n
\n
\n
Graphite Light
\n
Material Dark
\n
\n
\n
\n
\n
\n
\n
Ulysses Light
\n
One Dark
\n
\n
\n
\n
\n
\n\n
\n
😸Edit modes🐶
\n
\n\n
\n
Source Code
\n
Typewriter
\n
Focus
\n
\n\n\n
\n
\n
\n
\n
\n\n
\n
Why make another editor?
\n\n
I love writing. I have used a lot of markdown editors, yet there is still not an editor that can fully meet my needs. I don't like to be disturbed when I write by some unbearable bug. MarkText uses virtual DOM to render pages which has the added benefits of being highly efficient and being open source. That way anyone who loves markdown and writing can use MarkText.
\n
As mentioned above, MarkText is completely free and open source and will be open source forever. We hope that all markdown lovers will contribute their own code and help develop MarkText into a popular markdown editor.
\n
There are many markdown editors and all have their own merits, some have features which others don't. It's difficult to satisfy each markdown users' needs but we hope MarkText will be able to satisfy each markdown user as much as possible. Although the latest MarkText is still not perfect, we will try to make it as best as we possibly can.
\n\n
Download and Installation
\n
\n
\n\n
\n
\n
\n
\n
\n\n\n
\n
\n
\n
\n
\n\n
\n
Want to see new features of the latest version? Please refer to CHANGELOG.
\n
macOS
\n
You can either download the latest marktext-%version%.dmg from the release page or install MarkText using homebrew cask. To use Homebrew-Cask you just need to have Homebrew installed.
\n
brew install --cask mark-text
\n
Windows
\n
Simply download and install MarkText via setup wizard (marktext-setup-%version%.exe) and choose whether to install per-user or machine wide. Alternatively, install MarkText using a package manager such as Chocolatey or Winget.
\n
To use Chocolatey, you need to have Chocolatey installed:
All binaries for Linux, macOS and Windows can be downloaded from the release page. If a version is unavailable for your system, then please open an issue.
\n
Development
\n
If you wish to build MarkText yourself, please check out our build instructions.
If you have any questions regarding MarkText, you are welcome to write an issue. When doing so please use the default format found when opening an issue. Of course, if you submit a PR directly, it will be greatly appreciated.
\n
Integrations
\n
\n
Alfred Workflow: A Workflow for the macOS app Alfred: Use \"mt\" to open files/folder with MarkText.
\n
\n
Contribution
\n
MarkText is in development, please make sure to read the Contributing Guide before making a pull request. Want to add some features to MarkText? Refer to our roadmap and open issues.
\n
Contributors
\n
Thank you to all the people who have already contributed to MarkText[contributors].
\n
Special thanks to @Yasujizr who designed the MarkText logo.
Organize your video library with ease and convenience. \nAdd any information to your videos to make them easier to find, filter and sort. \nThis is an open source desktop application for Windows, Mac and Linux.
Q: I found a bug / I want to add a new function \nA: Open the issue on GitHub. Or write in one of the communities (from most popular to least): Discord, Patreon, Reddit.
\n
Q: Are you planning to support images? \nA: Yes. I'll get to that soon.
\n
🎞️ YouTube video demonstrating the application
\n
\n
🖐️ Main Features
\n
For a complete list of functions and how to use them, see the 📖 Documentation
\n
\n
Video preview on hover
\n
Playback videos in the built-in or system player
\n
Sorting and filtering videos by the required parameters
\n
Add information for each video: rating, favorites, text.
\n
Meta that can be customized in detail and added to the video\n
\n
Detailed meta customization: pictures, ratings, favorite and much more
\n
Meta cards, to which you can also add information like to videos
\n
Parsing meta in a file path
\n
\n
\n
Tabs for easy browsing
\n
Customizing the appearance of the application
\n
Dark theme
\n
Watching folders for new and lost videos
\n
Password protection
\n
Backup management
\n
Hover card label preview
\n
Playlists
\n
Optimized for adult videos
\n
\n
🖼️ View of app
\n
📹 Video cards
\n
\n
✏️ Add information to the video card
\n
\n
🏷️ Meta cards
\n
\n
📽️ Player
\n
\n
",
"readmeOriginal": "
\n\n\n\n
\n
\n
mediaChips
\n
Organize your video library with ease and convenience. \nAdd any information to your videos to make them easier to find, filter and sort. \nThis is an open source desktop application for Windows, Mac and Linux.
Q: I found a bug / I want to add a new function \nA: Open the issue on GitHub. Or write in one of the communities (from most popular to least): Discord, Patreon, Reddit.
\n
Q: Are you planning to support images? \nA: Yes. I'll get to that soon.
\n
🎞️ YouTube video demonstrating the application
\n
\n
🖐️ Main Features
\n
For a complete list of functions and how to use them, see the 📖 Documentation
\n
\n
Video preview on hover
\n
Playback videos in the built-in or system player
\n
Sorting and filtering videos by the required parameters
\n
Add information for each video: rating, favorites, text.
\n
Meta that can be customized in detail and added to the video\n
\n
Detailed meta customization: pictures, ratings, favorite and much more
\n
Meta cards, to which you can also add information like to videos
media-dupes checks on application launch if there is a newer media-dupes version available.\nUpdates must be installed manually as automatic updating of electron applications requires that the builds are code-signed, which i can't provide so far.
\n
media-dupes checks as well on application launch if there are updates available for the bundled youtube-dl tool.
\n
Be aware:
\n
Updating the bundled youtube-dl package is only possible if the user has write access to the media-dupes installation path (which does not work for all available packages/installation types).
Please see the verbose informations for more details.
\n
privacy
\n
\n
media-dupes is using sentry to collect error reports and do some anonymous usage stats. This helps heavily finding bugs which might occur only in some specific use-cases.
\n
reporting is enabled by default, but can be disabled in the application settings UI.
\n
media-dupes is not tracking it's users (i.e. using Google Analytics or similar)
\n
no ip addresses are stored
\n
\n
Please check here how media-dupes is using sentry and why.
\n
discussion
\n
If you have question regarding media-dupes click here to create an issue
\n
support / fund
\n
If you want to support the development of media-dupes you can fund me on:
media-dupes checks on application launch if there is a newer media-dupes version available.\nUpdates must be installed manually as automatic updating of electron applications requires that the builds are code-signed, which i can't provide so far.
\n
media-dupes checks as well on application launch if there are updates available for the bundled youtube-dl tool.
\n
Be aware:
\n
Updating the bundled youtube-dl package is only possible if the user has write access to the media-dupes installation path (which does not work for all available packages/installation types).
Please see the verbose informations for more details.
\n
privacy
\n
\n
media-dupes is using sentry to collect error reports and do some anonymous usage stats. This helps heavily finding bugs which might occur only in some specific use-cases.
\n
reporting is enabled by default, but can be disabled in the application settings UI.
\n
media-dupes is not tracking it's users (i.e. using Google Analytics or similar)
\n
no ip addresses are stored
\n
\n
Please check here how media-dupes is using sentry and why.
\n
discussion
\n
If you have question regarding media-dupes click here to create an issue
\n
support / fund
\n
If you want to support the development of media-dupes you can fund me on:
Metastream used to be an Electron desktop application until development was stopped due to roadblocks in acquiring a Widevine license. The latest version can be found on the GitHub releases page. Please note that the legacy app is insecure and not recommended.
Metastream used to be an Electron desktop application until development was stopped due to roadblocks in acquiring a Widevine license. The latest version can be found on the GitHub releases page. Please note that the legacy app is insecure and not recommended.
To completely remove the application and start over, remove the settings file too.
\n
Production Build
\n
# Run build process\nnpm run dist\n\n# or\n\n# Run build process and publish to GitHub releases\nnpm run release
\n
macOs
\n
The app needs to be signed and notarized.\nTo do so, install the .p12 file in the local keychain (double click on it).
\n
The certificate is obtained from the Apple Developer website.\nThe Developer ID Application is required.\nThe Developer ID Installer may be required too.\nOnce obtained, the .cer files have to be converted to .p12 by providing the certificate passwords/private keys.
\n
In addition to that, the following environment variables have to be set to publish:
\n
# See below to complete these two:\nAPPLE_ID=\nAPPLE_ID_PASSWORD=\n# See `electron-build` docs on how to complete these two:\nCSC_LINK=\nCSC_KEY_PASSWORD=\n# Github personal access token to upload the files to repo releases.\nGH_TOKEN=
\n
Follow these steps to create an app specific password.\nThe APPLE_ID variable is the Apple ID used to create the password.\nAPPLE_ID_PASSWORD is the password Apple created for the app.
The signing certificate shall be in the root folder of the repository.\nThe certificate password will be required during the signing process.\nThe signing process may take several minutes because notarization requieres uploading the app to Apple.
\n
In order to verify that the application has been successfully signed and notarized, run:
\n
# Verifies the app has been signed\ncodesign --verify --verbose ./dist/mac/Metronome\\ Wallet.app\n\n# Verifies the app has been notarized\nspctl -a -t exec -vvv ./dist/mac/Metronome\\ Wallet.app
\n
Windows
\n
To sign the application, a certificate for the Microsoft Authenticode platform is required.\nThe certificate, a .p7b file, will then be required during the build process.
To completely remove the application and start over, remove the settings file too.
\n
Production Build
\n
# Run build process\nnpm run dist\n\n# or\n\n# Run build process and publish to GitHub releases\nnpm run release
\n
macOs
\n
The app needs to be signed and notarized.\nTo do so, install the .p12 file in the local keychain (double click on it).
\n
The certificate is obtained from the Apple Developer website.\nThe Developer ID Application is required.\nThe Developer ID Installer may be required too.\nOnce obtained, the .cer files have to be converted to .p12 by providing the certificate passwords/private keys.
\n
In addition to that, the following environment variables have to be set to publish:
\n
# See below to complete these two:\nAPPLE_ID=\nAPPLE_ID_PASSWORD=\n# See `electron-build` docs on how to complete these two:\nCSC_LINK=\nCSC_KEY_PASSWORD=\n# Github personal access token to upload the files to repo releases.\nGH_TOKEN=
\n
Follow these steps to create an app specific password.\nThe APPLE_ID variable is the Apple ID used to create the password.\nAPPLE_ID_PASSWORD is the password Apple created for the app.
The signing certificate shall be in the root folder of the repository.\nThe certificate password will be required during the signing process.\nThe signing process may take several minutes because notarization requieres uploading the app to Apple.
\n
In order to verify that the application has been successfully signed and notarized, run:
\n
# Verifies the app has been signed\ncodesign --verify --verbose ./dist/mac/Metronome\\ Wallet.app\n\n# Verifies the app has been notarized\nspctl -a -t exec -vvv ./dist/mac/Metronome\\ Wallet.app
\n
Windows
\n
To sign the application, a certificate for the Microsoft Authenticode platform is required.\nThe certificate, a .p7b file, will then be required during the build process.
You will find other installers on the releases page.
\n
Please note that AppImage Snap and NSIS installer will automatically update to the latest available version.
\n
If you run Mélodie from a zip or using DMG/Windows portable version, you will have to download updates by yourself.
\n
Note for Windows users
\n
Windows installers are not signed.
\n
When you will run the .exe files, Windows will warn you that the source is insecure (it is not!).\n
\n
It is possible to bypass the warning by clicking on the \"More information\" link, then on the Install button\n
\n
If you install the app through the Windows App Store, you'll get no warning, since the store team reviewed and approved it.
\n
Note for MacOS users
\n
DMG image is not signed.
\n
After you will have downloaded the .dmg file, open it and drag the Mélodie icon to the Application Icon.\nThen, MacOS will prevent you from opening Mélodie as I haven't paid for an app deployment certificate.
\n
Once you will have closed the annoying warning, open you Security panel in settings, and go to General tab.\nThere, you should see the list of recently blocked application: Mélodie should be there.
Media service › triggerAlbumsEnrichment › retries album with no cover but at least one restriced provided\nIs a 1ms difference in expected processedEpoch
\n
\n
\n
AddToPlaylist component › given some playlists › saves new playlist with all tracks\nThe dropdown menu is still visible (probably because of the animation)
\n
\n
\n
snackbars store > showSnack > uses the specified duration when enqueuing slacks
The Media test do not pass on Windows: nock is not giving recorded bodies
\n
\n\n
Data
\n
Mélodie is using SQLite3 to store settings, playlists and tracks's metadatas.\nSQLite3 stores everything in a single file, named db.sqlite3 and located into the application userData folder.
\n
Mélodie also stores artists artwork according to the ARTWORK_DESTINATION environment variable, sets to user's pictures folder in melodie-media folder.
\n
Configuring logs
\n
Log are written to a file, which location is set by LOG_DESTINATION env variable.\nMélodie Desktop sets LOG_DESTINATION to logs.txt in the application logs path.
\n
Log levels are configured in a file defined by LOG_LEVEL_FILE env variable.\nMélodie Desktop sets it to .levels in the application userData folder.
\n
Its syntax is:
\n
# this is a comment\nlogger-name=level\nwildcard*=level
\n
logger names are:
\n
\n
\n
core
\n
\n
\n
renderer
\n
\n
\n
updater
\n
\n
\n
services/ where is tracks, playlists, media, settings
\n
\n
\n
providers/ where is local, audiodb, discogs
\n
\n
\n
models/ where is tracks, albums, artists, playlists, settings
\n
\n
\n
and levels are (in order): trace (most verbose), debug, info, warn, error, fatal, silent (no logs)
\n
Wildcards can be at the beginning *tracks or the end models/*.\nIn case a logger name is matching several directives, the first always wins.
\n
You can edit the file, and trigger logger level refresh by sending SIGUSR2 to the application: kill -USR2 {pid} (first log issued contains pid)
The test suite works fine Linux, MacOS and Windows.
\n
npm t
\n
Core services network mocks (nocks)
\n
Some services are hitting external APIs, such as AudioDB.\nAs we don't want to flood them with test requests, these are using network mocks.
\n
To use real services, run your tests with REAL_NETWORK environment variables (whatever its value).\nWhen using real services, update the mocks by defining UPDATE_NOCKS environment variables (whatever its value).\nNocks will stay unchanged on test failure.
\n
Some providers need access keys during tests. Just make a .env file in the root folder, with the appropriate values:
\n
DISCOGS_TOKEN=XYZ\nAUDIODB_KEY=1\n
\n
Promo site
\n
Located under apps/site, it publicize Mélodie and has a button to download latest release artifacts.
\n
Caveats:
\n
\n
it is build for Github pages. That is, the final hosting will have a base path (/melodie), which we don't have when trying out locally
\n
it reuses common/ui stylesheet, which requires workaround due to font paths. Fonts must be copied into /apps/site/static/fonts for dev, and the production build creates undesired copies in /common/ui/src/fonts
\n
when developing locally, use npm -w apps/site run dev and browse to http://localhost:3000
\n
when willing to try out production result, use npm -w apps/site run build, npm -w apps/site run serve and browse to http://localhost:3000/melodie
\n
\n
Trying snaps out
\n
Working with snaps locally isn't really easy.
\n\n
\n
install the real app from the store:
\n
snap install melodie
\n
\n
\n
then package your app in debug mode, to access the unpacked snap:
\n
DEBUG=electron-builder npm run release:artifacts --workspace apps/desktop -- -l
\n
\n
\n
copy missing files to the unpacked snap, and keep your latest changes:
npm run release:artifacts --workspace apps/desktop -- -l
\n
\n
\n
Lint your AppImage:
\n
appimagelint dist/Mélodie.AppImage
\n
\n
\n
Double click on ./dist/Mélodie.AppImage and integrate it to your system.\nPlease check that the app starts, it can access to local files, its name and icon are correct in the launcher
\n
\n\n
Releasing
\n
Release process is fairly automated: it will generate changelog, bump version, and build melodie for different platform, creating several artifacts which are either packages (snap, AppImage, Nsis, appx) or plain files (zip).
\n
Theses artifacts will be either published on their respective store (snapcraft, Windows App store...) or uploaded to github as a release.\nOnce a Github release is published, users who installed an auto-updatable package (snap, AppImage, Nsis, appx) will get the new version auto-magically.
\n
Windows App store release can not be automated: Github CI will build the appx package, but it must be manually submitted to the Windows App store.
\n\n
\n
When ready, bump the version on local machine:
\n
npm run release:bump
\n
(if you wish to get a pre-release, append -- --prerelease beta|alpha to the command line)
\n
\n
\n
Don't forget to update snapshots: the presentation site test depend on the version number.
\n
TAG=$(git describe --tags)\nTAG=${TAG::-11}\nnpm t --workspace apps/site -- --clearCache\nnpm t --workspace apps/site -- -u\ngit commit -a --amend --no-edit\ngit tag -f $TAG
\n
You shoud see 2 snapshots updated
\n
\n
\n
Then push tags to github, as it'll trigger the artifact creation:
\n
git push --follow-tags
\n
\n
\n
Finally, go to github releases, and edit the newest one:
\n\n
\n
give it a code name
\n
\n
\n
copy the latest section of the changelog in the release body
\n
\n
\n
save it as draft
\n
\n
\n
Wait until the artifacts are published on your draft
Started with a search engine (FlexSearch) to store tracks, and serialized JS lists for albums & artists.\nAltough very performant (50s to index the whole music library), the memory footprint is heavy (700Mo) since\nFlexSearch is loading entire indices in memory
\n
\n
\n
Moved to sqlite3 denormalized tables (drawback: no streaming supported)
\n
\n
\n
Dropped the idea to query tracks of a given albums/artists/genre/playlist by using SQL queries.\nSqlite has a very poor json support, compared to Postgres. There is only one way to query json field: json_extract.\nIt is possible to create indexes on expressions, and this makes retrieving tracks of a given album very efficient:
\n
create index track_album on tracks (trim(lower(json_extract(tags, '$.album'))))\nselect id, tags from tracks where trim(lower(json_extract(tags, '$.album'))) = lower('Le grand bleu')\n
\n
However, it doesn't work on artists or genres, because they are modeled with arrays, and operator used do not leverage any index:
\n
select id, tags from tracks where instr(lower(json_extract(tags, '$.artists')), 'eric serra')\nselect id, tags from tracks where json_extract(tags, '$.artists') like '%eric serra%'\n
\n
\n
\n
chokidar is the best of breed watch tool, but has this annoying linux-only big when moving folders outside of the watched paths\nWatchman is a C program that'll be hard to bundle.\nnode-watch does not send file event when removing/renaming folders\nwatchr API seems overly complex\nwatch-pack is using chokidar and the next version isn't ready
\n
\n
\n
wiring jest, storybook, svelte and tailwind was really painfull. Too many configuration files now :(\nTo make storyshots working, I had to downgrade Jest because of an annoying bug (reference).
\n
\n
\n
I considered Sapper for its nice conventional router, but given all the unsued feature (service workers, SSR) I chose a simpler router.\nIt is based on hash handling, as electron urls are using file:// protocol which makes it difficult to use with history-based routers.
\n
\n
\n
Initially, albums & artists id where hash of their names. It was very convenient to keep a list of artist's albums just by storing album names in artist's linked array. UI would infer ids by applying the same hash.\nHowever, it is common to see albums with same name from different artists (like \"Greatest hits\").\nTo mitigate this issue, I had to make album's id out of album name and album artist (when defined). This ruined the hash convention, and I had to replace all \"links\" by proper references (id + name). Now UI does not infer ids anymore.
\n
\n
\n
For system notifications, document.hidden and visibilityChange are too weak because they only notice when the app is minimized/restored
\n
\n
\n
System notification was tricky: HTML5 Notification API doesn't support actions, except from service workers.\nUsing service workers was overkill, and didn't work in the end.\nElectron's native notificaiton does not support actions either.\nUsing node-notifier was a viable possibility, but doesn't support actions in a portable fashion (notify-send on linux doesn't support it).\nFinally back to HTML5 notification API, without actions :(
\n
\n
\n
The discovery of mediaSession's metadata and handler was completely random. It's only supported by Chrome (hopefully for me!), and can be seen on Deezer, Spotify or Youtube Music. However, it does not display artworks.
\n
\n
\n
IntersectionObserver does not call the intersection entry when the position inside viewport is changing but the intersection doesn't.\nAs a result, dropdown in the sheet will enter viewport during sheet animation, causing troubles positioning the menu
\n
\n
\n
AC/DC was displayed as 2 different artists ('AC' and 'DC'). This is an issue with ID3 tags: version 2.3 uses / as a separators for artists.\nOveritting mp3 tags with 2.4 solved the issue
\n
\n
\n
Snap packaging was hairy to figure out. It is clearly the best option on Linux, as it has great desktop integration (which AppImage lacks) and a renowed app store. However, getting the MediaMetadata to work with snap confinement took two days of try-and-fail research. The full journey is available in this PR on electron-builnder. Besides, the way snapd is creating different folders for each new version forced me to move artist albums outside of electron's data folders: snapd ensure that files are copied from old to new version, but can not update the media full paths store inside SQLite DB.
\n
\n
\n
MacOS builder was constantly failing with the same error: 7zip couldn't find any file to compress in the final archive. It turns out it is because the production name as an accent (Mélodie), and the mac flavor of 7zip can not handle it...
\n
\n
\n
Chokidar has a \"limitation\" and triggers for each renamed or moved file an 'unlink' and an 'add' event. The implication on Mélodie were high: moved/renamed files would disappear from playlists. Ty bypass the issue, Mélodie stores file inodes and buffer chokidar events: when a file is removed, Mélodie will wait 250ms more, and if another file is added with the same inode during that time, will consider it as a rename/move.
\n
\n
\n
The mono-repo endeavour. My goal was to split code in various reusable packages: a UI and core that would not depend on Electron, and could be used in both Web and Desktop context, and two apps: an Electron-based desktop application and the Github-page site. As developer I would expect the ability to hoist as many modules
\n
\n
runing jest with pnpm does not work at all.
\n
lerna is a pain when it comes to hoisting deps.
\n
svelte-jester and preprocess absolutely don't work with yarn@2
\n
yarn@1 works fine but brings very little commands (just a little more than npm@7)
\n
npm@7 < 7.24 must install peer deps in legacy mode and does not offer any sugar for multi-package commands. All deps must be manually added to package.json, because install command MUST be run at root level\nElectron-builder does not like monorepo either: author, description and other metadata must be copied from root package.json to apps/desktop/package.json. The Electron version must be fixed because node_modules are hoisted. The package.json name MUST be melodie :(\nCaveats: always run npm i --legacy-peer-deps AT ROOT level. Running npm or npx command inside packages would re-create node_modules\nEnsuring the same version in all packages and dependencies similarities must be done manually
\n
\n
\n
\n
svelte-spa-router, and its dependency on regexparam, has been bother me for a very long time. When ran with jest, svelte-spa-router files must be transpiled by Svelte compiler, but they import regexparam as esm, and this lib doesn't expose such binding. One must replace the import with require, and this must only be done during test, because rollup will handle it properly.\nWhen receiving errors from svelte-jester, don't forget to clean jest cache with --cleanCache CLI option.
\n
\n
\n
since v22.11.1, electron-builder fails to build the app on Github worker. Fixing the version to 22.10.5 for the time being.
\n
\n
\n
Tailwind is veeeeeeeeeeeery slow to compile. Svelte preprocessor can not handle it fast, making vite pretty slow when starting atelier (only the first load). More information here. Moving to Windi CSS speed the build time from 65 to 28 seconds!
\n
\n
\n
The Audio element failed to play any music when coupled with AudioContext:
\n\n
Bluetooth must be enabled prior to starting the app (simply reload the app once enabled)
\n
AudioContext will build, but will not process any data.\nBeing running or suspended (as per Google's policy) does not matter: rebuilding the context or building it on user interaction does not solve the issue as long as bluetooth is enabled
\n\n
\n
\n
How watch & diff works
\n
\n
\n
on app load, trigger diff
\n\n
\n
get followed folders from store
\n
\n
\n
crawl followed folders, return array of paths + hashs + last changed
\n
\n
\n
get array of tracks with hash + last changed from DB
\n
\n
\n
compare to find new & changed hashes
\n\n
\n
enrich with tags & media
\n
\n
\n
save
\n
\n\n
\n
\n
compare to isolate deleted hashes
\n\n
remove corresponding tracks
\n\n
\n\n
\n
\n
while app is running
\n\n
\n
watch new & changed paths
\n\n
\n
compute hash, enrich with tags & media
\n
\n
\n
save
\n
\n\n
\n
\n
watch deleted paths
\n\n
\n
compute hash
\n
\n
\n
remove corresponding tracks
\n
\n\n
\n\n
\n
\n
when adding new followed folder
\n\n
\n
save in store
\n
\n
\n
crawl new folder, return array of paths
\n
\n
\n
compute hash, enrich with tags & media
\n
\n
\n
save
\n
\n\n
\n
\n
How missing artworks/covers retrieval works
\n
\n
\n
on UI demand trigger process
\n\n
\n
push all artists/albums without artwork/cover, and not process since N in a queue
You will find other installers on the releases page.
\n
Please note that AppImage Snap and NSIS installer will automatically update to the latest available version.
\n
If you run Mélodie from a zip or using DMG/Windows portable version, you will have to download updates by yourself.
\n
Note for Windows users
\n
Windows installers are not signed.
\n
When you will run the .exe files, Windows will warn you that the source is insecure (it is not!).\n
\n
It is possible to bypass the warning by clicking on the \"More information\" link, then on the Install button\n
\n
If you install the app through the Windows App Store, you'll get no warning, since the store team reviewed and approved it.
\n
Note for MacOS users
\n
DMG image is not signed.
\n
After you will have downloaded the .dmg file, open it and drag the Mélodie icon to the Application Icon.\nThen, MacOS will prevent you from opening Mélodie as I haven't paid for an app deployment certificate.
\n
Once you will have closed the annoying warning, open you Security panel in settings, and go to General tab.\nThere, you should see the list of recently blocked application: Mélodie should be there.
Media service › triggerAlbumsEnrichment › retries album with no cover but at least one restriced provided\nIs a 1ms difference in expected processedEpoch
\n
\n
\n
AddToPlaylist component › given some playlists › saves new playlist with all tracks\nThe dropdown menu is still visible (probably because of the animation)
\n
\n
\n
snackbars store > showSnack > uses the specified duration when enqueuing slacks
The Media test do not pass on Windows: nock is not giving recorded bodies
\n
\n\n
Data
\n
Mélodie is using SQLite3 to store settings, playlists and tracks's metadatas.\nSQLite3 stores everything in a single file, named db.sqlite3 and located into the application userData folder.
\n
Mélodie also stores artists artwork according to the ARTWORK_DESTINATION environment variable, sets to user's pictures folder in melodie-media folder.
\n
Configuring logs
\n
Log are written to a file, which location is set by LOG_DESTINATION env variable.\nMélodie Desktop sets LOG_DESTINATION to logs.txt in the application logs path.
\n
Log levels are configured in a file defined by LOG_LEVEL_FILE env variable.\nMélodie Desktop sets it to .levels in the application userData folder.
\n
Its syntax is:
\n
# this is a comment\nlogger-name=level\nwildcard*=level
\n
logger names are:
\n
\n
\n
core
\n
\n
\n
renderer
\n
\n
\n
updater
\n
\n
\n
services/ where is tracks, playlists, media, settings
\n
\n
\n
providers/ where is local, audiodb, discogs
\n
\n
\n
models/ where is tracks, albums, artists, playlists, settings
\n
\n
\n
and levels are (in order): trace (most verbose), debug, info, warn, error, fatal, silent (no logs)
\n
Wildcards can be at the beginning *tracks or the end models/*.\nIn case a logger name is matching several directives, the first always wins.
\n
You can edit the file, and trigger logger level refresh by sending SIGUSR2 to the application: kill -USR2 {pid} (first log issued contains pid)
The test suite works fine Linux, MacOS and Windows.
\n
npm t
\n
Core services network mocks (nocks)
\n
Some services are hitting external APIs, such as AudioDB.\nAs we don't want to flood them with test requests, these are using network mocks.
\n
To use real services, run your tests with REAL_NETWORK environment variables (whatever its value).\nWhen using real services, update the mocks by defining UPDATE_NOCKS environment variables (whatever its value).\nNocks will stay unchanged on test failure.
\n
Some providers need access keys during tests. Just make a .env file in the root folder, with the appropriate values:
\n
DISCOGS_TOKEN=XYZ\nAUDIODB_KEY=1\n
\n
Promo site
\n
Located under apps/site, it publicize Mélodie and has a button to download latest release artifacts.
\n
Caveats:
\n
\n
it is build for Github pages. That is, the final hosting will have a base path (/melodie), which we don't have when trying out locally
\n
it reuses common/ui stylesheet, which requires workaround due to font paths. Fonts must be copied into /apps/site/static/fonts for dev, and the production build creates undesired copies in /common/ui/src/fonts
\n
when developing locally, use npm -w apps/site run dev and browse to http://localhost:3000
\n
when willing to try out production result, use npm -w apps/site run build, npm -w apps/site run serve and browse to http://localhost:3000/melodie
\n
\n
Trying snaps out
\n
Working with snaps locally isn't really easy.
\n\n
\n
install the real app from the store:
\n
snap install melodie
\n
\n
\n
then package your app in debug mode, to access the unpacked snap:
\n
DEBUG=electron-builder npm run release:artifacts --workspace apps/desktop -- -l
\n
\n
\n
copy missing files to the unpacked snap, and keep your latest changes:
npm run release:artifacts --workspace apps/desktop -- -l
\n
\n
\n
Lint your AppImage:
\n
appimagelint dist/Mélodie.AppImage
\n
\n
\n
Double click on ./dist/Mélodie.AppImage and integrate it to your system.\nPlease check that the app starts, it can access to local files, its name and icon are correct in the launcher
\n
\n\n
Releasing
\n
Release process is fairly automated: it will generate changelog, bump version, and build melodie for different platform, creating several artifacts which are either packages (snap, AppImage, Nsis, appx) or plain files (zip).
\n
Theses artifacts will be either published on their respective store (snapcraft, Windows App store...) or uploaded to github as a release.\nOnce a Github release is published, users who installed an auto-updatable package (snap, AppImage, Nsis, appx) will get the new version auto-magically.
\n
Windows App store release can not be automated: Github CI will build the appx package, but it must be manually submitted to the Windows App store.
\n\n
\n
When ready, bump the version on local machine:
\n
npm run release:bump
\n
(if you wish to get a pre-release, append -- --prerelease beta|alpha to the command line)
\n
\n
\n
Don't forget to update snapshots: the presentation site test depend on the version number.
\n
TAG=$(git describe --tags)\nTAG=${TAG::-11}\nnpm t --workspace apps/site -- --clearCache\nnpm t --workspace apps/site -- -u\ngit commit -a --amend --no-edit\ngit tag -f $TAG
\n
You shoud see 2 snapshots updated
\n
\n
\n
Then push tags to github, as it'll trigger the artifact creation:
\n
git push --follow-tags
\n
\n
\n
Finally, go to github releases, and edit the newest one:
\n\n
\n
give it a code name
\n
\n
\n
copy the latest section of the changelog in the release body
\n
\n
\n
save it as draft
\n
\n
\n
Wait until the artifacts are published on your draft
Started with a search engine (FlexSearch) to store tracks, and serialized JS lists for albums & artists.\nAltough very performant (50s to index the whole music library), the memory footprint is heavy (700Mo) since\nFlexSearch is loading entire indices in memory
\n
\n
\n
Moved to sqlite3 denormalized tables (drawback: no streaming supported)
\n
\n
\n
Dropped the idea to query tracks of a given albums/artists/genre/playlist by using SQL queries.\nSqlite has a very poor json support, compared to Postgres. There is only one way to query json field: json_extract.\nIt is possible to create indexes on expressions, and this makes retrieving tracks of a given album very efficient:
\n
create index track_album on tracks (trim(lower(json_extract(tags, '$.album'))))\nselect id, tags from tracks where trim(lower(json_extract(tags, '$.album'))) = lower('Le grand bleu')\n
\n
However, it doesn't work on artists or genres, because they are modeled with arrays, and operator used do not leverage any index:
\n
select id, tags from tracks where instr(lower(json_extract(tags, '$.artists')), 'eric serra')\nselect id, tags from tracks where json_extract(tags, '$.artists') like '%eric serra%'\n
\n
\n
\n
chokidar is the best of breed watch tool, but has this annoying linux-only big when moving folders outside of the watched paths\nWatchman is a C program that'll be hard to bundle.\nnode-watch does not send file event when removing/renaming folders\nwatchr API seems overly complex\nwatch-pack is using chokidar and the next version isn't ready
\n
\n
\n
wiring jest, storybook, svelte and tailwind was really painfull. Too many configuration files now :(\nTo make storyshots working, I had to downgrade Jest because of an annoying bug (reference).
\n
\n
\n
I considered Sapper for its nice conventional router, but given all the unsued feature (service workers, SSR) I chose a simpler router.\nIt is based on hash handling, as electron urls are using file:// protocol which makes it difficult to use with history-based routers.
\n
\n
\n
Initially, albums & artists id where hash of their names. It was very convenient to keep a list of artist's albums just by storing album names in artist's linked array. UI would infer ids by applying the same hash.\nHowever, it is common to see albums with same name from different artists (like \"Greatest hits\").\nTo mitigate this issue, I had to make album's id out of album name and album artist (when defined). This ruined the hash convention, and I had to replace all \"links\" by proper references (id + name). Now UI does not infer ids anymore.
\n
\n
\n
For system notifications, document.hidden and visibilityChange are too weak because they only notice when the app is minimized/restored
\n
\n
\n
System notification was tricky: HTML5 Notification API doesn't support actions, except from service workers.\nUsing service workers was overkill, and didn't work in the end.\nElectron's native notificaiton does not support actions either.\nUsing node-notifier was a viable possibility, but doesn't support actions in a portable fashion (notify-send on linux doesn't support it).\nFinally back to HTML5 notification API, without actions :(
\n
\n
\n
The discovery of mediaSession's metadata and handler was completely random. It's only supported by Chrome (hopefully for me!), and can be seen on Deezer, Spotify or Youtube Music. However, it does not display artworks.
\n
\n
\n
IntersectionObserver does not call the intersection entry when the position inside viewport is changing but the intersection doesn't.\nAs a result, dropdown in the sheet will enter viewport during sheet animation, causing troubles positioning the menu
\n
\n
\n
AC/DC was displayed as 2 different artists ('AC' and 'DC'). This is an issue with ID3 tags: version 2.3 uses / as a separators for artists.\nOveritting mp3 tags with 2.4 solved the issue
\n
\n
\n
Snap packaging was hairy to figure out. It is clearly the best option on Linux, as it has great desktop integration (which AppImage lacks) and a renowed app store. However, getting the MediaMetadata to work with snap confinement took two days of try-and-fail research. The full journey is available in this PR on electron-builnder. Besides, the way snapd is creating different folders for each new version forced me to move artist albums outside of electron's data folders: snapd ensure that files are copied from old to new version, but can not update the media full paths store inside SQLite DB.
\n
\n
\n
MacOS builder was constantly failing with the same error: 7zip couldn't find any file to compress in the final archive. It turns out it is because the production name as an accent (Mélodie), and the mac flavor of 7zip can not handle it...
\n
\n
\n
Chokidar has a \"limitation\" and triggers for each renamed or moved file an 'unlink' and an 'add' event. The implication on Mélodie were high: moved/renamed files would disappear from playlists. Ty bypass the issue, Mélodie stores file inodes and buffer chokidar events: when a file is removed, Mélodie will wait 250ms more, and if another file is added with the same inode during that time, will consider it as a rename/move.
\n
\n
\n
The mono-repo endeavour. My goal was to split code in various reusable packages: a UI and core that would not depend on Electron, and could be used in both Web and Desktop context, and two apps: an Electron-based desktop application and the Github-page site. As developer I would expect the ability to hoist as many modules
\n
\n
runing jest with pnpm does not work at all.
\n
lerna is a pain when it comes to hoisting deps.
\n
svelte-jester and preprocess absolutely don't work with yarn@2
\n
yarn@1 works fine but brings very little commands (just a little more than npm@7)
\n
npm@7 < 7.24 must install peer deps in legacy mode and does not offer any sugar for multi-package commands. All deps must be manually added to package.json, because install command MUST be run at root level\nElectron-builder does not like monorepo either: author, description and other metadata must be copied from root package.json to apps/desktop/package.json. The Electron version must be fixed because node_modules are hoisted. The package.json name MUST be melodie :(\nCaveats: always run npm i --legacy-peer-deps AT ROOT level. Running npm or npx command inside packages would re-create node_modules\nEnsuring the same version in all packages and dependencies similarities must be done manually
\n
\n
\n
\n
svelte-spa-router, and its dependency on regexparam, has been bother me for a very long time. When ran with jest, svelte-spa-router files must be transpiled by Svelte compiler, but they import regexparam as esm, and this lib doesn't expose such binding. One must replace the import with require, and this must only be done during test, because rollup will handle it properly.\nWhen receiving errors from svelte-jester, don't forget to clean jest cache with --cleanCache CLI option.
\n
\n
\n
since v22.11.1, electron-builder fails to build the app on Github worker. Fixing the version to 22.10.5 for the time being.
\n
\n
\n
Tailwind is veeeeeeeeeeeery slow to compile. Svelte preprocessor can not handle it fast, making vite pretty slow when starting atelier (only the first load). More information here. Moving to Windi CSS speed the build time from 65 to 28 seconds!
\n
\n
\n
The Audio element failed to play any music when coupled with AudioContext:
\n\n
Bluetooth must be enabled prior to starting the app (simply reload the app once enabled)
\n
AudioContext will build, but will not process any data.\nBeing running or suspended (as per Google's policy) does not matter: rebuilding the context or building it on user interaction does not solve the issue as long as bluetooth is enabled
\n\n
\n
\n
How watch & diff works
\n
\n
\n
on app load, trigger diff
\n\n
\n
get followed folders from store
\n
\n
\n
crawl followed folders, return array of paths + hashs + last changed
\n
\n
\n
get array of tracks with hash + last changed from DB
\n
\n
\n
compare to find new & changed hashes
\n\n
\n
enrich with tags & media
\n
\n
\n
save
\n
\n\n
\n
\n
compare to isolate deleted hashes
\n\n
remove corresponding tracks
\n\n
\n\n
\n
\n
while app is running
\n\n
\n
watch new & changed paths
\n\n
\n
compute hash, enrich with tags & media
\n
\n
\n
save
\n
\n\n
\n
\n
watch deleted paths
\n\n
\n
compute hash
\n
\n
\n
remove corresponding tracks
\n
\n\n
\n\n
\n
\n
when adding new followed folder
\n\n
\n
save in store
\n
\n
\n
crawl new folder, return array of paths
\n
\n
\n
compute hash, enrich with tags & media
\n
\n
\n
save
\n
\n\n
\n
\n
How missing artworks/covers retrieval works
\n
\n
\n
on UI demand trigger process
\n\n
\n
push all artists/albums without artwork/cover, and not process since N in a queue
This app shows your GitLab merge requests grouped by projects and WIP status. It is accessible from the system tray.
\n
\n\n
\n
Light Mode
\n
Dark Mode
\n
\n\n\n
\n
\n
\n
\n\n
\n
Tray Icon
\n
In the system tray you wil see the number of all open merge requests.
\n
\n
Notification
\n
You will receive a desktop notification when a new merge request is created.\nIf you are not interested in \"work in progress\" merge request you can disable notifications for these. In addition you can disable notifications at all.
\n
\n
App Updates (macOS only)
\n
You will be always up to date with our integrated in app updates 🎉. Once there is a new update available you will be\nnotified with a prominent alert above the merge requests. On the details page you find the release notes from github.
\n
\n\n
\n
New Update Alert
\n
Release Notes
\n
\n\n\n
\n
\n
\n
\n\n
\n
Installation
\n
macOS
\n
Manual installation
\n
The macOS installer is uploaded at the releases page. Please download and install.
\n
With homebrew-cask
\n
If you're using homebrew-cask, this app can be installed via it. Please tap the repository URL and install this app via brew cask as follows.
\n
brew tap codecentric/merge-request-notifier https://github.com/codecentric/merge-request-notifier\nbrew install --cask merge-request-notifier\n
\n
It's the easiest way to install and manage this app on macOS.
\n
Windows
\n
The Windows installer is uploaded at the releases page. Please download and install.
\n
Linux
\n
Dependencies
\n
This app is using a library that uses libsecret to store the personal access token on your device.
\n
Depending on your distribution, you will need to run the following command:
This app shows your GitLab merge requests grouped by projects and WIP status. It is accessible from the system tray.
\n
\n\n
\n
Light Mode
\n
Dark Mode
\n
\n\n\n
\n
\n
\n
\n\n
\n
Tray Icon
\n
In the system tray you wil see the number of all open merge requests.
\n
\n
Notification
\n
You will receive a desktop notification when a new merge request is created.\nIf you are not interested in \"work in progress\" merge request you can disable notifications for these. In addition you can disable notifications at all.
\n
\n
App Updates (macOS only)
\n
You will be always up to date with our integrated in app updates 🎉. Once there is a new update available you will be\nnotified with a prominent alert above the merge requests. On the details page you find the release notes from github.
\n
\n\n
\n
New Update Alert
\n
Release Notes
\n
\n\n\n
\n
\n
\n
\n\n
\n
Installation
\n
macOS
\n
Manual installation
\n
The macOS installer is uploaded at the releases page. Please download and install.
\n
With homebrew-cask
\n
If you're using homebrew-cask, this app can be installed via it. Please tap the repository URL and install this app via brew cask as follows.
\n
brew tap codecentric/merge-request-notifier https://github.com/codecentric/merge-request-notifier\nbrew install --cask merge-request-notifier\n
\n
It's the easiest way to install and manage this app on macOS.
\n
Windows
\n
The Windows installer is uploaded at the releases page. Please download and install.
\n
Linux
\n
Dependencies
\n
This app is using a library that uses libsecret to store the personal access token on your device.
\n
Depending on your distribution, you will need to run the following command:
Start Min in development mode by running npm run start.
\n
After you make changes, you can press ctrl+r (or cmd+r on Mac) twice to restart the browser.
\n
\n
Building binaries
\n
In order to build Min from source, follow the installation instructions above, then use one of the following commands to create binaries:
\n
\n
npm run buildWindows
\n
npm run buildMacIntel
\n
npm run buildMacArm
\n
npm run buildDebian
\n
npm run buildRaspi (for 32-bit Raspberry Pi)
\n
npm run buildLinuxArm64 (for 64-bit Raspberry Pi or other ARM Linux)
\n
npm run buildRedhat
\n
\n
Depending on the platform you are building for, you may need to install additional dependencies:
\n
\n
If you are using macOS and building a package for Linux, install Homebrew, then run brew install fakeroot dpkg first.
\n
If you are using macOS or Linux and building a package for Windows, you will need to install Mono and Wine.
\n
If you are building a macOS package, you'll need to install Xcode and the associated command-line tools. You may also need to set your default SDK to macOS 11.0 or higher, which you can do by running export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk. The exact command will depend on where Xcode is installed and which SDK version you're using.
\n
To build on Windows, you'll need to install Visual Studio. Once it's installed, you may also need to run npm config set msvs_version 2019 (or the appropriate version).
\n
\n
Contributing to Min
\n
Thanks for taking the time to contribute to Min!
\n
Getting Help
\n
If you're experiencing a bug or have a suggestion for how to improve Min, please open a new issue.
\n
If you have questions about using Min, need help getting started with development, or want to talk about what we're working on, join our Discord server.
\n
Contributing Code
\n
\n
Start by following the development instructions listed above.
Change the \"identifier\" field in the new file to the language code from step 1.
\n
Inside the file, replace each English string in the right-hand column with the equivalent translation.
\n
(Optional) See your translations live by following the development instructions above. Min will display in the same language as your operating system, so make sure your computer is set to the same language that you're translating.
\n
That's it! Make a pull request with your changes.
\n
\n
Updating an existing language
\n
\n
Find the language file for your language in the localization/languages directory.
\n
Look through the file for any items that have a value of \"null\", or that have a comment saying \"missing translation\".
\n
For each of these items, look for the item with the same name in the en-US.json file.
\n
Translate the value from the English file, replace \"null\" with your translation, and remove the \"missing translation\" comment.
\n
Make a pull request with the updated file.
\n
\n
",
"readmeOriginal": "
Min
\n
Min is a fast, minimal browser that protects your privacy. It includes an interface designed to minimize distractions, and features such as:
Start Min in development mode by running npm run start.
\n
After you make changes, you can press ctrl+r (or cmd+r on Mac) twice to restart the browser.
\n
\n
Building binaries
\n
In order to build Min from source, follow the installation instructions above, then use one of the following commands to create binaries:
\n
\n
npm run buildWindows
\n
npm run buildMacIntel
\n
npm run buildMacArm
\n
npm run buildDebian
\n
npm run buildRaspi (for 32-bit Raspberry Pi)
\n
npm run buildLinuxArm64 (for 64-bit Raspberry Pi or other ARM Linux)
\n
npm run buildRedhat
\n
\n
Depending on the platform you are building for, you may need to install additional dependencies:
\n
\n
If you are using macOS and building a package for Linux, install Homebrew, then run brew install fakeroot dpkg first.
\n
If you are using macOS or Linux and building a package for Windows, you will need to install Mono and Wine.
\n
If you are building a macOS package, you'll need to install Xcode and the associated command-line tools. You may also need to set your default SDK to macOS 11.0 or higher, which you can do by running export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk. The exact command will depend on where Xcode is installed and which SDK version you're using.
\n
To build on Windows, you'll need to install Visual Studio. Once it's installed, you may also need to run npm config set msvs_version 2019 (or the appropriate version).
\n
\n
Contributing to Min
\n
Thanks for taking the time to contribute to Min!
\n
Getting Help
\n
If you're experiencing a bug or have a suggestion for how to improve Min, please open a new issue.
\n
If you have questions about using Min, need help getting started with development, or want to talk about what we're working on, join our Discord server.
\n
Contributing Code
\n
\n
Start by following the development instructions listed above.
Change the \"identifier\" field in the new file to the language code from step 1.
\n
Inside the file, replace each English string in the right-hand column with the equivalent translation.
\n
(Optional) See your translations live by following the development instructions above. Min will display in the same language as your operating system, so make sure your computer is set to the same language that you're translating.
\n
That's it! Make a pull request with your changes.
\n
\n
Updating an existing language
\n
\n
Find the language file for your language in the localization/languages directory.
\n
Look through the file for any items that have a value of \"null\", or that have a comment saying \"missing translation\".
\n
For each of these items, look for the item with the same name in the en-US.json file.
\n
Translate the value from the English file, replace \"null\" with your translation, and remove the \"missing translation\" comment.
Mini Diary is no longer maintained. Please use a different journal app instead.
\n
Website
\n
Features and FAQs can be found on the website: minidiary.app
\n
Development
\n
The application is built with Electron and React. To run or build the app yourself, you'll need to have Node.js and Yarn installed.
\n
Running the app
\n\n
Clone this repository: git clone REPO_URL
\n
Navigate into the project directory: cd mini-diary
\n
Install the dependencies: yarn
\n
Run the app: yarn start
\n\n
Building the app
\n
After cloning the repo and installing the dependencies, run yarn build. The packaged app can be found in the dist folder.
\n
Contributing
\n
Features and Bugs
\n
Suggestions and contributions are always welcome! Please first discuss changes via issue before submitting a pull request.
\n
Adding missing translations
\n
The list of all English strings can be found in en.ts. If there are translations missing for your language and you'd like to help with the translation, you can add the translated strings to your language's file in src/main/i18n/translations and submit a PR.
\n
Adding a new language
\n
If the app isn't translated into your language yet and you'd like to help out, you can easily add translations with the following steps:
Add your language shortcode to the electronLanguages array in package.json.
\n
Run the app in your language (see the steps above) and make sure that the translations fit into the app (e.g. that they aren't too long for input fields).
\n
Submit a PR. Thanks for your help!
\n\n
",
"readmeOriginal": "
\n \n
Mini Diary
\n Simple and secure journal app\n \n
\n
Mini Diary is no longer maintained. Please use a different journal app instead.
\n
Website
\n
Features and FAQs can be found on the website: minidiary.app
\n
Development
\n
The application is built with Electron and React. To run or build the app yourself, you'll need to have Node.js and Yarn installed.
\n
Running the app
\n\n
Clone this repository: git clone REPO_URL
\n
Navigate into the project directory: cd mini-diary
\n
Install the dependencies: yarn
\n
Run the app: yarn start
\n\n
Building the app
\n
After cloning the repo and installing the dependencies, run yarn build. The packaged app can be found in the dist folder.
\n
Contributing
\n
Features and Bugs
\n
Suggestions and contributions are always welcome! Please first discuss changes via issue before submitting a pull request.
\n
Adding missing translations
\n
The list of all English strings can be found in en.ts. If there are translations missing for your language and you'd like to help with the translation, you can add the translated strings to your language's file in src/main/i18n/translations and submit a PR.
\n
Adding a new language
\n
If the app isn't translated into your language yet and you'd like to help out, you can easily add translations with the following steps:
Add your language shortcode to the electronLanguages array in package.json.
\n
Run the app in your language (see the steps above) and make sure that the translations fit into the app (e.g. that they aren't too long for input fields).
Mingo is latest and most catchy MongoDB GUI, because it’s been created by developers for developers. The goal is simple, to offer you the best MongoDB admin; built on our programming experience and on your feedback.
\n
We focus on security, speed and user experience, while keeping Mingo great for both newbies and experienced users. The best part is that our intuitive MongoDB browser is packed with features we felt were missing in other MongoDB GUIs.
Mingo is latest and most catchy MongoDB GUI, because it’s been created by developers for developers. The goal is simple, to offer you the best MongoDB admin; built on our programming experience and on your feedback.
\n
We focus on security, speed and user experience, while keeping Mingo great for both newbies and experienced users. The best part is that our intuitive MongoDB browser is packed with features we felt were missing in other MongoDB GUIs.
ModernDeck takes TweetDeck to the next level with a Material-inspired theme, customization and performance enhancements, and more. Available as a desktop app or a browser extension.
ModernDeck is designed by dangered wolf and released under the MIT License.
\n
",
"readmeOriginal": "
\n
\n\n
\n
ModernDeck takes TweetDeck to the next level with a Material-inspired theme, customization and performance enhancements, and more. Available as a desktop app or a browser extension.
The Accelerated Mobile Pages Project (AMP) is an online publishing format, originally created by Google as an alternative to Facebook’s Instant Articles. It’s a way to optimize web pages for mobile browsing using a special code–AMP-HTML.
\n
\n
AMP sites are loading smoothly and fast. Users like pages they don't have to wait, so you keep your visitors.
\n
Goggle Search adds to AMP articles an AMP iсon, and when you use a mobile device, these pages are shown first.
\n
AMP is a great solution for internet magazines, blogs and news sites.
\n
\n
\n
Mobirise 5.3
\n
Interface
\n
Design
\n
\n
New loader look
\n
Scrollbar styling added
\n
\n
\n
\n
Added dark inline editor panel in the dark mode
\n
\n
\n
Sites management
\n
\n
Now you can create sites based on a template from another theme
\n
Sites panel - search by name & domain added
\n
Create New Site panel - newest themes shown on top of the list
\n
Search through all templates when adding a new page: go to Pages and click Create New Page to see the list of available templates
\n
\n
\n
Drag Block to Page panel
\n
\n
Search through all Mobirise blocks
\n
\n
\n
\n
Added Show More buttons at the end of each blocks' group
\n
\n
\n
\n
Updated block groups (added new block groups, renamed and sorted the old ones) for free Mobirise themes
\n
Added shadows to the show more blocks button on hover
\n
Added new blocks categories to default themes, fixed the search for similar blocks
\n
\n
Domain connection
\n
\n
Updated DNS records: new DNS record types available
\n
Connecting domain via CNAME record added
\n
\n
Extensions panel
\n
\n
Added Add All button
\n
\n
\n
Code Editor
\n
\n
Highlight matching tags in HTML
\n
\n
\n
Icons
\n
\n
SVG icons instead of iconfont files in pages to improve loading speed
\n
\n
Other updates
\n
\n
Improved loading speed of user sites by optimized connection of Google Fonts
\n
If there is something wrong with the project code, you'll see a note about an issue
\n
\n
Themes
\n
Mobirise 5
\n
\n
Added compatibility with the Form Builder extension
\n
Fixes for alignment on mobile devices
\n
Fixes for logo images in the navbar
\n
Fixed the scroll-to-top arrow on mobile view
\n
Added paddings to the logo in the menu
\n
Socicon plugin font now supports \"font-display: swap\" for better optimization
\n
Fixed menu brand name underline
\n
New block categories
\n
\n
AudioM4
\n
\n
Features 3, 4, 6: Changed background images to usual img, to have an opportunity to insert link on image
\n
Features 4, 6: Added the ability to disable swinging and glare animation
\n
Added square cards option (square music album covers are the industry standard)
\n
Added range parameter to change size of cover
\n
Added buttons option (if all animation is enabled, there may be problems with following the link in the image, despite the accepted changes)
\n
\n
LuxuryM4
\n
\n
Fixed incompatibility issues with Mobirise 5
\n
Fixed broken logos in the menu
\n
Aligning pictures in team2
\n
Moving the send button in form1 and form3, an extra once global attributes in form 2
\n
\n
BusinessM4
\n
\n
Fixed images in Clients1
\n
Renamed all images in clients-white folder, to avoid intersections with images from clients folder after publication or preview
\n
\n
TherapyM4
\n
\n
Fixed team2 uneditable card content
\n
Added pointer-events rules, to be able to edit the text and link that appear on image hover
\n
\n
KidsM4
\n
\n
Fixes for options for menu background & text color option on mobile
\n
\n
ConnectM4
\n
\n
Reduced resolution to upscale the font-size from 1200 to 1199px and 992 to 991px
\n
\n
KidsM4 & AgencyM4
\n
\n
Fixed incompatibility issues with Mobirise 5, fixed the codestyle and menu, added theme classes
\n
\n
LightAMP
\n
\n
Fixed bugs in menus
\n
\n
Fixes
\n
\n
Github publishing method fixed
\n
Fixed and updated DNS records: new DNS record types available
\n
Extensions panel - fixed the search
\n
Fixed the position for the custom HTML block
\n
Fixes for the theme installation when choosing an unavailable theme
\n
App Settings - fixed saving Remove Mobirise from HTML setting
\n
Link-editor: fixed shop links in AMP themes
\n
Fixes for the fonts connection issue
\n
\n
Mobirise 5.2
\n
Core
\n
\n
Bootstrap version updated in the app to 4.5.2
\n
Electron version updated in the app to v10
\n
\n
Interface
\n
\n
New Blocks Menu panel. Browse through blocks more conveniently due to the enlarged page view
\n
\n
\n
\n
Spellchecker: check and correct mistakes directly in the app
\n
Add Blocks List: all compatible blocks are available w/o theme reloading and user blocks. Select a compatible theme to see a blocks list
\n
\n
\n
\n
Pages List: Search available
\n
\n
\n
\n
You can download all the extensions available for you. Open the Extensions list and press Ctrl+Shift+A
\n
Don't show again option for remove block, create site and open site dialogs.
\n
Updated Remove Unused Images
\n
Faster Sites panel
\n
\n
Mobirise 5 theme
\n
\n
Ghost Button Border option in Site Styles
\n
5 new blocks - headers and footers
\n
Logo Size option for footers
\n
Fixes in some block designs
\n
Fix with tab anchor renaming
\n
Duplicated code and CSS removed
\n
Some fixes in block designs
\n
\n
Fixes
\n
\n
Fix in Code Editor \"click twice to save\"
\n
Fix for \"Social Sharing Image\"
\n
Fix for sorting blocks
\n
Google maps fix
\n
Code syntax verification fix in Code Editor
\n
Fix for custom HTML in M3
\n
\n
Mobirise 5.0
\n
Core
\n
\n
Brand-new engine. The app is upto 2 time faster, especially on large projects.
\n
Bootstrap version updated in the app to 4.5.0
\n
jQuery version updated in the app to v3.5.1
\n
Themes can be added faster (the app is not reloading if the theme is not current)
\n
\n
Interface
\n
\n
Light/Dark mode. The Light mode is enabled by default in the app now. But if it's more comfortable for your to use the dark mode, open app settings (Menu -> Account -> App Settings -> Editor -> Dark Mode)
\n
The Remove Unused Images button added in Site Library.
\n
Sites published on Mobirise servers are shown in the Sites list now. If you remove them, they will not be available online anymore
\n
New Sites panel available in the app. Now it's in a full-screen mode
\n
Image Editor: New function in Image Editor: Rotate
\n
Favicon and page name are shown in navbar
\n
Canvas with borders. You can disable this feature in your app settings (Menu -> Account -> App Settings -> Editor -> Fullscreen Canvas).
\n
You can connect your site domain with the site published via the Mobirise Publish option. Find this feature in your Site Settings after publishing your site.
\n
\n
\nNew Sites List view available in Mobirise 5\n
\nYou can enable Dark Mode in App Settings\n
\nYou can disable your project borders by enabling the Fullscreen Canvas option\n
\nClear your site library by removing images you don't use in a project\n
\nThe site domain settings will appear in your Site Settings after publishing your site via the Mobirise Publish option\n
Fixes
\n
\n
Saving user blocks is fixed
\n
AMP Cache issue fixed. Earlier some of our users faced some issues with AMP blocks: galleries, sliders, accordions were not usable because of saved cached files. There was no simple way to clear the cache folder. This issue is fixed now.
\n
Sliders and Galleries optimized in the app. This fix may not affect already created galleries, but new galleries and sliders should work faster
\n
Mobirise 4 Theme: youtu.be links are supported, forms are cleared after submitting, gallery and form fixes
\n
MobiriseAMP Theme: update menu, fixed 'scroll to top button'
\n
Issue with $ symbols cleared is fixed
\n
Parallax fixes
\n
Link Editor: WhatsApp link fixed
\n
Form Builder fixes
\n
Google Maps fixed
\n
\n
Extensions
\n
\n
Code Editor: Global HTML Insert available in Site Settings. You can add the HTML lang tag in it and add code snippets to the various parts of your pages. Since this feature is global, your code will be added to all pages in your project.
\n
New default theme available in the app: Mobirise 5. Start a new project and select the Mobirise 5 theme to check it.
\n
\n
\nInstall the Code Editor extension to find the Global HTML Insert tab in Site Settings\n
Mobirise v4.12.4
\n
\n
LazyLoad Extension fixes
\n
Social Icons are updated
\n
Form Builder Small fixes
\n
youtu.be links are supported now
\n
Fixed saving the Resize Images site setting
\n
Minor fixes
\n
\n
Mobirise v4.12
\n
\n
Important: After the 4.12 is installed, update your extensions in \"Menu->Extensions->Update All\" and then restart the Mobirise
\n
Compatibility with MacOs Catalina
\n
FTP profile is filled from a project file
\n
User Blocks search added
\n
Issues with project import/export with different fonts fixed
\n
Fixed saving the Resize Images site setting
\n
Blockpack for M4
\n
Minor fixes
\n
\n
DinerM4
\n
\n
DinerM4 - Great Bootstrap cafe theme. It's the perfect choice for owners of pizzerie, tea-houses, cafeterias and other restaurants.
\n
\n
\n
AudioM4
\n
\n
AudioM4 - Need a stunning website for your songs? Feel free to use this exceptional music theme with great looking designs!
\n
\n
\n
BlockPack for M4
\n
\n
BlockPack for M4 - 350+ best and most unique blocks from premium Mobirise themes. Compatible with all M4 themes.
\n
\n
\n
InnovationAMP
\n
\n
InnovationAMP - Multipurpose theme for corporate and science websites. Let your future website look innovative and ultra-modern!
\n
\n
\n
BranchM4
\n
\n
BranchM4 - Well-designed corporate theme for small and medium businesses. Use this theme to create a website for your company or agency with a unique and professional look.
\n
\n
\n
KidsM4 Theme
\n
\n
KidsM4 Theme - A cute website template perfect for preschools and babysitting. It also suits online stores selling children clothes and toys. Create a kids related site with ease!
\n
\n
\n
PetsM4 Theme
\n
\n
PetsM4 Theme - Contemporary pets website template. It's the ideal choice for animal care organizations, veterinarians and animal clinics.
\n
\n
\n
Mobirise v4.11.5
\n
\n
Issue with images in AMP themes fixed
\n
M4 themes are updates with fixes for gallery and shop block filters
\n
\n
Mobirise v4.11.4
\n
\n
Cookies Alert update: added the 'Explicit Consent' option which creates a cookie modal
\n
Mobirise4 Theme: fix color change for 'table1' block
\n
Editing galleries fixed
\n
The LazyLoad extension is available
\n
\n
\n
CourseAMP Theme
\n
\n
CourseAMP Theme - Sleek courses website theme spiced up with nice-looking designs and exciting animations. It's the best fit for online schools and web courses\nLive Demos: University, Consulting.
\n
\n
\n
Mobirise v4.11.2
\n
\n
Update of Code Editor extension. New features: Edit Block Anchor, Edit Site Styles.
\n
Edit user block name
\n
Choose a Social sharing image
\n
New Site Settings interface
\n
Fixed saving Site Styles
\n
Fixed publish Popup Builder on several pages in amp themes
\n
Fixed captcha
\n
Mobirise4 theme: fixed gallery styles, fixed line height
\n
\n
LuxuryM4 Theme
\n
\n
LuxuryM4 Theme - Wish to impress clients with your online luxury store? Easily create one in no longer than a few hours with this exclusive theme.
\n
\n
\n
TrainingAMP Theme
\n
\n
TrainingAMP Theme - Creating a great website for sport gyms, workout clubs and individual sportsmen with this website theme is just like 123. Start your own sport website with ease!
\n
\n
\n
InsightAMP Theme
\n
\n
InsightAMP Theme - Impressive corporate template for creating clean and minimalist websites for any kind of business. Increase yur brand exposure with this creative template.
\n
\n
\n
Mobirise v4.10.10
\n
\n
FormBuilder updated: The reCAPTCHA label support
\n
PWA Builder updated: iOS Support
\n
M4 optimization
\n
Facebook authorization fixed for Social Feed (partly)
\n
\n
PhotoM4 Theme
\n
\n
PhotoM4 Theme - Ideal theme for professional and hobby photographers. Build a stylish and clean website to impress anyone with beautiful galleries and portfolios.
\n
\n
\n
WoodM4 Theme
\n
\n
WoodM4 Theme - Have a carpentry shop, forestry manufacture or timber company? This theme helps you present your woodworks excellently.
\n
\n
\n
Mobirise v4.10.8
\n
\n
Form Builder updated. reCAPTCHA support and form submissions w/o the Mobirise label. More info
\n
Countdown blocks updated: floating point numbers supported now
\n
The issue with adding global components fixed
\n
\n
\n
Mobirise v4.10.7
\n
\n
Mobirise AMP: new slider block with bullets, new manager for galleries and sliders, you can select the link type now: to full screen image or to your link
\n
Page Settings: preview of your page in Google Search
\n
Remove unused CSS for AMP: fixes
\n
Batch adding images to gallery: fixes
\n
Mobirise Publish: now you can publish sites made in M themes
\n
Fixes for shop blocks
\n
\n
\n
PersonaM4 Theme
\n
\n
PersonaM4 Theme - A modern and lovely Bootstrap theme for creatives, freelancers, professionals, and creative studios.
\n
\n
\n
CorporateAMP Theme
\n
\n
CorporateAMP Theme - A minimalistic and laconic AMP theme for brands and digital agencies.
\n
\n
\n
ShopAMP Theme
\n
\n
ShopAMP Theme - An easy-to-use multipurpose AMP theme for creating websites to promote and offer every kind of services online.
\n
\n
\n
DepotAMP Theme
\n
\n
DepotAMP Theme - This elegant theme is perfect for stores to showcase goods, inform about discounts, present prices, and highlight special offers.
\n
\n
\n
Mobirise v4.10.6
\n
\n
Templates for sites are available in the app now
\n
Placeholder on empty pages
\n
The Search field in the Extensions list added
\n
The Crop Image functionality fixed
\n
Global blocks can be added on all pages and removed from all pages
\n
Code Editor is available offline for a longer time
\n
Popup Builder improvements: created popup blocks are available on all pages, minor fixes
\n
\n
\n
\n
Mobirise v4.10.5
\n
\n
Link Editor updated: messenger link types are added
\n
New thumbnails for extensions, the Create New Site dialog is updated
\n
Image crop feature updated, fixed for jpg images
\n
Fixed disappearing parameter buttons in top right corner of block
\n
Minor fixes for Mobirise4
\n
Fix update style of global component\nExtensions:
\n
PayPal Shopping Cart is updated: new look
\n
TechM4: new blocks, update for an accordion block
\n
PoliticsM4: reverse block feature for a team block
\n
Bug fixes in SimpleAMP, BusinessM4, AgencyM4
\n
\n
\n
\n
Mobirise v4.10.4
\n
\n
Editing extension blocks in M themes fixed (for example, popup builder)
\n
The menu fix in the MobiriseAMP theme
\n
The dropdown menu fix in M4 themes
\n
The gallery now keeps images in User Blocks
\n
The Extensions list is updated
\n
\n
Popup Builder
\n
\n
Create a modal/popup/lightbox with text, image, video, form. Live demo
PoliticsM4 Theme - If you represent a party, candidate, political organization or social movement, this theme will be your best match. It's perfect for government sites, campaign pages and other political websites.
\n
\n
\n
IndustryM4 Theme
\n
\n
IndustryM4 Theme - An eye-catching industrial website theme. Promote your company services and advertise your industrial business with a professionally built website.
\n
\n
\n
Mobirise v4.10.1
\n
\n
Site Library is optimized (it should work much faster now)
\n
Form fixes: the app doesn't hang if the long email addresses are used, forms work correctly in IE, minor fixes
\n
Issue with duplicating IDs on cloned pages fixed
\n
Mobirise 4 theme fixes: background video, features blocks
\n
Batch images adding: small fixes
\n
Smooth scroll fixed for M and M4 themes
\n
\n
Mobirise v4.10
\n
\n
Code Editor improvements
\n
Reverse mode for timeline blocks
\n
Remove unused CSS from AMP pages. This option is available in Site Settings. It noticeably reduces the number of CSS rules on a page and makes the size of inline CSS smaller. CSS you use on your page should not be larger than 50,000 bytes. Otherwise, pages are not AMP-valid. Use the option if you have many blocks on your pages. Please check carefully if your page elements are displayed correctly with this option enabled.
\n
\n
\n
\n
Bug fixes: menu block fixes; the active undo button in new projects disabled; italic/bold text color is preserved now; '$1' is shown after publication; lightbox incorrect size fixed; the reveal effect in Mobirise 4 footers is disabled for IE; images renaming fixed when use batch adding and 'Resize Images' turned off; other minor fixed.
\n
\n
TechM4 Theme
\n
\n
TechM4 Theme - This theme helps you build a powerful online presence for your tech business. Save time and effort when creating a top-notch website for your tech company.
\n
\n
\n
CompanyAMP Theme
\n
\n
CompanyAMP Theme - Stylish and universal theme for any type of companies. When building your company landing page, consider this captivating theme that sparks everyone's interest.
\n
\n
\n
SimpleAMP Theme
\n
\n
SimpleAMP Theme - Сreate neat and trim websites for service agencies, shops, and creatives. This mutipurpose template contains more than 50 various blocks.
\n
\n
\n
TasteM4 Theme
\n
\n
TasteM4 Theme is a fantastic and flexible clothing website theme. Benefit from the ready-made layouts. Build a website to your taste and present your brand in the best possible way.
\n
\n
\n
Mobirise v4.9.7
\n
\n
Extensions Social Feed, SoundCloud, Facebook Comments supported in AMP themes
\n
Online Image Library now saves the last active tab
\n
All themes are updated: small fixes and new FormBuilder extension support
\n
\n
FormBuilder Extension
\n
Use the drag-n-drop builder to draw up the form you want. Learn more
\n
\n
Create forms with complex layout, set the width of form fields
\n
Add your own labels, placeholders, default values, and input patterns
\n
Use the built-in Mobirise solution to receive submissions or use your own Action URL
\n
\n
\n
Mobirise v4.9.5
\n
\n
New \"Add Block\" panel: now with block categories
\n
\n
\n
\n
Online Image Library: enlarged preview on hover
\n
\n
\n
\n
Updated Mobirise4 and MobiriseAMP themes: fixes, new blocks
\n
Code Editor: fixed inserting scripts to custom HTML block
\n
Fix for menus (scroll-line on mobile view)
\n
Fixed tags in image galleries
\n
\n
Mobirise v4.9.3
\n
\n
'Update All' button for extensions with a progress bar
\n
\n
\n
\n
Adding images by drag and drop in Image Media
\n
\n
\n
\n
Adding multiple images at once to sliders and galleries (non-AMP themes)
\n
Updated M4 themes to latest Bootstrap v4.2.1
\n
Updated free MobiriseAMP theme - 20 new blocks: gallery, slider, accordion, contact forms, testimonials, google maps.
\n
Code Editor loading speed improved
\n
Bug fixes for Google Maps
\n
Fixes for editing menu colors
\n
Fixes with page cloning
\n
\n
LifestyleAMP Theme
\n
\n
LifestyleAMP Theme - Easily create a personal, fashion, relationshop and lifestyle website that will be a real eye candy and inspiration for everyone.
\n
\n
\n
WorkshopAMP Theme
\n
\n
WorkshopAMP Theme - If you offer repair services and have a workshop, this is the right theme for you.
\n
\n
\n
GamingAMP Theme
\n
\n
GamingAMP Theme is a dark and neat design will excite and entertain every video game fan that visits your website.
\n
\n
\n
Mobirise v4.9.1
\n
\n
Code Editor update:
\n
Mobirise mentions removal - clear the HTML code from \"made with Mobirise\" etc..
\n
New color schemes - light and contrast
\n
Undo-Redo buttons
\n
\n
\n
\n
PayPal Shopping Cart update:
\n
Support for AMP themes
\n
Subscribe and Donate options
\n
Info on \"How to add shipping, VAT, and tax.\"
\n
\n
\n
\n
Mobirise 4 default theme update: 15 new blocks, fixes
\n
AMP Canonical URL for AMP sites. Menu -> Sites -> Site Settings.
\n
Bug Fixes
\n
\n
StrategyAMP Theme
\n
\n
StrategyAMP is a solid, informative, laconic and smart template for strategies of any business spheres: design, content, social media, sales, and business development. It is also suitable for consulting agencies to present services and make them plain and attractive for clients.
\n
\n
\n
ChurchAMP Theme
\n
\n
ChurchAMP is a modern theme designed for churches and religious movements around the world. It is also suitable for creating a charity or charitable foundation website.
\n
\n
\n
Mobirise v4.8.6
\n
\n
Mobirise Icons are available for AMP themes now
\n
Mobirise 2 Icons added
\n
\n
\n
Mobirise v4.8.4
\n
\n
Publishing issues fixed
\n
Scroll-to-top button issues fixed
\n
Minor bug fixes
\n
\n
AppAMP Theme
\n
\n
AppAMP is a neat AMP theme best suited for landing pages showcasing your mobile and desktop apps.
\n
\n
\n
ConsultingAMP Theme
\n
\n
ConsultingAMP - an exclusive AMP theme to create a site for consulting and other professional services.
New Publish option allows you to put the site online with a single click, to be viewed by the public with your subdomain at mobirisesite.com\nWhat's included:
Lightning-fast global CDN (Content Delivery Network)
\n
Unlimited pages
\n
Unlimited space and bandwidth\nIMPORTANT! Currently this option is in beta status - please use it for testing only. The subdomains can be removed without a notice.
\n
\n
\n
SchoolAMP Theme
\n
\n
SchoolAMP - A trendy and neat looking theme for online schools. Use this theme to create a website for your school, courses, online lessons, and other educational services.
\n
\n
\n
EducationM4 Theme
\n
\n
EducationM4 - A flexible and modern educational theme. It is suitable for schools, colleges, online courses, and other educational institutions.
\n
\n
\n
RealtyM4 Theme
\n
\n
RealtyM4 Theme - An ultimate and modern real estate theme. It fulfills needs of realtors, agencies, real estate holdings when it comes to creating responsive and versatile websites to sell properties online.
\n
\n
\n
OrganicAMP Theme
\n
\n
OrganicAMP Theme - Mouth-watering and trendy AMP theme for building online food stores. It's ideal for launching vegetarian food shops, cooking websites and healthy nutrition pages.
\n
\n
\n
Mobirise v4.7.8
\n
\n
Bug Fixes for AMP Themes: video autoplay, map layout, video lightbox.
\n
\n
ResumeAMP Theme
\n
\n
ResumeAMP Theme - Lovely and creative AMP theme for creating online resumes. It is great for starting online profiles and portfolios.
\n
\n
\n
WeddingAMP Theme
\n
\n
WeddingAMP Theme - The lovely AMP theme for weddings, celebrations, and event planners.
ArchitectAMP - The AMP theme for architectural building, exterior design, and construction business owners.
\n
\n
\n
Mobirise v4.7.7
\n
\n
Improved app loading
\n
Fixed inserting icons in menu in m3 themes
\n
Fixed and updated translations
\n
Fixed disappearance of text placeholders
\n
Select all text on first click
\n
Fixed font dropdown panel height
\n
\n
Mobirise v4.7.6
\n
\n
Improved block reordering and dragging
\n
Bug fixes for projects loading
\n
AMP themes support improved
\n
Image optimization improved
\n
Updated translations: Spanish, Greek, Hungarian, Polish, Italian
\n
Updated login/signup dialog
\n
Minor bug fixes
\n
Mobirise for Android (works on Android 4.4+)
\n
\n
\n
HandymanAMP Theme
\n
\n
HandymanAMP Theme - Perfect theme for plumber or electrician, painter or similar craftsman, construction, handyman, carpenter, craftsman workshop or repair business website. AMP themes are compatible, and you can use blocks from HandymanAMP in other AMP themes provided by Mobirise. Ready site demos: Cleaning Services, Dream House, Repair Services.
\n
\n
\n
BeautyAMP Theme
\n
\n
BeautyAMP Theme - AMP theme for beauty studios, barber shops, tattoo salons, massage parlors, and gyms.
\n
\n
\n
SoundAMP Theme
\n
\n
SoundAMP Theme - The AMP theme for music industry sites. A great choice to present music producers, DJs, singers, record studions, music labels, bands and grounps, sound pros.
\n
\n
\n
Mobirise v4.7.2
\n
\n
Cookie Alert Extension updated - now it is \"Cookie Alert and GDPR Compliance\" - After activating GDPR compliance, all web forms on your website will have checkbox for agreeing to your Terms and Privacy Policy.
\n
Code Editor Extension updated - some fixes
\n
Different fixes in translation engine
\n
New AMP themes - StartupAMP and SpaceAMP
\n
\n
StartupAMP Theme
\n
\n
StartupAMP Theme - AMP theme for startup websites with rounded corners and deep gradient colors. View demo templates: Best Mobile App, Co-working Template, Business School Template.\nCheck available blocks: headers, features, tabs and accordions, content blocks, sliders and videos, social blocks and maps, footers.
\n
\n
\n
SpaceAMP Theme
\n
\n
SpaceAMP Theme - Clean and spacious AMP theme with 60+ slick blocks. View demo templates: Apartments for Sale, Beauty Salon, Health Food Store.\nCheck available blocks: headers, subscribe and form blocks, social blocks, map blocks, footer blocks, content blocks, text and titles blocks, news and team blocks, progress bars, accordions, counters and pricing tables, images, sliders, and video blocks.
\n
\n
\n
Mobirise v4.7.1
\n
\n
Scroll to top Button Issue fixed
\n
Images publication issue fixed
\n
\n
LightAMP Theme
\n
\n
LightAMP Theme - Large set of beautiful AMP blocks including sliders, timelines, lightboxes, tables, and media blocks. Based on AMP and compatible with other AMP themes in Mobirise. View demo templates: Interior Design, Dance School, Riding School.\nCheck available blocks: headers, menus, images & videos, features, articles, forms & maps, pricing tables, toggles & accordions, and footers.
\n
\n
\n
EventAMP Theme
\n
\n
EventAMP Theme - AMP-based remake of popular Mobirise3 theme. Good to promote your special events, meetings, presentations. View demo templates: Horizon Festival, Business Meet Up, Culinary Master Class.\nView blocks demos.
BusinessM4 Theme - Clean, light, responsive theme with gradients and shadows. Build websites to present your business and many more. BusinessM4 is compatible with Mobirise 4 Themes. View demo templates: Creative agency, Travel Agency. Check available blocks: headers, menus, images & videos, features, articles, call to action blocks, team blocks, forms & maps, pricing tables, clients & partners blocks, tabs & accordions, and footers.
\n
\n
\n
Mobirise v4.6.5
\n
\n
Bug fixes: Issue with missing projects fixed; Issue with missing user blocks fixed; Mobirise 3: sliders; Alignment in AgencyM4 and LawyerM4; Text style for forms in StoreM4
\n
Languages: Polish
\n
\n
CommerceM4 Theme
\n
\n
CommerceM4 Theme - A nice Bootstrap theme for commercial websites with some blocks to sell products. Present yourself, your products, your services, and your team. CommerceM4 is compatible with Mobirise 4 Themes. View demo templates: Cafe Demo, Shoes Demo, Headphones Demo. Check available blocks: headers, menus,images & videos, sliders & galleries, shops, features, content blocks, info blocks, team blocks and testimonials, forms & maps, pricing tables and tables, social blocks, countdowns & accordions, footers.
\n
\n
\n
HotelM4 Theme
\n
\n
HotelM4 Theme - Bootstrap theme for hotel and resort websites. HotelM4 is an M4 compatible theme. View live demos: menus, headers, features, images and videos, sliders and galleries, content blocks, forms, pricing tables, testimonials and team blocks, toggles and accordions, maps, info blocks, footers.
\n
\n
\n
Mobirise v4.6.0
\n
\n
Hotkey: if your Sites list is empty, you can load the list of previously used projects: open your Sites list and press Ctrl+Shift+L when it opened.
\n
Mobirise Translator extension: you can translate Mobirise interface to your language and share your translations with other users.
\n
\n
Mobirise AMP
\n
Mobirise AMP Theme - accelerate your site with Google AMP. Check AMP theme components demos: headers, images & videos, testimonials & info, features, articles, maps & social, footers.
\n
\n
Mobirise v4.5.0
\n
\n
Translation: German
\n
Bug fixes for saving User blocks
\n
Bug fixes for themes: Blockpack for Mobirise 3, AgencyM4, PortfolioM4, LawyerM4, DirectM, SpaceM\nTo change the interface language, open the main menu in the app, select the Account tab, and open App Settings.
\n
\n
\n
Mobirise v4.4.0
\n
\n
Now you can crop images right in Mobirise application
\n
Fixed compatibility with Internet Explorer in Mobirise 4 theme
\n
\n
\n
\n
Mobirise v4.3.5
\n
\n
StoreM4 Bootstrap Theme
\n
App Settings: \"Show All Block Buttons\" option added
\n
Bug Fixes:
\n
Mobirise4 Theme: Fix for counters
\n
Gallery Video - fixed youtube thumbnails in Mobirise 3 and Mobirise 4 compatible themes
\n
Links - fixed long domain in web address
\n
\n
StoreM4 Bootstrap Theme - spacious, clean and attractive ecommerce theme designed mainly for stores. 80+ blocks for your new online shop. This theme includes several menu blocks, headers, sliders and galleries, shops, content and info sections, pricing tables, testimonials, team blocks and more. StoreM4 is compatible with Mobirise 4 themes - you can interchange user blocks between your projects.
\n
\n
Mobirise v4.3.4
\n
\n
Facebook and Google Authorization: Now you can sign up using your Google and Facebook accounts.
\n
Clone Sites - clone not only pages, but also entire sites.
\n
App settings - open your Menu->Account->App settings to adjust your app settings: show the redo button, the tablet view mode, keep the Site Styles button shown.
\n
FTP publishing fixes
\n
Mobirise Help Center - visit our Help Center if you have some issues, and if you can't find a solution, you can visit our forums or contact our Support Team.
\n
\n
\n
\n
\n
\n
PortfolioM4 Bootstrap Theme - Modern and bright theme to present your projects - for designers, illustrators, artists, and developers. Comes with moving background intro, \"typed\" effect, step-by-step process, our clients, portfoilio gallery, counters, about me blocks. PortfolioM4 is compatible with Mobirise 4 themes - you can interchange user blocks between your projects.
\n
\n
\n
Mobirise v4.3.1
\n
\n
Built-in \"Mobirise Icons Bold\" icon font
\n
\"Icons\" extension updated. Now 8700+ icons total
\n
New fonts: Icon54 v.3, Icon54 v.4, Simple Line Icons, \"Font Awesome\" updated
\n
Site Library:\nFixed bug with removing images that are used on site\nFixed hanging\nFixed bug with duplication of images
\n
Mobirise4: fixed bug with buttons in 'pricing tables'
\n
Fixed vimeo thumbnails in gallery
\n
\"Link to\" dialog: \"open in new window\" is added to the \"file\" tab
\n
\n
Mobirise v4.3.0
\n
\n
New \"Link to\" dialog with: Option to add files to site and link them (pdf, doc, xls, etc..); Email; Phone; Web Address
\n
Updated PayPal Shopping Cart
\n
Fixed duplicated images on publishing
\n
Minor fixes
\n
LawyerM4 Bootstrap Theme - Dark, minimal and tidy theme for lawyers, legal firms, attorneys and related legal professionals. LawyerM4 is compatible with Mobirise 4 themes - you can interchange user blocks between your projects.
New AgencyM4 Theme. Theme for companies and agencies with 70+ blocks. New gradient overlays, working hours sections, and an extended set of dropdown menus and intro sections. AgencyM4 is compatible with Mobirise 4 Theme: you can move Mobirise4 and AgencyM4 user blocks between your projects.
\n
WOW Slider extension fixed
\n
Extensions updated – Social Feed, Social Comments, SoundCloud
\n
Compatibility issue with some 3rd-party themes fixed (Clarus, Sleek, Unicore..)
\n
Site thumbnail creation fixed
\n
Fix: WOWSlider extension
\n
Update: Home pages in Italian (please contact at support@mobirise.com if you find mistakes in texts)
Bootstrap updated to latest v4.0.0-beta (for Mobirise4 theme only)
\n
Fix: Fonts crush on start
\n
Fix: Bug in images publishing
\n
Fix: Parameters in extension blocks
\n
Fix: WOWSlider extension
\n
Update: Home pages in Chinese, Slovak, Polish, French, Albanian, Finnish, Swedish, Japanese, Portugal (please contact at support@mobirise.com if you find mistakes in texts)
\n
\n
Mobirise v4.1.6
\n
Search by font name in Google font library
\n
\n
Fix: \"Browse computer for image\" doesn't save last dir
\n
Fix: Hot key COPY/PASTE on Mac
\n
Fix: \"Clone page\" doesn't work with some blocks
\n
Fix: Rubik Google font bug on Windows
\n
Update: Home pages in German, Spanish, Danish, Norwegian, Dutch, Russian (please contact at support@mobirise.com if you find mistakes in texts)
\n
\n
Mobirise v4.1
\n
\n
Brand-new core engine - the app works much faster and smoother now
Bootstrap website builder makes it very easy to prototype, test, and build a custom responsive website quickly, without having to understand the Bootstrap framework system. They, although different in capabilities, all offer a form of drag-and-drop functionality that fully utilizes the enormous library of Bootstrap’s components.\n\n\n
Adding a css image gallery to your website does not need to be difficult or time-consuming. There are a wide range of options to choose from, whether you opt to go with the standard html5 image gallery, to customize it using one of a wide-range of plugins and tutorials or if you opt for Mobirise’s drag-and-drop builder. Good luck with your website!\n\n\n
The bootstrap image slider component that comes with the bootstrap framework is a lightweight carousel which uses JavaScript. It’s a standards-compliant piece of functionality, with a clean design that will fit easily into any website. It’s also easy to modify and extend with additional functionality such as CSS3 animations and more.\n\n\n
Today you are able to use different techniques and tools, from using an open-source CMS such as WordPress along with a free theme, to using website building software.\nMobirise is one such website builder. Website software has a few advantages over a CMS...\n\n\n
\n
Drag and drop website builder
\n
Make your own mobile website in minutes! Mobirise helps you cut down development time by providing you with a flexible website editor with a drag and drop interface.
\n
Live preview
\n
See the result instantly without a need to save or export!
\n
Modern styles
\n
Mobirise has provided for website developers a growing library of modern blocks which can be used either partially or in full for every website developed through the builder.
\n
Bootstrap 3
\n
Bootstrap 3 has been noted as one of the most reliable and proven frameworks and Mobirise has been equipped to develop websites using this framework.
\n
Create a beautiful website.
\n
Whether you want to create a blog, eCommerce store, portfolio, or all of the above, you can express your idea with a website powered by our elegant yet intuitive platform.
Bootstrap website builder makes it very easy to prototype, test, and build a custom responsive website quickly, without having to understand the Bootstrap framework system. They, although different in capabilities, all offer a form of drag-and-drop functionality that fully utilizes the enormous library of Bootstrap’s components.\n\n\n
Adding a css image gallery to your website does not need to be difficult or time-consuming. There are a wide range of options to choose from, whether you opt to go with the standard html5 image gallery, to customize it using one of a wide-range of plugins and tutorials or if you opt for Mobirise’s drag-and-drop builder. Good luck with your website!\n\n\n
The bootstrap image slider component that comes with the bootstrap framework is a lightweight carousel which uses JavaScript. It’s a standards-compliant piece of functionality, with a clean design that will fit easily into any website. It’s also easy to modify and extend with additional functionality such as CSS3 animations and more.\n\n\n
Today you are able to use different techniques and tools, from using an open-source CMS such as WordPress along with a free theme, to using website building software.\nMobirise is one such website builder. Website software has a few advantages over a CMS...\n\n\n
\n
Drag and drop website builder
\n
Make your own mobile website in minutes! Mobirise helps you cut down development time by providing you with a flexible website editor with a drag and drop interface.
\n
Live preview
\n
See the result instantly without a need to save or export!
\n
Modern styles
\n
Mobirise has provided for website developers a growing library of modern blocks which can be used either partially or in full for every website developed through the builder.
\n
Bootstrap 3
\n
Bootstrap 3 has been noted as one of the most reliable and proven frameworks and Mobirise has been equipped to develop websites using this framework.
\n
Create a beautiful website.
\n
Whether you want to create a blog, eCommerce store, portfolio, or all of the above, you can express your idea with a website powered by our elegant yet intuitive platform.
\n
",
"readmeOriginal": "
Mobirise Bootstrap Builder
\n
Mobirise AMP Website Builder
\n
The Accelerated Mobile Pages Project (AMP) is an online publishing format, originally created by Google as an alternative to Facebook’s Instant Articles. It’s a way to optimize web pages for mobile browsing using a special code–AMP-HTML.
\n
\n
AMP sites are loading smoothly and fast. Users like pages they don't have to wait, so you keep your visitors.
\n
Goggle Search adds to AMP articles an AMP iсon, and when you use a mobile device, these pages are shown first.
\n
AMP is a great solution for internet magazines, blogs and news sites.
\n
\n
\n
Mobirise 5.3
\n
Interface
\n
Design
\n
\n
New loader look
\n
Scrollbar styling added
\n
\n
\n
\n
Added dark inline editor panel in the dark mode
\n
\n
\n
Sites management
\n
\n
Now you can create sites based on a template from another theme
\n
Sites panel - search by name & domain added
\n
Create New Site panel - newest themes shown on top of the list
\n
Search through all templates when adding a new page: go to Pages and click Create New Page to see the list of available templates
\n
\n
\n
Drag Block to Page panel
\n
\n
Search through all Mobirise blocks
\n
\n
\n
\n
Added Show More buttons at the end of each blocks' group
\n
\n
\n
\n
Updated block groups (added new block groups, renamed and sorted the old ones) for free Mobirise themes
\n
Added shadows to the show more blocks button on hover
\n
Added new blocks categories to default themes, fixed the search for similar blocks
\n
\n
Domain connection
\n
\n
Updated DNS records: new DNS record types available
\n
Connecting domain via CNAME record added
\n
\n
Extensions panel
\n
\n
Added Add All button
\n
\n
\n
Code Editor
\n
\n
Highlight matching tags in HTML
\n
\n
\n
Icons
\n
\n
SVG icons instead of iconfont files in pages to improve loading speed
\n
\n
Other updates
\n
\n
Improved loading speed of user sites by optimized connection of Google Fonts
\n
If there is something wrong with the project code, you'll see a note about an issue
\n
\n
Themes
\n
Mobirise 5
\n
\n
Added compatibility with the Form Builder extension
\n
Fixes for alignment on mobile devices
\n
Fixes for logo images in the navbar
\n
Fixed the scroll-to-top arrow on mobile view
\n
Added paddings to the logo in the menu
\n
Socicon plugin font now supports \"font-display: swap\" for better optimization
\n
Fixed menu brand name underline
\n
New block categories
\n
\n
AudioM4
\n
\n
Features 3, 4, 6: Changed background images to usual img, to have an opportunity to insert link on image
\n
Features 4, 6: Added the ability to disable swinging and glare animation
\n
Added square cards option (square music album covers are the industry standard)
\n
Added range parameter to change size of cover
\n
Added buttons option (if all animation is enabled, there may be problems with following the link in the image, despite the accepted changes)
\n
\n
LuxuryM4
\n
\n
Fixed incompatibility issues with Mobirise 5
\n
Fixed broken logos in the menu
\n
Aligning pictures in team2
\n
Moving the send button in form1 and form3, an extra once global attributes in form 2
\n
\n
BusinessM4
\n
\n
Fixed images in Clients1
\n
Renamed all images in clients-white folder, to avoid intersections with images from clients folder after publication or preview
\n
\n
TherapyM4
\n
\n
Fixed team2 uneditable card content
\n
Added pointer-events rules, to be able to edit the text and link that appear on image hover
\n
\n
KidsM4
\n
\n
Fixes for options for menu background & text color option on mobile
\n
\n
ConnectM4
\n
\n
Reduced resolution to upscale the font-size from 1200 to 1199px and 992 to 991px
\n
\n
KidsM4 & AgencyM4
\n
\n
Fixed incompatibility issues with Mobirise 5, fixed the codestyle and menu, added theme classes
\n
\n
LightAMP
\n
\n
Fixed bugs in menus
\n
\n
Fixes
\n
\n
Github publishing method fixed
\n
Fixed and updated DNS records: new DNS record types available
\n
Extensions panel - fixed the search
\n
Fixed the position for the custom HTML block
\n
Fixes for the theme installation when choosing an unavailable theme
\n
App Settings - fixed saving Remove Mobirise from HTML setting
\n
Link-editor: fixed shop links in AMP themes
\n
Fixes for the fonts connection issue
\n
\n
Mobirise 5.2
\n
Core
\n
\n
Bootstrap version updated in the app to 4.5.2
\n
Electron version updated in the app to v10
\n
\n
Interface
\n
\n
New Blocks Menu panel. Browse through blocks more conveniently due to the enlarged page view
\n
\n
\n
\n
Spellchecker: check and correct mistakes directly in the app
\n
Add Blocks List: all compatible blocks are available w/o theme reloading and user blocks. Select a compatible theme to see a blocks list
\n
\n
\n
\n
Pages List: Search available
\n
\n
\n
\n
You can download all the extensions available for you. Open the Extensions list and press Ctrl+Shift+A
\n
Don't show again option for remove block, create site and open site dialogs.
\n
Updated Remove Unused Images
\n
Faster Sites panel
\n
\n
Mobirise 5 theme
\n
\n
Ghost Button Border option in Site Styles
\n
5 new blocks - headers and footers
\n
Logo Size option for footers
\n
Fixes in some block designs
\n
Fix with tab anchor renaming
\n
Duplicated code and CSS removed
\n
Some fixes in block designs
\n
\n
Fixes
\n
\n
Fix in Code Editor \"click twice to save\"
\n
Fix for \"Social Sharing Image\"
\n
Fix for sorting blocks
\n
Google maps fix
\n
Code syntax verification fix in Code Editor
\n
Fix for custom HTML in M3
\n
\n
Mobirise 5.0
\n
Core
\n
\n
Brand-new engine. The app is upto 2 time faster, especially on large projects.
\n
Bootstrap version updated in the app to 4.5.0
\n
jQuery version updated in the app to v3.5.1
\n
Themes can be added faster (the app is not reloading if the theme is not current)
\n
\n
Interface
\n
\n
Light/Dark mode. The Light mode is enabled by default in the app now. But if it's more comfortable for your to use the dark mode, open app settings (Menu -> Account -> App Settings -> Editor -> Dark Mode)
\n
The Remove Unused Images button added in Site Library.
\n
Sites published on Mobirise servers are shown in the Sites list now. If you remove them, they will not be available online anymore
\n
New Sites panel available in the app. Now it's in a full-screen mode
\n
Image Editor: New function in Image Editor: Rotate
\n
Favicon and page name are shown in navbar
\n
Canvas with borders. You can disable this feature in your app settings (Menu -> Account -> App Settings -> Editor -> Fullscreen Canvas).
\n
You can connect your site domain with the site published via the Mobirise Publish option. Find this feature in your Site Settings after publishing your site.
\n
\n
\nNew Sites List view available in Mobirise 5\n
\nYou can enable Dark Mode in App Settings\n
\nYou can disable your project borders by enabling the Fullscreen Canvas option\n
\nClear your site library by removing images you don't use in a project\n
\nThe site domain settings will appear in your Site Settings after publishing your site via the Mobirise Publish option\n
Fixes
\n
\n
Saving user blocks is fixed
\n
AMP Cache issue fixed. Earlier some of our users faced some issues with AMP blocks: galleries, sliders, accordions were not usable because of saved cached files. There was no simple way to clear the cache folder. This issue is fixed now.
\n
Sliders and Galleries optimized in the app. This fix may not affect already created galleries, but new galleries and sliders should work faster
\n
Mobirise 4 Theme: youtu.be links are supported, forms are cleared after submitting, gallery and form fixes
\n
MobiriseAMP Theme: update menu, fixed 'scroll to top button'
\n
Issue with $ symbols cleared is fixed
\n
Parallax fixes
\n
Link Editor: WhatsApp link fixed
\n
Form Builder fixes
\n
Google Maps fixed
\n
\n
Extensions
\n
\n
Code Editor: Global HTML Insert available in Site Settings. You can add the HTML lang tag in it and add code snippets to the various parts of your pages. Since this feature is global, your code will be added to all pages in your project.
\n
New default theme available in the app: Mobirise 5. Start a new project and select the Mobirise 5 theme to check it.
\n
\n
\nInstall the Code Editor extension to find the Global HTML Insert tab in Site Settings\n
Mobirise v4.12.4
\n
\n
LazyLoad Extension fixes
\n
Social Icons are updated
\n
Form Builder Small fixes
\n
youtu.be links are supported now
\n
Fixed saving the Resize Images site setting
\n
Minor fixes
\n
\n
Mobirise v4.12
\n
\n
Important: After the 4.12 is installed, update your extensions in \"Menu->Extensions->Update All\" and then restart the Mobirise
\n
Compatibility with MacOs Catalina
\n
FTP profile is filled from a project file
\n
User Blocks search added
\n
Issues with project import/export with different fonts fixed
\n
Fixed saving the Resize Images site setting
\n
Blockpack for M4
\n
Minor fixes
\n
\n
DinerM4
\n
\n
DinerM4 - Great Bootstrap cafe theme. It's the perfect choice for owners of pizzerie, tea-houses, cafeterias and other restaurants.
\n
\n
\n
AudioM4
\n
\n
AudioM4 - Need a stunning website for your songs? Feel free to use this exceptional music theme with great looking designs!
\n
\n
\n
BlockPack for M4
\n
\n
BlockPack for M4 - 350+ best and most unique blocks from premium Mobirise themes. Compatible with all M4 themes.
\n
\n
\n
InnovationAMP
\n
\n
InnovationAMP - Multipurpose theme for corporate and science websites. Let your future website look innovative and ultra-modern!
\n
\n
\n
BranchM4
\n
\n
BranchM4 - Well-designed corporate theme for small and medium businesses. Use this theme to create a website for your company or agency with a unique and professional look.
\n
\n
\n
KidsM4 Theme
\n
\n
KidsM4 Theme - A cute website template perfect for preschools and babysitting. It also suits online stores selling children clothes and toys. Create a kids related site with ease!
\n
\n
\n
PetsM4 Theme
\n
\n
PetsM4 Theme - Contemporary pets website template. It's the ideal choice for animal care organizations, veterinarians and animal clinics.
\n
\n
\n
Mobirise v4.11.5
\n
\n
Issue with images in AMP themes fixed
\n
M4 themes are updates with fixes for gallery and shop block filters
\n
\n
Mobirise v4.11.4
\n
\n
Cookies Alert update: added the 'Explicit Consent' option which creates a cookie modal
\n
Mobirise4 Theme: fix color change for 'table1' block
\n
Editing galleries fixed
\n
The LazyLoad extension is available
\n
\n
\n
CourseAMP Theme
\n
\n
CourseAMP Theme - Sleek courses website theme spiced up with nice-looking designs and exciting animations. It's the best fit for online schools and web courses\nLive Demos: University, Consulting.
\n
\n
\n
Mobirise v4.11.2
\n
\n
Update of Code Editor extension. New features: Edit Block Anchor, Edit Site Styles.
\n
Edit user block name
\n
Choose a Social sharing image
\n
New Site Settings interface
\n
Fixed saving Site Styles
\n
Fixed publish Popup Builder on several pages in amp themes
\n
Fixed captcha
\n
Mobirise4 theme: fixed gallery styles, fixed line height
\n
\n
LuxuryM4 Theme
\n
\n
LuxuryM4 Theme - Wish to impress clients with your online luxury store? Easily create one in no longer than a few hours with this exclusive theme.
\n
\n
\n
TrainingAMP Theme
\n
\n
TrainingAMP Theme - Creating a great website for sport gyms, workout clubs and individual sportsmen with this website theme is just like 123. Start your own sport website with ease!
\n
\n
\n
InsightAMP Theme
\n
\n
InsightAMP Theme - Impressive corporate template for creating clean and minimalist websites for any kind of business. Increase yur brand exposure with this creative template.
\n
\n
\n
Mobirise v4.10.10
\n
\n
FormBuilder updated: The reCAPTCHA label support
\n
PWA Builder updated: iOS Support
\n
M4 optimization
\n
Facebook authorization fixed for Social Feed (partly)
\n
\n
PhotoM4 Theme
\n
\n
PhotoM4 Theme - Ideal theme for professional and hobby photographers. Build a stylish and clean website to impress anyone with beautiful galleries and portfolios.
\n
\n
\n
WoodM4 Theme
\n
\n
WoodM4 Theme - Have a carpentry shop, forestry manufacture or timber company? This theme helps you present your woodworks excellently.
\n
\n
\n
Mobirise v4.10.8
\n
\n
Form Builder updated. reCAPTCHA support and form submissions w/o the Mobirise label. More info
\n
Countdown blocks updated: floating point numbers supported now
\n
The issue with adding global components fixed
\n
\n
\n
Mobirise v4.10.7
\n
\n
Mobirise AMP: new slider block with bullets, new manager for galleries and sliders, you can select the link type now: to full screen image or to your link
\n
Page Settings: preview of your page in Google Search
\n
Remove unused CSS for AMP: fixes
\n
Batch adding images to gallery: fixes
\n
Mobirise Publish: now you can publish sites made in M themes
\n
Fixes for shop blocks
\n
\n
\n
PersonaM4 Theme
\n
\n
PersonaM4 Theme - A modern and lovely Bootstrap theme for creatives, freelancers, professionals, and creative studios.
\n
\n
\n
CorporateAMP Theme
\n
\n
CorporateAMP Theme - A minimalistic and laconic AMP theme for brands and digital agencies.
\n
\n
\n
ShopAMP Theme
\n
\n
ShopAMP Theme - An easy-to-use multipurpose AMP theme for creating websites to promote and offer every kind of services online.
\n
\n
\n
DepotAMP Theme
\n
\n
DepotAMP Theme - This elegant theme is perfect for stores to showcase goods, inform about discounts, present prices, and highlight special offers.
\n
\n
\n
Mobirise v4.10.6
\n
\n
Templates for sites are available in the app now
\n
Placeholder on empty pages
\n
The Search field in the Extensions list added
\n
The Crop Image functionality fixed
\n
Global blocks can be added on all pages and removed from all pages
\n
Code Editor is available offline for a longer time
\n
Popup Builder improvements: created popup blocks are available on all pages, minor fixes
\n
\n
\n
\n
Mobirise v4.10.5
\n
\n
Link Editor updated: messenger link types are added
\n
New thumbnails for extensions, the Create New Site dialog is updated
\n
Image crop feature updated, fixed for jpg images
\n
Fixed disappearing parameter buttons in top right corner of block
\n
Minor fixes for Mobirise4
\n
Fix update style of global component\nExtensions:
\n
PayPal Shopping Cart is updated: new look
\n
TechM4: new blocks, update for an accordion block
\n
PoliticsM4: reverse block feature for a team block
\n
Bug fixes in SimpleAMP, BusinessM4, AgencyM4
\n
\n
\n
\n
Mobirise v4.10.4
\n
\n
Editing extension blocks in M themes fixed (for example, popup builder)
\n
The menu fix in the MobiriseAMP theme
\n
The dropdown menu fix in M4 themes
\n
The gallery now keeps images in User Blocks
\n
The Extensions list is updated
\n
\n
Popup Builder
\n
\n
Create a modal/popup/lightbox with text, image, video, form. Live demo
PoliticsM4 Theme - If you represent a party, candidate, political organization or social movement, this theme will be your best match. It's perfect for government sites, campaign pages and other political websites.
\n
\n
\n
IndustryM4 Theme
\n
\n
IndustryM4 Theme - An eye-catching industrial website theme. Promote your company services and advertise your industrial business with a professionally built website.
\n
\n
\n
Mobirise v4.10.1
\n
\n
Site Library is optimized (it should work much faster now)
\n
Form fixes: the app doesn't hang if the long email addresses are used, forms work correctly in IE, minor fixes
\n
Issue with duplicating IDs on cloned pages fixed
\n
Mobirise 4 theme fixes: background video, features blocks
\n
Batch images adding: small fixes
\n
Smooth scroll fixed for M and M4 themes
\n
\n
Mobirise v4.10
\n
\n
Code Editor improvements
\n
Reverse mode for timeline blocks
\n
Remove unused CSS from AMP pages. This option is available in Site Settings. It noticeably reduces the number of CSS rules on a page and makes the size of inline CSS smaller. CSS you use on your page should not be larger than 50,000 bytes. Otherwise, pages are not AMP-valid. Use the option if you have many blocks on your pages. Please check carefully if your page elements are displayed correctly with this option enabled.
\n
\n
\n
\n
Bug fixes: menu block fixes; the active undo button in new projects disabled; italic/bold text color is preserved now; '$1' is shown after publication; lightbox incorrect size fixed; the reveal effect in Mobirise 4 footers is disabled for IE; images renaming fixed when use batch adding and 'Resize Images' turned off; other minor fixed.
\n
\n
TechM4 Theme
\n
\n
TechM4 Theme - This theme helps you build a powerful online presence for your tech business. Save time and effort when creating a top-notch website for your tech company.
\n
\n
\n
CompanyAMP Theme
\n
\n
CompanyAMP Theme - Stylish and universal theme for any type of companies. When building your company landing page, consider this captivating theme that sparks everyone's interest.
\n
\n
\n
SimpleAMP Theme
\n
\n
SimpleAMP Theme - Сreate neat and trim websites for service agencies, shops, and creatives. This mutipurpose template contains more than 50 various blocks.
\n
\n
\n
TasteM4 Theme
\n
\n
TasteM4 Theme is a fantastic and flexible clothing website theme. Benefit from the ready-made layouts. Build a website to your taste and present your brand in the best possible way.
\n
\n
\n
Mobirise v4.9.7
\n
\n
Extensions Social Feed, SoundCloud, Facebook Comments supported in AMP themes
\n
Online Image Library now saves the last active tab
\n
All themes are updated: small fixes and new FormBuilder extension support
\n
\n
FormBuilder Extension
\n
Use the drag-n-drop builder to draw up the form you want. Learn more
\n
\n
Create forms with complex layout, set the width of form fields
\n
Add your own labels, placeholders, default values, and input patterns
\n
Use the built-in Mobirise solution to receive submissions or use your own Action URL
\n
\n
\n
Mobirise v4.9.5
\n
\n
New \"Add Block\" panel: now with block categories
\n
\n
\n
\n
Online Image Library: enlarged preview on hover
\n
\n
\n
\n
Updated Mobirise4 and MobiriseAMP themes: fixes, new blocks
\n
Code Editor: fixed inserting scripts to custom HTML block
\n
Fix for menus (scroll-line on mobile view)
\n
Fixed tags in image galleries
\n
\n
Mobirise v4.9.3
\n
\n
'Update All' button for extensions with a progress bar
\n
\n
\n
\n
Adding images by drag and drop in Image Media
\n
\n
\n
\n
Adding multiple images at once to sliders and galleries (non-AMP themes)
\n
Updated M4 themes to latest Bootstrap v4.2.1
\n
Updated free MobiriseAMP theme - 20 new blocks: gallery, slider, accordion, contact forms, testimonials, google maps.
\n
Code Editor loading speed improved
\n
Bug fixes for Google Maps
\n
Fixes for editing menu colors
\n
Fixes with page cloning
\n
\n
LifestyleAMP Theme
\n
\n
LifestyleAMP Theme - Easily create a personal, fashion, relationshop and lifestyle website that will be a real eye candy and inspiration for everyone.
\n
\n
\n
WorkshopAMP Theme
\n
\n
WorkshopAMP Theme - If you offer repair services and have a workshop, this is the right theme for you.
\n
\n
\n
GamingAMP Theme
\n
\n
GamingAMP Theme is a dark and neat design will excite and entertain every video game fan that visits your website.
\n
\n
\n
Mobirise v4.9.1
\n
\n
Code Editor update:
\n
Mobirise mentions removal - clear the HTML code from \"made with Mobirise\" etc..
\n
New color schemes - light and contrast
\n
Undo-Redo buttons
\n
\n
\n
\n
PayPal Shopping Cart update:
\n
Support for AMP themes
\n
Subscribe and Donate options
\n
Info on \"How to add shipping, VAT, and tax.\"
\n
\n
\n
\n
Mobirise 4 default theme update: 15 new blocks, fixes
\n
AMP Canonical URL for AMP sites. Menu -> Sites -> Site Settings.
\n
Bug Fixes
\n
\n
StrategyAMP Theme
\n
\n
StrategyAMP is a solid, informative, laconic and smart template for strategies of any business spheres: design, content, social media, sales, and business development. It is also suitable for consulting agencies to present services and make them plain and attractive for clients.
\n
\n
\n
ChurchAMP Theme
\n
\n
ChurchAMP is a modern theme designed for churches and religious movements around the world. It is also suitable for creating a charity or charitable foundation website.
\n
\n
\n
Mobirise v4.8.6
\n
\n
Mobirise Icons are available for AMP themes now
\n
Mobirise 2 Icons added
\n
\n
\n
Mobirise v4.8.4
\n
\n
Publishing issues fixed
\n
Scroll-to-top button issues fixed
\n
Minor bug fixes
\n
\n
AppAMP Theme
\n
\n
AppAMP is a neat AMP theme best suited for landing pages showcasing your mobile and desktop apps.
\n
\n
\n
ConsultingAMP Theme
\n
\n
ConsultingAMP - an exclusive AMP theme to create a site for consulting and other professional services.
New Publish option allows you to put the site online with a single click, to be viewed by the public with your subdomain at mobirisesite.com\nWhat's included:
Lightning-fast global CDN (Content Delivery Network)
\n
Unlimited pages
\n
Unlimited space and bandwidth\nIMPORTANT! Currently this option is in beta status - please use it for testing only. The subdomains can be removed without a notice.
\n
\n
\n
SchoolAMP Theme
\n
\n
SchoolAMP - A trendy and neat looking theme for online schools. Use this theme to create a website for your school, courses, online lessons, and other educational services.
\n
\n
\n
EducationM4 Theme
\n
\n
EducationM4 - A flexible and modern educational theme. It is suitable for schools, colleges, online courses, and other educational institutions.
\n
\n
\n
RealtyM4 Theme
\n
\n
RealtyM4 Theme - An ultimate and modern real estate theme. It fulfills needs of realtors, agencies, real estate holdings when it comes to creating responsive and versatile websites to sell properties online.
\n
\n
\n
OrganicAMP Theme
\n
\n
OrganicAMP Theme - Mouth-watering and trendy AMP theme for building online food stores. It's ideal for launching vegetarian food shops, cooking websites and healthy nutrition pages.
\n
\n
\n
Mobirise v4.7.8
\n
\n
Bug Fixes for AMP Themes: video autoplay, map layout, video lightbox.
\n
\n
ResumeAMP Theme
\n
\n
ResumeAMP Theme - Lovely and creative AMP theme for creating online resumes. It is great for starting online profiles and portfolios.
\n
\n
\n
WeddingAMP Theme
\n
\n
WeddingAMP Theme - The lovely AMP theme for weddings, celebrations, and event planners.
ArchitectAMP - The AMP theme for architectural building, exterior design, and construction business owners.
\n
\n
\n
Mobirise v4.7.7
\n
\n
Improved app loading
\n
Fixed inserting icons in menu in m3 themes
\n
Fixed and updated translations
\n
Fixed disappearance of text placeholders
\n
Select all text on first click
\n
Fixed font dropdown panel height
\n
\n
Mobirise v4.7.6
\n
\n
Improved block reordering and dragging
\n
Bug fixes for projects loading
\n
AMP themes support improved
\n
Image optimization improved
\n
Updated translations: Spanish, Greek, Hungarian, Polish, Italian
\n
Updated login/signup dialog
\n
Minor bug fixes
\n
Mobirise for Android (works on Android 4.4+)
\n
\n
\n
HandymanAMP Theme
\n
\n
HandymanAMP Theme - Perfect theme for plumber or electrician, painter or similar craftsman, construction, handyman, carpenter, craftsman workshop or repair business website. AMP themes are compatible, and you can use blocks from HandymanAMP in other AMP themes provided by Mobirise. Ready site demos: Cleaning Services, Dream House, Repair Services.
\n
\n
\n
BeautyAMP Theme
\n
\n
BeautyAMP Theme - AMP theme for beauty studios, barber shops, tattoo salons, massage parlors, and gyms.
\n
\n
\n
SoundAMP Theme
\n
\n
SoundAMP Theme - The AMP theme for music industry sites. A great choice to present music producers, DJs, singers, record studions, music labels, bands and grounps, sound pros.
\n
\n
\n
Mobirise v4.7.2
\n
\n
Cookie Alert Extension updated - now it is \"Cookie Alert and GDPR Compliance\" - After activating GDPR compliance, all web forms on your website will have checkbox for agreeing to your Terms and Privacy Policy.
\n
Code Editor Extension updated - some fixes
\n
Different fixes in translation engine
\n
New AMP themes - StartupAMP and SpaceAMP
\n
\n
StartupAMP Theme
\n
\n
StartupAMP Theme - AMP theme for startup websites with rounded corners and deep gradient colors. View demo templates: Best Mobile App, Co-working Template, Business School Template.\nCheck available blocks: headers, features, tabs and accordions, content blocks, sliders and videos, social blocks and maps, footers.
\n
\n
\n
SpaceAMP Theme
\n
\n
SpaceAMP Theme - Clean and spacious AMP theme with 60+ slick blocks. View demo templates: Apartments for Sale, Beauty Salon, Health Food Store.\nCheck available blocks: headers, subscribe and form blocks, social blocks, map blocks, footer blocks, content blocks, text and titles blocks, news and team blocks, progress bars, accordions, counters and pricing tables, images, sliders, and video blocks.
\n
\n
\n
Mobirise v4.7.1
\n
\n
Scroll to top Button Issue fixed
\n
Images publication issue fixed
\n
\n
LightAMP Theme
\n
\n
LightAMP Theme - Large set of beautiful AMP blocks including sliders, timelines, lightboxes, tables, and media blocks. Based on AMP and compatible with other AMP themes in Mobirise. View demo templates: Interior Design, Dance School, Riding School.\nCheck available blocks: headers, menus, images & videos, features, articles, forms & maps, pricing tables, toggles & accordions, and footers.
\n
\n
\n
EventAMP Theme
\n
\n
EventAMP Theme - AMP-based remake of popular Mobirise3 theme. Good to promote your special events, meetings, presentations. View demo templates: Horizon Festival, Business Meet Up, Culinary Master Class.\nView blocks demos.
BusinessM4 Theme - Clean, light, responsive theme with gradients and shadows. Build websites to present your business and many more. BusinessM4 is compatible with Mobirise 4 Themes. View demo templates: Creative agency, Travel Agency. Check available blocks: headers, menus, images & videos, features, articles, call to action blocks, team blocks, forms & maps, pricing tables, clients & partners blocks, tabs & accordions, and footers.
\n
\n
\n
Mobirise v4.6.5
\n
\n
Bug fixes: Issue with missing projects fixed; Issue with missing user blocks fixed; Mobirise 3: sliders; Alignment in AgencyM4 and LawyerM4; Text style for forms in StoreM4
\n
Languages: Polish
\n
\n
CommerceM4 Theme
\n
\n
CommerceM4 Theme - A nice Bootstrap theme for commercial websites with some blocks to sell products. Present yourself, your products, your services, and your team. CommerceM4 is compatible with Mobirise 4 Themes. View demo templates: Cafe Demo, Shoes Demo, Headphones Demo. Check available blocks: headers, menus,images & videos, sliders & galleries, shops, features, content blocks, info blocks, team blocks and testimonials, forms & maps, pricing tables and tables, social blocks, countdowns & accordions, footers.
\n
\n
\n
HotelM4 Theme
\n
\n
HotelM4 Theme - Bootstrap theme for hotel and resort websites. HotelM4 is an M4 compatible theme. View live demos: menus, headers, features, images and videos, sliders and galleries, content blocks, forms, pricing tables, testimonials and team blocks, toggles and accordions, maps, info blocks, footers.
\n
\n
\n
Mobirise v4.6.0
\n
\n
Hotkey: if your Sites list is empty, you can load the list of previously used projects: open your Sites list and press Ctrl+Shift+L when it opened.
\n
Mobirise Translator extension: you can translate Mobirise interface to your language and share your translations with other users.
\n
\n
Mobirise AMP
\n
Mobirise AMP Theme - accelerate your site with Google AMP. Check AMP theme components demos: headers, images & videos, testimonials & info, features, articles, maps & social, footers.
\n
\n
Mobirise v4.5.0
\n
\n
Translation: German
\n
Bug fixes for saving User blocks
\n
Bug fixes for themes: Blockpack for Mobirise 3, AgencyM4, PortfolioM4, LawyerM4, DirectM, SpaceM\nTo change the interface language, open the main menu in the app, select the Account tab, and open App Settings.
\n
\n
\n
Mobirise v4.4.0
\n
\n
Now you can crop images right in Mobirise application
\n
Fixed compatibility with Internet Explorer in Mobirise 4 theme
\n
\n
\n
\n
Mobirise v4.3.5
\n
\n
StoreM4 Bootstrap Theme
\n
App Settings: \"Show All Block Buttons\" option added
\n
Bug Fixes:
\n
Mobirise4 Theme: Fix for counters
\n
Gallery Video - fixed youtube thumbnails in Mobirise 3 and Mobirise 4 compatible themes
\n
Links - fixed long domain in web address
\n
\n
StoreM4 Bootstrap Theme - spacious, clean and attractive ecommerce theme designed mainly for stores. 80+ blocks for your new online shop. This theme includes several menu blocks, headers, sliders and galleries, shops, content and info sections, pricing tables, testimonials, team blocks and more. StoreM4 is compatible with Mobirise 4 themes - you can interchange user blocks between your projects.
\n
\n
Mobirise v4.3.4
\n
\n
Facebook and Google Authorization: Now you can sign up using your Google and Facebook accounts.
\n
Clone Sites - clone not only pages, but also entire sites.
\n
App settings - open your Menu->Account->App settings to adjust your app settings: show the redo button, the tablet view mode, keep the Site Styles button shown.
\n
FTP publishing fixes
\n
Mobirise Help Center - visit our Help Center if you have some issues, and if you can't find a solution, you can visit our forums or contact our Support Team.
\n
\n
\n
\n
\n
\n
PortfolioM4 Bootstrap Theme - Modern and bright theme to present your projects - for designers, illustrators, artists, and developers. Comes with moving background intro, \"typed\" effect, step-by-step process, our clients, portfoilio gallery, counters, about me blocks. PortfolioM4 is compatible with Mobirise 4 themes - you can interchange user blocks between your projects.
\n
\n
\n
Mobirise v4.3.1
\n
\n
Built-in \"Mobirise Icons Bold\" icon font
\n
\"Icons\" extension updated. Now 8700+ icons total
\n
New fonts: Icon54 v.3, Icon54 v.4, Simple Line Icons, \"Font Awesome\" updated
\n
Site Library:\nFixed bug with removing images that are used on site\nFixed hanging\nFixed bug with duplication of images
\n
Mobirise4: fixed bug with buttons in 'pricing tables'
\n
Fixed vimeo thumbnails in gallery
\n
\"Link to\" dialog: \"open in new window\" is added to the \"file\" tab
\n
\n
Mobirise v4.3.0
\n
\n
New \"Link to\" dialog with: Option to add files to site and link them (pdf, doc, xls, etc..); Email; Phone; Web Address
\n
Updated PayPal Shopping Cart
\n
Fixed duplicated images on publishing
\n
Minor fixes
\n
LawyerM4 Bootstrap Theme - Dark, minimal and tidy theme for lawyers, legal firms, attorneys and related legal professionals. LawyerM4 is compatible with Mobirise 4 themes - you can interchange user blocks between your projects.
New AgencyM4 Theme. Theme for companies and agencies with 70+ blocks. New gradient overlays, working hours sections, and an extended set of dropdown menus and intro sections. AgencyM4 is compatible with Mobirise 4 Theme: you can move Mobirise4 and AgencyM4 user blocks between your projects.
\n
WOW Slider extension fixed
\n
Extensions updated – Social Feed, Social Comments, SoundCloud
\n
Compatibility issue with some 3rd-party themes fixed (Clarus, Sleek, Unicore..)
\n
Site thumbnail creation fixed
\n
Fix: WOWSlider extension
\n
Update: Home pages in Italian (please contact at support@mobirise.com if you find mistakes in texts)
Bootstrap updated to latest v4.0.0-beta (for Mobirise4 theme only)
\n
Fix: Fonts crush on start
\n
Fix: Bug in images publishing
\n
Fix: Parameters in extension blocks
\n
Fix: WOWSlider extension
\n
Update: Home pages in Chinese, Slovak, Polish, French, Albanian, Finnish, Swedish, Japanese, Portugal (please contact at support@mobirise.com if you find mistakes in texts)
\n
\n
Mobirise v4.1.6
\n
Search by font name in Google font library
\n
\n
Fix: \"Browse computer for image\" doesn't save last dir
\n
Fix: Hot key COPY/PASTE on Mac
\n
Fix: \"Clone page\" doesn't work with some blocks
\n
Fix: Rubik Google font bug on Windows
\n
Update: Home pages in German, Spanish, Danish, Norwegian, Dutch, Russian (please contact at support@mobirise.com if you find mistakes in texts)
\n
\n
Mobirise v4.1
\n
\n
Brand-new core engine - the app works much faster and smoother now
Bootstrap website builder makes it very easy to prototype, test, and build a custom responsive website quickly, without having to understand the Bootstrap framework system. They, although different in capabilities, all offer a form of drag-and-drop functionality that fully utilizes the enormous library of Bootstrap’s components.\n\n\n
Adding a css image gallery to your website does not need to be difficult or time-consuming. There are a wide range of options to choose from, whether you opt to go with the standard html5 image gallery, to customize it using one of a wide-range of plugins and tutorials or if you opt for Mobirise’s drag-and-drop builder. Good luck with your website!\n\n\n
The bootstrap image slider component that comes with the bootstrap framework is a lightweight carousel which uses JavaScript. It’s a standards-compliant piece of functionality, with a clean design that will fit easily into any website. It’s also easy to modify and extend with additional functionality such as CSS3 animations and more.\n\n\n
Today you are able to use different techniques and tools, from using an open-source CMS such as WordPress along with a free theme, to using website building software.\nMobirise is one such website builder. Website software has a few advantages over a CMS...\n\n\n
\n
Drag and drop website builder
\n
Make your own mobile website in minutes! Mobirise helps you cut down development time by providing you with a flexible website editor with a drag and drop interface.
\n
Live preview
\n
See the result instantly without a need to save or export!
\n
Modern styles
\n
Mobirise has provided for website developers a growing library of modern blocks which can be used either partially or in full for every website developed through the builder.
\n
Bootstrap 3
\n
Bootstrap 3 has been noted as one of the most reliable and proven frameworks and Mobirise has been equipped to develop websites using this framework.
\n
Create a beautiful website.
\n
Whether you want to create a blog, eCommerce store, portfolio, or all of the above, you can express your idea with a website powered by our elegant yet intuitive platform.
Bootstrap website builder makes it very easy to prototype, test, and build a custom responsive website quickly, without having to understand the Bootstrap framework system. They, although different in capabilities, all offer a form of drag-and-drop functionality that fully utilizes the enormous library of Bootstrap’s components.\n\n\n
Adding a css image gallery to your website does not need to be difficult or time-consuming. There are a wide range of options to choose from, whether you opt to go with the standard html5 image gallery, to customize it using one of a wide-range of plugins and tutorials or if you opt for Mobirise’s drag-and-drop builder. Good luck with your website!\n\n\n
The bootstrap image slider component that comes with the bootstrap framework is a lightweight carousel which uses JavaScript. It’s a standards-compliant piece of functionality, with a clean design that will fit easily into any website. It’s also easy to modify and extend with additional functionality such as CSS3 animations and more.\n\n\n
Today you are able to use different techniques and tools, from using an open-source CMS such as WordPress along with a free theme, to using website building software.\nMobirise is one such website builder. Website software has a few advantages over a CMS...\n\n\n
\n
Drag and drop website builder
\n
Make your own mobile website in minutes! Mobirise helps you cut down development time by providing you with a flexible website editor with a drag and drop interface.
\n
Live preview
\n
See the result instantly without a need to save or export!
\n
Modern styles
\n
Mobirise has provided for website developers a growing library of modern blocks which can be used either partially or in full for every website developed through the builder.
\n
Bootstrap 3
\n
Bootstrap 3 has been noted as one of the most reliable and proven frameworks and Mobirise has been equipped to develop websites using this framework.
\n
Create a beautiful website.
\n
Whether you want to create a blog, eCommerce store, portfolio, or all of the above, you can express your idea with a website powered by our elegant yet intuitive platform.
It is recommended to install Motrix using the installation package (Motrix-Setup-x.y.z.exe) to ensure a complete experience, such as associating torrent files, capturing magnet links, etc.
\n
If you use package management tools to manage applications on Windows, such as Chocolatey, scoop. You can use them to install Motrix.
\n
Chocolatey
\n
Thanks to @Yato for continuing to maintain the Motrix Chocolatey package. To install motrix, run the following command from the command line or from PowerShell:
If you prefer the portable version, you can use scoop (need Windows 7+) to install Motrix.
\n
scoop bucket add extras\nscoop install motrix
\n
macOS
\n
The macOS users can install Motrix using brew cask, thanks to PR of @Mitscherlich.
\n
brew update && brew install --cask motrix
\n
Linux
\n
You can download the AppImage (for all Linux distributions) or snap to install Motrix, see GitHub/release for more Linux installation package formats.
\n
Motrix may need to run with sudo for the first time in Linux because there is no permission to create the download session file (/var/cache/aria2.session).
\n
If you want to build from source code, please read the Build section.
\n
AppImage
\n
The latest version of Motrix AppImage requires you to manually perform desktop integration. Please check the documentation of AppImageLauncher .
\n
\n
Desktop Integration\nSince electron-builder 21 desktop integration is not a part of produced AppImage file.\nAppImageLauncher is the recommended way to integrate AppImages.
\n
\n
Deepin 20 Beta users failed to install Motrix, please follow the steps below:
\n
Open the Terminal, paste and run the following command to install Motrix again.
\n
sudo apt --fix-broken install
\n
Snap
\n
Motrix has been listed on Snapcraft , Ubuntu users recommend downloading from the Snap Store.
\n
Tips for v1.5.10
\n
The tray may not display the indicator normally, which makes it inconvenient to exit the application.
\n
Please unchecked Preferences--Basic Settings--Hide App Menu (Windows & Linux Only), click Save & Apply. Then click \"Exit\" in the File menu to exit the application.
\n
Please update to v1.5.12 and above, you can use the keyboard shortcut Ctrl + q to quickly exit the application.
\n
AUR
\n
For Arch Linux users, Motrix is available in aur, thanks to the maintainer @weearc.
\n
Run the following command to install:
\n
yay motrix
\n
Flatpak
\n
Thanks to the PR of @proletarius101, Motrix has been listed Flathub, Linux users who like the Flatpak can try it.
\n
# Install\nflatpak install flathub net.agalwood.Motrix\n\n# Run\nflatpak run net.agalwood.Motrix
\n
✨ Features
\n
\n
🕹 Simple and clear user interface
\n
🦄 Supports BitTorrent & Magnet
\n
☑️ BitTorrent selective download
\n
📡 Update tracker list every day automatically
\n
🔌 UPnP & NAT-PMP Port Mapping
\n
🎛 Up to 10 concurrent download tasks
\n
🚀 Supports 64 threads in a single task
\n
🚥 Supports speed limit
\n
🕶 Mock User-Agent
\n
🔔 Download completed Notification
\n
💻 Ready for Touch Bar (Mac only)
\n
🤖 Resident system tray for quick operation
\n
📟 Tray speed meter displays real-time speed (Mac only)
\n
🌑 Dark mode
\n
🗑 Delete related files when removing tasks (optional)
It is recommended to install Motrix using the installation package (Motrix-Setup-x.y.z.exe) to ensure a complete experience, such as associating torrent files, capturing magnet links, etc.
\n
If you use package management tools to manage applications on Windows, such as Chocolatey, scoop. You can use them to install Motrix.
\n
Chocolatey
\n
Thanks to @Yato for continuing to maintain the Motrix Chocolatey package. To install motrix, run the following command from the command line or from PowerShell:
If you prefer the portable version, you can use scoop (need Windows 7+) to install Motrix.
\n
scoop bucket add extras\nscoop install motrix
\n
macOS
\n
The macOS users can install Motrix using brew cask, thanks to PR of @Mitscherlich.
\n
brew update && brew install --cask motrix
\n
Linux
\n
You can download the AppImage (for all Linux distributions) or snap to install Motrix, see GitHub/release for more Linux installation package formats.
\n
Motrix may need to run with sudo for the first time in Linux because there is no permission to create the download session file (/var/cache/aria2.session).
\n
If you want to build from source code, please read the Build section.
\n
AppImage
\n
The latest version of Motrix AppImage requires you to manually perform desktop integration. Please check the documentation of AppImageLauncher .
\n
\n
Desktop Integration\nSince electron-builder 21 desktop integration is not a part of produced AppImage file.\nAppImageLauncher is the recommended way to integrate AppImages.
\n
\n
Deepin 20 Beta users failed to install Motrix, please follow the steps below:
\n
Open the Terminal, paste and run the following command to install Motrix again.
\n
sudo apt --fix-broken install
\n
Snap
\n
Motrix has been listed on Snapcraft , Ubuntu users recommend downloading from the Snap Store.
\n
Tips for v1.5.10
\n
The tray may not display the indicator normally, which makes it inconvenient to exit the application.
\n
Please unchecked Preferences--Basic Settings--Hide App Menu (Windows & Linux Only), click Save & Apply. Then click \"Exit\" in the File menu to exit the application.
\n
Please update to v1.5.12 and above, you can use the keyboard shortcut Ctrl + q to quickly exit the application.
\n
AUR
\n
For Arch Linux users, Motrix is available in aur, thanks to the maintainer @weearc.
\n
Run the following command to install:
\n
yay motrix
\n
Flatpak
\n
Thanks to the PR of @proletarius101, Motrix has been listed Flathub, Linux users who like the Flatpak can try it.
\n
# Install\nflatpak install flathub net.agalwood.Motrix\n\n# Run\nflatpak run net.agalwood.Motrix
\n
✨ Features
\n
\n
🕹 Simple and clear user interface
\n
🦄 Supports BitTorrent & Magnet
\n
☑️ BitTorrent selective download
\n
📡 Update tracker list every day automatically
\n
🔌 UPnP & NAT-PMP Port Mapping
\n
🎛 Up to 10 concurrent download tasks
\n
🚀 Supports 64 threads in a single task
\n
🚥 Supports speed limit
\n
🕶 Mock User-Agent
\n
🔔 Download completed Notification
\n
💻 Ready for Touch Bar (Mac only)
\n
🤖 Resident system tray for quick operation
\n
📟 Tray speed meter displays real-time speed (Mac only)
\n
🌑 Dark mode
\n
🗑 Delete related files when removing tasks (optional)
Mockoon is the easiest and quickest way to run mock APIs locally. No remote deployment, no account required, free and open-source.
\n
It's a desktop application and a CLI that help you work faster with APIs by mocking them. Integrate third-party APIs quicker, improve your integration tests, speed up your development, etc.\n➡️More use cases
\n
\n \n
\n
Features
\n
Mockoon offers many features:
\n
\n
unlimited number of mock local servers and routes
\n
CLI to run your mock in headless environments, CI, etc.
\n
complete control on routes definition: HTTP methods and statuses, regex paths, file serving, custom headers, etc.
\n
OpenAPI compatibility
\n
Record/logs of all entering and forwarded requests
Mockoon is an open-source project built by volunteer maintainers. If you like our application, please consider sponsoring us and join all the Sponsors and Backers who helped this project over time!
\n
\n\n
\n\n
Download the desktop application
\n
You can get Mockoon desktop's latest release directly from this repository or on the official website. Mockoon desktop is also available through:
You will find Mockoon's documentation on the official website. It covers Mockoon's most complex features. Feel free to contribute or ask for new topics to be covered.
\n
Support/feedback
\n
You can discuss all things related to Mockoon, and ask for help, on the official community. It's also a good place to discuss bugs and feature requests before opening an issue on this repository. For more chat-like discussions, you can also join our Discord server.
\n
Contributing
\n
If you are interested in contributing to Mockoon, please take a look at the contributing guidelines.
Mockoon is the easiest and quickest way to run mock APIs locally. No remote deployment, no account required, free and open-source.
\n
It's a desktop application and a CLI that help you work faster with APIs by mocking them. Integrate third-party APIs quicker, improve your integration tests, speed up your development, etc.\n➡️More use cases
\n
\n \n
\n
Features
\n
Mockoon offers many features:
\n
\n
unlimited number of mock local servers and routes
\n
CLI to run your mock in headless environments, CI, etc.
\n
complete control on routes definition: HTTP methods and statuses, regex paths, file serving, custom headers, etc.
\n
OpenAPI compatibility
\n
Record/logs of all entering and forwarded requests
Mockoon is an open-source project built by volunteer maintainers. If you like our application, please consider sponsoring us and join all the Sponsors and Backers who helped this project over time!
\n
\n\n
\n\n
Download the desktop application
\n
You can get Mockoon desktop's latest release directly from this repository or on the official website. Mockoon desktop is also available through:
You will find Mockoon's documentation on the official website. It covers Mockoon's most complex features. Feel free to contribute or ask for new topics to be covered.
\n
Support/feedback
\n
You can discuss all things related to Mockoon, and ask for help, on the official community. It's also a good place to discuss bugs and feature requests before opening an issue on this repository. For more chat-like discussions, you can also join our Discord server.
\n
Contributing
\n
If you are interested in contributing to Mockoon, please take a look at the contributing guidelines.
Move files to where they should & call yourself mr. clean
\n
Aggregate files . bulk renaming
\n
A minimal looking cross-platform desktop application made with Electron that handles quick file aggregation and bulk renaming
\n
\n\n \n \n
\n
\n
\n
\n
\n
About
\n
Are you an internet guy? downloading hundreds of files and then scrolling over all of them to find a few?\nDownload folder is so cluttered with files that it takes a significant amount of time to open?\nAs a programmer want to remove those annoying spaces from file names in bulk?
\n
Mr.d'clutterer is then going to be a life saver application for you :) simply drop a folder or selected files on to it to make them organized in fraction of a second.
\n
Features
\n\n
Drag and drop
\n
Rename files on-the-fly
\n
Aggregate files by extensions and types (more coming soon..)
\n
Process files under sub-directories too
\n
Quick access to settings from the right click context-menu ⚡
\n
Minimal and beautiful ❤️
\n
Auto updates itself
\n
Available both for linux & windows
\n\n
Download
\n
Download the right installer for your os from Here
\n
Note
\n
If you are looking for a tiny version of this app without a gui that works right form the file managers' right click menu, check NaughtyLust (Linux Only)
\n
Demo
\n
\n
Settings Menu
\n
Access settings right from the right click context-menu 🆒
\n
\n
Usage Guide
\n
Directory Handling
\n
If any folders (directories) dropped, files under those will also be taken under consideration
\n
Default Mode
\n
Aggregate files based on their types with directory handling on
\n
License
\n
\n
MIT License
\n
\n
\n
Copyright (c) 2020 Dipankar Pal
\n
\n
Permission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.
\n
Support
\n
All kinds of supports are welcome 🙌! the most basic way to show your support is to star 🌟 the project, or to raise issues 💬 you can also support this project by becoming a sponsor on GitHub👏 Or By Making A Paypal Donation :)
qikQR : Minimal QR Code Generator App Made With Electron.
\n
cppcheck-action : Check Security Flaws In Your C/C++ Codes Right From GitHub Action Workflows.
\n
autopy-lot : GitHub Action Setup To Convert Jupyter Notebooks To Python Scripts And Markdowns.
\n
\n
\n
\n
Happy Coding
\n
\n
",
"readmeOriginal": "
\n
\n
Mr. D'clutterer
\n
Move files to where they should & call yourself mr. clean
\n
Aggregate files . bulk renaming
\n
A minimal looking cross-platform desktop application made with Electron that handles quick file aggregation and bulk renaming
\n
\n\n \n \n
\n
\n
\n
\n
\n
About
\n
Are you an internet guy? downloading hundreds of files and then scrolling over all of them to find a few?\nDownload folder is so cluttered with files that it takes a significant amount of time to open?\nAs a programmer want to remove those annoying spaces from file names in bulk?
\n
Mr.d'clutterer is then going to be a life saver application for you :) simply drop a folder or selected files on to it to make them organized in fraction of a second.
\n
Features
\n\n
Drag and drop
\n
Rename files on-the-fly
\n
Aggregate files by extensions and types (more coming soon..)
\n
Process files under sub-directories too
\n
Quick access to settings from the right click context-menu ⚡
\n
Minimal and beautiful ❤️
\n
Auto updates itself
\n
Available both for linux & windows
\n\n
Download
\n
Download the right installer for your os from Here
\n
Note
\n
If you are looking for a tiny version of this app without a gui that works right form the file managers' right click menu, check NaughtyLust (Linux Only)
\n
Demo
\n
\n
Settings Menu
\n
Access settings right from the right click context-menu 🆒
\n
\n
Usage Guide
\n
Directory Handling
\n
If any folders (directories) dropped, files under those will also be taken under consideration
\n
Default Mode
\n
Aggregate files based on their types with directory handling on
\n
License
\n
\n
MIT License
\n
\n
\n
Copyright (c) 2020 Dipankar Pal
\n
\n
Permission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.
\n
Support
\n
All kinds of supports are welcome 🙌! the most basic way to show your support is to star 🌟 the project, or to raise issues 💬 you can also support this project by becoming a sponsor on GitHub👏 Or By Making A Paypal Donation :)
A tool which lets you create screenshots of entire movies in an instant.\n
\n
\n
CUSTOMISE LOOK - Set a custom grid, adjust file and frame specific data, margins etc. to create a custom look for your MoviePrints.
\n
SET IN AND OUT POINTS - Define custom In and Out Points for your MoviePrint if you only want to use a section of the movie.
\n
INSERT AND MOVE THUMBS - Easily insert thumbs and move them around via drag and drop.
\n
SELECT FRAMES - Scrub through the movie with ease and select frames for every single thumb individually.
\n
SAVE THUMBS - Easily save individual thumbs or save all thumbs of a MoviePrint at once.
\n
BATCH CREATE - Automatically create MoviePrints from all your movies.
\n
SHOT DETECTION - Scan the movie with a simple shot detection to get more interesting MoviePrints.
\n
TIMELINE VIEW - Change to timeline view where every thumb is as wide as the shot is long.
\n
EMBED MOVIEPRINT DATA - Embed the data of the chosen thumbs to reedit your MoviePrint at a later stage.
\n
\n
MoviePrint is using openCV as the roadmap includes utilising computer vision algorithms.
\n
Privacy
\n
MoviePrint does not collect any data. All work including detection is done in the app itself (Note: It currently connets on startup to fonts.googleapis.com due to a dependency to semantic ui a ui framework.)
\n
Please give feedback
\n
As we are not collecting any data from you, we are dependent on you talking to us. If you have a minute, we would very much appreciate if you tell us
\n
\n
how you found out about MoviePrint
\n
how you use the software
\n
what you use MoviePrint images for
\n
what you like, what you dislike
\n
and anything else you think we should know to make a better product
\n
\n
You can use this form or the Contact us button in the app.
\n
Want to stay updated?
\n
Do you want to be informed when new features are released? Just check Keep me up-to-date in this form or use the Contact us button in the app.\nWe will only ever send you MoviePrint related updates.
The app was tested on Mac OSX and Windows. Running and building it on other platforms might require additional changes to the code. Especially when it comes to linking and packaging the libraries.
To have ffmpeg support in opencv4nodejs you need to have ffmpeg installed (v3.4.2 works, v4.1 should too)
\n
We'll need opencv4nodejs to work which requires npm install --global windows-build-tools
\n
We need better-sqlite3 to work which additionally requires VC++ 2015.3 v14.00(v140) toolset for desktop\n
\n
Start Visual Studio Installer
\n
Modify Visual Studio Build Tools 2017
\n
Click on Individual components
\n
Tick VC++ 2015.3 v14.00 (v140) toolset for desktop
\n
Click on Modify/Install
\n
\n
\n
Make sure you have python 2 (not 3) installed (v2.7.15 works), test by running python --version
\n
Run the command yarn (this may take 10+ minutes and may automatically download supporting libraries from Microsoft). If this process errors out, try to debug.
\n\n
The rest of the instructions are the same for Mac and Windows:
A tool which lets you create screenshots of entire movies in an instant.\n
\n
\n
CUSTOMISE LOOK - Set a custom grid, adjust file and frame specific data, margins etc. to create a custom look for your MoviePrints.
\n
SET IN AND OUT POINTS - Define custom In and Out Points for your MoviePrint if you only want to use a section of the movie.
\n
INSERT AND MOVE THUMBS - Easily insert thumbs and move them around via drag and drop.
\n
SELECT FRAMES - Scrub through the movie with ease and select frames for every single thumb individually.
\n
SAVE THUMBS - Easily save individual thumbs or save all thumbs of a MoviePrint at once.
\n
BATCH CREATE - Automatically create MoviePrints from all your movies.
\n
SHOT DETECTION - Scan the movie with a simple shot detection to get more interesting MoviePrints.
\n
TIMELINE VIEW - Change to timeline view where every thumb is as wide as the shot is long.
\n
EMBED MOVIEPRINT DATA - Embed the data of the chosen thumbs to reedit your MoviePrint at a later stage.
\n
\n
MoviePrint is using openCV as the roadmap includes utilising computer vision algorithms.
\n
Privacy
\n
MoviePrint does not collect any data. All work including detection is done in the app itself (Note: It currently connets on startup to fonts.googleapis.com due to a dependency to semantic ui a ui framework.)
\n
Please give feedback
\n
As we are not collecting any data from you, we are dependent on you talking to us. If you have a minute, we would very much appreciate if you tell us
\n
\n
how you found out about MoviePrint
\n
how you use the software
\n
what you use MoviePrint images for
\n
what you like, what you dislike
\n
and anything else you think we should know to make a better product
\n
\n
You can use this form or the Contact us button in the app.
\n
Want to stay updated?
\n
Do you want to be informed when new features are released? Just check Keep me up-to-date in this form or use the Contact us button in the app.\nWe will only ever send you MoviePrint related updates.
The app was tested on Mac OSX and Windows. Running and building it on other platforms might require additional changes to the code. Especially when it comes to linking and packaging the libraries.
To have ffmpeg support in opencv4nodejs you need to have ffmpeg installed (v3.4.2 works, v4.1 should too)
\n
We'll need opencv4nodejs to work which requires npm install --global windows-build-tools
\n
We need better-sqlite3 to work which additionally requires VC++ 2015.3 v14.00(v140) toolset for desktop\n
\n
Start Visual Studio Installer
\n
Modify Visual Studio Build Tools 2017
\n
Click on Individual components
\n
Tick VC++ 2015.3 v14.00 (v140) toolset for desktop
\n
Click on Modify/Install
\n
\n
\n
Make sure you have python 2 (not 3) installed (v2.7.15 works), test by running python --version
\n
Run the command yarn (this may take 10+ minutes and may automatically download supporting libraries from Microsoft). If this process errors out, try to debug.
\n\n
The rest of the instructions are the same for Mac and Windows:
deleting any file which detected as duplicated file. \nthis function will detecting duplicated file just in the recent folder, when you have selecting some file as follows:
deleting any file which detected as duplicated file. \nthis function will detecting duplicated file just in the recent folder, when you have selecting some file as follows:
Museeks is currently in development. This implies some things can break after an update (database schemes changes, config...).
\n
If you encounter freezes or crashes when using the app, you can reset Museeks by following these steps:
\n
\n
Go to the Museeks folder directory\n
\n
Windows: %AppData%\\museeks
\n
OSX: ~/Library/Application Support/museeks
\n
Linux: ~/.config/museeks/ or $XDG_CONFIG_HOME/museeks
\n
\n
\n
Delete:\n
\n
IndexedDB folder
\n
config.json file
\n
\n
\n
Restart Museeks
\n
\n
If you still get problems after that, please open an issue :)
\n
Bug report
\n
If you want to report a bug, first, thanks a lot, that helps us a lot. Please open an issue and mention your OS, your Museeks version, and how to reproduce it. Adding a screen of the console (Menu -> View -> Toggle Developer Tools) is a big help too.
\n
Contribute
\n
\n
Fork and clone
\n
Master may be unstable, checkout to a tag to have a stable state of the app
\n
yarn install --frozen-lockfile && yarn run dev then run in a separate terminal yarn run museeks:debug
\n
yarn run dev will watch for file changes using ESBuild which will recompile JSX and CSS files.
\n
\n
Please respect a few rules:
\n
\n
Before making complex stuff, don't hesitate to open an issue first to discuss about it ;)
\n
Understandable code > short code: comment if needed
\n
Make sure your build pass
\n
\n
Then open a PR :)
\n
",
"readmeOriginal": "
Museeks
\n
\n
\n
A simple, clean and cross-platform music player. (museeks.io)
\n
\n
Features
\n
Museeks aims to be a simple and easy to use music player with a clean UI.
\n
You will not find tons of features, as its goals is not to compete with more complete and more famous music players. Here is a little preview though:
\n
\n
💻 Cross-platform music player (Linux, macOS and Windows)
Museeks is currently in development. This implies some things can break after an update (database schemes changes, config...).
\n
If you encounter freezes or crashes when using the app, you can reset Museeks by following these steps:
\n
\n
Go to the Museeks folder directory\n
\n
Windows: %AppData%\\museeks
\n
OSX: ~/Library/Application Support/museeks
\n
Linux: ~/.config/museeks/ or $XDG_CONFIG_HOME/museeks
\n
\n
\n
Delete:\n
\n
IndexedDB folder
\n
config.json file
\n
\n
\n
Restart Museeks
\n
\n
If you still get problems after that, please open an issue :)
\n
Bug report
\n
If you want to report a bug, first, thanks a lot, that helps us a lot. Please open an issue and mention your OS, your Museeks version, and how to reproduce it. Adding a screen of the console (Menu -> View -> Toggle Developer Tools) is a big help too.
\n
Contribute
\n
\n
Fork and clone
\n
Master may be unstable, checkout to a tag to have a stable state of the app
\n
yarn install --frozen-lockfile && yarn run dev then run in a separate terminal yarn run museeks:debug
\n
yarn run dev will watch for file changes using ESBuild which will recompile JSX and CSS files.
\n
\n
Please respect a few rules:
\n
\n
Before making complex stuff, don't hesitate to open an issue first to discuss about it ;)
\n
Understandable code > short code: comment if needed
Multrin is a cross-platform app built on Electron that lets you to organize apps in tabs by simply dropping them onto Multrin. It aims to greatly improve your productivity and organization.
\n
\n
\n
NOTE: Multrin works currently only on Windows and macOS. Support for Linux coming soon.
If you have found any bugs or just want to see some new features in Multrin, feel free to open an issue. I'm open to any suggestions and bug reports would be really helpful for me and appreciated very much. Multrin is in heavy development and some bugs may occur. Also, please don't hesitate to open a pull request. This is really important to me and for the further development of this project.
\n
Running
\n
Before running Multrin in development mode, please ensure you have Node.js installed on your machine.
\n
When running on Windows, make sure you have build tools installed. You can install them by running as administrator:
\n
$ npm i -g windows-build-tools
\n
Firstly, run this command to install all needed dependencies. If you have encountered any problems, please report it. I will try to help as much as I can.
\n
$ npm i
\n
Now the native modules need to be rebuilt with Electron's headers. To do that, please run:
\n
$ npm run rebuild
\n
The given command below will run Multrin in the development mode.
Multrin is a cross-platform app built on Electron that lets you to organize apps in tabs by simply dropping them onto Multrin. It aims to greatly improve your productivity and organization.
\n
\n
\n
NOTE: Multrin works currently only on Windows and macOS. Support for Linux coming soon.
If you have found any bugs or just want to see some new features in Multrin, feel free to open an issue. I'm open to any suggestions and bug reports would be really helpful for me and appreciated very much. Multrin is in heavy development and some bugs may occur. Also, please don't hesitate to open a pull request. This is really important to me and for the further development of this project.
\n
Running
\n
Before running Multrin in development mode, please ensure you have Node.js installed on your machine.
\n
When running on Windows, make sure you have build tools installed. You can install them by running as administrator:
\n
$ npm i -g windows-build-tools
\n
Firstly, run this command to install all needed dependencies. If you have encountered any problems, please report it. I will try to help as much as I can.
\n
$ npm i
\n
Now the native modules need to be rebuilt with Electron's headers. To do that, please run:
\n
$ npm run rebuild
\n
The given command below will run Multrin in the development mode.
This is a music player that can apply cool effects such as reversing, time stretching, and pitch shifting in real-time.\nIt's basically the GUI version of my Music Player Web site.
\n
Features:
\n
\n
Play audio (MP3, WAV) and MIDI files
\n
Adjust the volume of the audio
\n
Reverse audio in real-time
\n
Time stretching in real-time (can either preserve or affect the pitch)
\n
Pitch shifting in real-time (only if time-stretch is set to not affect the pitch)
\n
Looping from point A to point B
\n
Support for local files, YouTube videos, and Soundcloud tracks
\n
Render and download audio/midi with effects
\n
Keeps a record of recent plays
\n
Play previous and next tracks (from your file system)
\n
Customize the controls of the MIDI synthesizer
\n
\n
Keyboard Shortcuts
\n
\n
Space: Play/Pause
\n
Left Arrow: Rewind
\n
Right Arrow: Fast forward
\n
Up Arrow: Increase volume
\n
Down Arrow: Decrease volume
\n
Mouse Wheel: Increase/decrease volume
\n
Ctrl O: Upload file
\n
Ctrl S: Download file
\n
Drag and drop: Upload file
\n
\n
Installation
\n
Download the latest installer from the releases tab. Updates can be installed automatically.
This is a music player that can apply cool effects such as reversing, time stretching, and pitch shifting in real-time.\nIt's basically the GUI version of my Music Player Web site.
\n
Features:
\n
\n
Play audio (MP3, WAV) and MIDI files
\n
Adjust the volume of the audio
\n
Reverse audio in real-time
\n
Time stretching in real-time (can either preserve or affect the pitch)
\n
Pitch shifting in real-time (only if time-stretch is set to not affect the pitch)
\n
Looping from point A to point B
\n
Support for local files, YouTube videos, and Soundcloud tracks
\n
Render and download audio/midi with effects
\n
Keeps a record of recent plays
\n
Play previous and next tracks (from your file system)
\n
Customize the controls of the MIDI synthesizer
\n
\n
Keyboard Shortcuts
\n
\n
Space: Play/Pause
\n
Left Arrow: Rewind
\n
Right Arrow: Fast forward
\n
Up Arrow: Increase volume
\n
Down Arrow: Decrease volume
\n
Mouse Wheel: Increase/decrease volume
\n
Ctrl O: Upload file
\n
Ctrl S: Download file
\n
Drag and drop: Upload file
\n
\n
Installation
\n
Download the latest installer from the releases tab. Updates can be installed automatically.
You said to yourself: 'Now it is time to rest. Let's play for 5 mins.' But it became unstoppable after starting. And in this way, your afternoon was wasted.
\n
You should download Mr Noplay, who gives an end to no-end rests and play times.
If you need Linux version, plz open an issue. Android & iOS versions might come into being in the future.
\n
For any other questions, open an isuue or contact me at tianze%scris.top (% → @)
\n
Features
\n
\n
A vivid and easy-to-use user interface.
\n
Multi-platform support: Windows & macOS
\n
Multi-language support: English & Chinese
\n
The powerful work routine that makes controlling time reliable
\n
Go fullscreen on start to make planning time concentrated
\n
Auto-shutdown when over-time is too long to control the time
\n
Pause & Resume
\n
Punishments for example annoying music to impel you to stop
\n
Today View to set the maximum time you can use today\n
\n
tip set today time to stop you from opening computer for too many times in a day
\n
\n
\n
A coin system called R Point to spur you to stop in time
\n
Support start on login
\n
Lock Mode support\n
\n
tip tired of exiting the app on start and then started wasting time? let other people set a lockmode password for you
\n
\n
\n
Update system and update notice
\n
Tutorial
\n
Default time settings
\n
Donate system
\n
\n
License and Copyright
\n
Copyright (c) 2019-2020 Tianze Ds Qiu and other contributors. All rights reserved.
\n
Mr Noplay is under MPL v2.0.
\n
For the information about which package we used, plz go to Fossa and see.
\n
\n
Languages
\n
\n
简体中文
\n
English
\n
Want to contribute? Please first open an isuue.
\n
\n
Build Process
\n
# get dependencies\nyarn\ncd electron\nyarn\n\n# dev\nyarn run dev\n\n# build to electron\nyarn run electron-dev\nyarn run electron-mac\nyarn run electron-win\n\n# build to web (at ../mrnoplay.web/)\nyarn run web
You said to yourself: 'Now it is time to rest. Let's play for 5 mins.' But it became unstoppable after starting. And in this way, your afternoon was wasted.
\n
You should download Mr Noplay, who gives an end to no-end rests and play times.
If you need Linux version, plz open an issue. Android & iOS versions might come into being in the future.
\n
For any other questions, open an isuue or contact me at tianze%scris.top (% → @)
\n
Features
\n
\n
A vivid and easy-to-use user interface.
\n
Multi-platform support: Windows & macOS
\n
Multi-language support: English & Chinese
\n
The powerful work routine that makes controlling time reliable
\n
Go fullscreen on start to make planning time concentrated
\n
Auto-shutdown when over-time is too long to control the time
\n
Pause & Resume
\n
Punishments for example annoying music to impel you to stop
\n
Today View to set the maximum time you can use today\n
\n
tip set today time to stop you from opening computer for too many times in a day
\n
\n
\n
A coin system called R Point to spur you to stop in time
\n
Support start on login
\n
Lock Mode support\n
\n
tip tired of exiting the app on start and then started wasting time? let other people set a lockmode password for you
\n
\n
\n
Update system and update notice
\n
Tutorial
\n
Default time settings
\n
Donate system
\n
\n
License and Copyright
\n
Copyright (c) 2019-2020 Tianze Ds Qiu and other contributors. All rights reserved.
\n
Mr Noplay is under MPL v2.0.
\n
For the information about which package we used, plz go to Fossa and see.
\n
\n
Languages
\n
\n
简体中文
\n
English
\n
Want to contribute? Please first open an isuue.
\n
\n
Build Process
\n
# get dependencies\nyarn\ncd electron\nyarn\n\n# dev\nyarn run dev\n\n# build to electron\nyarn run electron-dev\nyarn run electron-mac\nyarn run electron-win\n\n# build to web (at ../mrnoplay.web/)\nyarn run web
Notice: Due to studies and other reasons, I'm currently unable to continue developing the project, however, new pull requests are welcome and I'll pick it up when my time allows.
\n
Musify
\n
\n
Musify is a simple and fast music player, built from the ground up, using web technologies such as HTML, CSS and JavaScript, all wrapped on Electron Framework.\nThis is my first project as a computer science student. I've tried my best to write a code that follows common coding conventions, but keep in mind that you may find common beginner errors. If so, feel free to help and contribute to improve this app.
Notice: Due to studies and other reasons, I'm currently unable to continue developing the project, however, new pull requests are welcome and I'll pick it up when my time allows.
\n
Musify
\n
\n
Musify is a simple and fast music player, built from the ground up, using web technologies such as HTML, CSS and JavaScript, all wrapped on Electron Framework.\nThis is my first project as a computer science student. I've tried my best to write a code that follows common coding conventions, but keep in mind that you may find common beginner errors. If so, feel free to help and contribute to improve this app.
Netron has experimental support for PyTorch, TensorFlow, TorchScript, OpenVINO, Torch, Vitis AI, kmodel, Arm NN, BigDL, Chainer, Deeplearning4j, MediaPipe, ML.NET and scikit-learn.
\n
\n
Install
\n
macOS: Download the .dmg file or run brew install netron
\n
Linux: Download the .AppImage file or run snap install netron
\n
Windows: Download the .exe installer or run winget install -s winget netron
Netron has experimental support for PyTorch, TensorFlow, TorchScript, OpenVINO, Torch, Vitis AI, kmodel, Arm NN, BigDL, Chainer, Deeplearning4j, MediaPipe, ML.NET and scikit-learn.
\n
\n
Install
\n
macOS: Download the .dmg file or run brew install netron
\n
Linux: Download the .AppImage file or run snap install netron
\n
Windows: Download the .exe installer or run winget install -s winget netron
A minimalistic music player, designed for simplicity. Built on electron, uses Howler for handling music playback, Svelte for the UI, and music-metadata to retrieve ID3 tags.
\n
This can also serve as a starting point to implement your own front-end/UI for a music Player.
Download the build for your OS. Start the application and then click on the Folders tab on the top left corner, this will bring up a window where you can select the folder where you want to play your audio files from.\nOnce you select a folder with songs, just click play.
\n
Building from the repo
\n
Clone the repository, make it your working directory, and then on your terminal run npm install.\nOnce all the dependencies have finished downloading, run npm run app-dev to test it, and npm run build to build it for your platform.
\n
Features
\n
\n
Supports: mp3, opus, ogg, wav, aac, m4a and webm.
\n
Reads ID3 tags and displays the artist and album art (if it exists).
\n
Quickly switch tracks from the playlist.
\n
Search for songs from the search bar.
\n
Instantly switch between Dark, Light and Disco modes.
\n
Use keyboard shortcuts to control playback.
\n
\n
Shortcuts
\n
Next track: 🠊 |\nPrevious track: 🠈 |\nVolume up: 🠉 |\nVolume down: 🠋 |\nPlay/pause: Space
\n
Screenshots
\n
\n\n
\n
\n\n
\n
Upcoming Features
\n
Some new features and under the hood stuff that will be or has already been implemented. They'll be included in the next update.
\n
\n
Added auto update when new version is available.
\n
\n
Contributing
\n
Please read CONTRIBUTING.md before raising a PR or creating an issue.
A minimalistic music player, designed for simplicity. Built on electron, uses Howler for handling music playback, Svelte for the UI, and music-metadata to retrieve ID3 tags.
\n
This can also serve as a starting point to implement your own front-end/UI for a music Player.
Download the build for your OS. Start the application and then click on the Folders tab on the top left corner, this will bring up a window where you can select the folder where you want to play your audio files from.\nOnce you select a folder with songs, just click play.
\n
Building from the repo
\n
Clone the repository, make it your working directory, and then on your terminal run npm install.\nOnce all the dependencies have finished downloading, run npm run app-dev to test it, and npm run build to build it for your platform.
\n
Features
\n
\n
Supports: mp3, opus, ogg, wav, aac, m4a and webm.
\n
Reads ID3 tags and displays the artist and album art (if it exists).
\n
Quickly switch tracks from the playlist.
\n
Search for songs from the search bar.
\n
Instantly switch between Dark, Light and Disco modes.
\n
Use keyboard shortcuts to control playback.
\n
\n
Shortcuts
\n
Next track: 🠊 |\nPrevious track: 🠈 |\nVolume up: 🠉 |\nVolume down: 🠋 |\nPlay/pause: Space
\n
Screenshots
\n
\n\n
\n
\n\n
\n
Upcoming Features
\n
Some new features and under the hood stuff that will be or has already been implemented. They'll be included in the next update.
\n
\n
Added auto update when new version is available.
\n
\n
Contributing
\n
Please read CONTRIBUTING.md before raising a PR or creating an issue.
Network Status Check application written with Electron, Bootstrap, jQuery
\n
This is a tool to add URLs and ports to check to see if they are open or not. You can add as many items to the list, and edit the list as well if needed. You can save your list and eventually reimport the list as well on launch or by using the Load URLs button.
\n
Main Window
\n
\n
Run Check
\n
\n
Quick Code Tour
\n
\n
The code entry point is in package.json under the key \"main\". The value is \"main.js\"
\n
main.js creates a BrowserWindow and loads index.html. It also has event handlers that enable keyboard shortcuts for Developer Tools on various platforms. Note that loadURL uses a template literal to give the source file's location.`file://${__dirname}/app/index.html`
\n
index.html loads Bootstrap's CSS in the <head> tag and renderer.js after the closing <body> tag. On the web Bootstrap's JavaScript would also load in this location but the Electron way is to load it in renderer.js with a require(). Note that these src and href attributes use normal relative paths. An HTTP server is not necessary.
\n
renderer.js loads jQuery, Bootstrap and it's dependency; Tether. Each is assigned to the window object because this is the web application custom. It's not the Node.js or Electron custom because window is a global. For now we must do it this way or it won't work.
\n
setup.js setups up some overall settings for the application
\n
app.js is the real worker of functions.
\n
\n
Releases
\n
At this time the releases are for Windows as that is my main developing platform and where I use this tool mostly; on Windows environments.
Electron Forge allows us to make builds based on our operating system we are running from. Linux (Debian) and Windows 10 tested.
\n
npm run make
\n
You can check websites like google.com, github.com, or any URL you need and the port. It is best to use the FQDN for local addresses or use the hostnames IP instead.
\n
Please let me know if you have any issues or questions. If you have a suggestion for approval create an issue or a pull request.
\n
",
"readmeOriginal": "
Network Status Check application written with Electron, Bootstrap, jQuery
\n
This is a tool to add URLs and ports to check to see if they are open or not. You can add as many items to the list, and edit the list as well if needed. You can save your list and eventually reimport the list as well on launch or by using the Load URLs button.
\n
Main Window
\n
\n
Run Check
\n
\n
Quick Code Tour
\n
\n
The code entry point is in package.json under the key \"main\". The value is \"main.js\"
\n
main.js creates a BrowserWindow and loads index.html. It also has event handlers that enable keyboard shortcuts for Developer Tools on various platforms. Note that loadURL uses a template literal to give the source file's location.`file://${__dirname}/app/index.html`
\n
index.html loads Bootstrap's CSS in the <head> tag and renderer.js after the closing <body> tag. On the web Bootstrap's JavaScript would also load in this location but the Electron way is to load it in renderer.js with a require(). Note that these src and href attributes use normal relative paths. An HTTP server is not necessary.
\n
renderer.js loads jQuery, Bootstrap and it's dependency; Tether. Each is assigned to the window object because this is the web application custom. It's not the Node.js or Electron custom because window is a global. For now we must do it this way or it won't work.
\n
setup.js setups up some overall settings for the application
\n
app.js is the real worker of functions.
\n
\n
Releases
\n
At this time the releases are for Windows as that is my main developing platform and where I use this tool mostly; on Windows environments.
Electron Forge allows us to make builds based on our operating system we are running from. Linux (Debian) and Windows 10 tested.
\n
npm run make
\n
You can check websites like google.com, github.com, or any URL you need and the port. It is best to use the FQDN for local addresses or use the hostnames IP instead.
\n
Please let me know if you have any issues or questions. If you have a suggestion for approval create an issue or a pull request.
Nicepage gives the ultimate freedom for Web Design 3.0.\nBuild your mobile-friendly Joomla Templates, WordPress Themes and HTML5 websites with no coding in free desktop aplications for Windows and Mac. Nicepage Page Builder is available as a Joomla Extension and WordPress Plugin. There is also a Nicepage edition with online hosting.
\n
Absolute Creativity With No Coding
\n
Nicepage is simple drag-and-drop editor to implement any ideas.
\n
\n
Easy Drag-n-Drop. Easily drag-n-drop to customize anything on your website.
\n
No Coding. Add, edit, move, and modify everything. All visually!
\n
Mobile-Friendly. Build websites that look great on all modern devices.
\n
1000s Web Templates. Select from a huge variety of designer-made templates.
Nicepage gives the ultimate freedom for Web Design 3.0.\nBuild your mobile-friendly Joomla Templates, WordPress Themes and HTML5 websites with no coding in free desktop aplications for Windows and Mac. Nicepage Page Builder is available as a Joomla Extension and WordPress Plugin. There is also a Nicepage edition with online hosting.
\n
Absolute Creativity With No Coding
\n
Nicepage is simple drag-and-drop editor to implement any ideas.
\n
\n
Easy Drag-n-Drop. Easily drag-n-drop to customize anything on your website.
\n
No Coding. Add, edit, move, and modify everything. All visually!
\n
Mobile-Friendly. Build websites that look great on all modern devices.
\n
1000s Web Templates. Select from a huge variety of designer-made templates.
When you launch nimblenote you'll be greeted with a welcome page, and after you start typing notes, type in ? into the search box to get additional help.
When you launch nimblenote you'll be greeted with a welcome page, and after you start typing notes, type in ? into the search box to get additional help.
I couldn't find a note-taking app that ticked all the boxes I'm interested in: notes are written and rendered in GitHub Flavored Markdown, no WYSIWYG, no proprietary formats, I can run a search & replace across all notes, notes support attachments, the app isn't bloated, the app has a pretty interface, tags are indefinitely nestable and can import Evernote notes (because that's what I was using before).
Part of this comparison is personal opinion: you may disagree on the UI front, things I consider bloat may be considered features by somebody else etc. but hopefully this comparison did a good job at illustrating the main differences.
\n
Features
\n
Markdown-based
\n
Notes are written in GitHub Flavored Markdown, and you can also write KaTeX expressions, Mermaid diagrams and so much more, check out our full Markdown cheatsheet.
\n
Notable also gives you a very powerful Markdown editor, it's the same one VS Code uses in fact, so features like multi-cursors, a minimap and best-in-class syntax highlighting are built-in.
Notes and attachments are simply stored on your disk, this is extremely portable and powerful: you could edit your notes with your favorite editor, have them synchronized via Dropbox, run Git on them, run a regex-based search and replace on them etc.
Zen mode provides a minimalistic editing and reading experience, hiding everything that's not necessary.
\n
Notable is also keyboard friendly, has a quick open window, and we'll soon add a command palette too, so you won't have to click any buttons if you don't want to.
A lot more features are implemented, some of the most important ones are listed here.
\n
Is a feature you care about currently missing? Make sure to browse the issue tracker and add your \"👍\" reaction to the issues you care most about, as we also use those reactions to prioritize issues.
\n
Contributing
\n
There are multiple ways to contribute to this project, read about them here.
\n
Useful Links
\n
\n
Chat: we have a public real-time chat, come join us there.
\n
Cheatsheet: the online version of our built-in Markdown cheatsheet.
\n
Customizations: collection of community-created customizations and tips.
\n
Donations: you can financially support the project via this GitHub Sponsorship page.
I couldn't find a note-taking app that ticked all the boxes I'm interested in: notes are written and rendered in GitHub Flavored Markdown, no WYSIWYG, no proprietary formats, I can run a search & replace across all notes, notes support attachments, the app isn't bloated, the app has a pretty interface, tags are indefinitely nestable and can import Evernote notes (because that's what I was using before).
Part of this comparison is personal opinion: you may disagree on the UI front, things I consider bloat may be considered features by somebody else etc. but hopefully this comparison did a good job at illustrating the main differences.
\n
Features
\n
Markdown-based
\n
Notes are written in GitHub Flavored Markdown, and you can also write KaTeX expressions, Mermaid diagrams and so much more, check out our full Markdown cheatsheet.
\n
Notable also gives you a very powerful Markdown editor, it's the same one VS Code uses in fact, so features like multi-cursors, a minimap and best-in-class syntax highlighting are built-in.
Notes and attachments are simply stored on your disk, this is extremely portable and powerful: you could edit your notes with your favorite editor, have them synchronized via Dropbox, run Git on them, run a regex-based search and replace on them etc.
Zen mode provides a minimalistic editing and reading experience, hiding everything that's not necessary.
\n
Notable is also keyboard friendly, has a quick open window, and we'll soon add a command palette too, so you won't have to click any buttons if you don't want to.
A lot more features are implemented, some of the most important ones are listed here.
\n
Is a feature you care about currently missing? Make sure to browse the issue tracker and add your \"👍\" reaction to the issues you care most about, as we also use those reactions to prioritize issues.
\n
Contributing
\n
There are multiple ways to contribute to this project, read about them here.
\n
Useful Links
\n
\n
Chat: we have a public real-time chat, come join us there.
\n
Cheatsheet: the online version of our built-in Markdown cheatsheet.
\n
Customizations: collection of community-created customizations and tips.
\n
Donations: you can financially support the project via this GitHub Sponsorship page.
nteract is an open-source organization committed to creating fantastic\ninteractive computing experiences that allow people to collaborate with ease.
\n
We build SDKs, applications, and libraries that help you and your team make\nthe most of interactive (particularly Jupyter) notebooks and REPLs.
\n
To learn more about the nteract open source organization and the rest of our\nprojects, please visit our website.
\n
What's in this repo?
\n
This repo is a monorepo. It contains the code for the nteract core SDK and\nnteract's desktop and web applications. It also contains the documentation for\nthe SDK and the applications. Here's a quick guide to the contents of the\nmonorepo.
\n
\n\n
\n
Folder
\n
Description
\n
\n\n\n
\n
applications/desktop
\n
Source code for the nteract desktop application. The desktop application is a cross-platform app built using Electron.
\n
\n
\n
applications/jupyter-extension
\n
Source code the nteract Jupyter extension. This extension can be installed alongside Jupyter classic and JupyterLab in your Jupyter deployments or personal Jupyter server.
\n
\n
\n
packages
\n
JavaScript packages that are part of the nteract core SDK.
\n
\n
\n
changelogs
\n
Changelogs for each release of the nteract core SDK and applications.
\n
\n\n
\n
How do I contribute to this repo?
\n
If you are interested in contributing to nteract, please read the\ncontribution guidelines for information on how to set up\nyour nteract repo for development, how to write tests and validate changes,\nhow to update documentation, and how to submit your code changes for review on\nGitHub.
\n
How do I use the nteract core SDK?
\n
If you are a developer who wants to build an nteract-based notebook application,\ncheck out the following documentation resources for more info.
This page contains the documentation for our suite of composable React components. It contains code samples that you can reference when building your nteract-based UI.
\n
\n\n
\n
Our documentation is living. We are always making changes and adding more\ncontent. If you have feedback about the documentation, please open an issue\nin this repo. If you are interested in submitting a change to our documentation\npage, please review the contribution guidelines and\nsubmit a pull request.
\n
How do I use the nteract desktop application?
\n
To get started with the nteract desktop app, head over to the\nnteract homepage to download the application for your\noperating system.
\n
Once you've download the app, head over to our\ndocumentation page for tutorials and guides on\nusing the app for your data analysis and science workflows.
\n
Supporting nteract
\n
nteract is a non-profit open-source organization fiscally sponsored by\nNumFOCUS. If you are interested in supporting development on nteract, please consider making a recurring donation.
\n
Development on nteract is also supported by the following organizations.
\n
\n
\n
\n\n
\n
\n\n
\n
\n
\n
\n
\n
\n
",
"readmeOriginal": "
\n
the interactive computing suite for you
\n
\n\n\n\n\n
\n
nteract is an open-source organization committed to creating fantastic\ninteractive computing experiences that allow people to collaborate with ease.
\n
We build SDKs, applications, and libraries that help you and your team make\nthe most of interactive (particularly Jupyter) notebooks and REPLs.
\n
To learn more about the nteract open source organization and the rest of our\nprojects, please visit our website.
\n
What's in this repo?
\n
This repo is a monorepo. It contains the code for the nteract core SDK and\nnteract's desktop and web applications. It also contains the documentation for\nthe SDK and the applications. Here's a quick guide to the contents of the\nmonorepo.
\n
\n\n
\n
Folder
\n
Description
\n
\n\n\n
\n
applications/desktop
\n
Source code for the nteract desktop application. The desktop application is a cross-platform app built using Electron.
\n
\n
\n
applications/jupyter-extension
\n
Source code the nteract Jupyter extension. This extension can be installed alongside Jupyter classic and JupyterLab in your Jupyter deployments or personal Jupyter server.
\n
\n
\n
packages
\n
JavaScript packages that are part of the nteract core SDK.
\n
\n
\n
changelogs
\n
Changelogs for each release of the nteract core SDK and applications.
\n
\n\n
\n
How do I contribute to this repo?
\n
If you are interested in contributing to nteract, please read the\ncontribution guidelines for information on how to set up\nyour nteract repo for development, how to write tests and validate changes,\nhow to update documentation, and how to submit your code changes for review on\nGitHub.
\n
How do I use the nteract core SDK?
\n
If you are a developer who wants to build an nteract-based notebook application,\ncheck out the following documentation resources for more info.
This page contains the documentation for our suite of composable React components. It contains code samples that you can reference when building your nteract-based UI.
\n
\n\n
\n
Our documentation is living. We are always making changes and adding more\ncontent. If you have feedback about the documentation, please open an issue\nin this repo. If you are interested in submitting a change to our documentation\npage, please review the contribution guidelines and\nsubmit a pull request.
\n
How do I use the nteract desktop application?
\n
To get started with the nteract desktop app, head over to the\nnteract homepage to download the application for your\noperating system.
\n
Once you've download the app, head over to our\ndocumentation page for tutorials and guides on\nusing the app for your data analysis and science workflows.
\n
Supporting nteract
\n
nteract is a non-profit open-source organization fiscally sponsored by\nNumFOCUS. If you are interested in supporting development on nteract, please consider making a recurring donation.
\n
Development on nteract is also supported by the following organizations.
NodemailerApp is the ultimate cross platform email debugging app.
\n
App includes local SMTP and POP3 servers, a sendmail replacement, and it imports emails from EML files, EMLX files, large MBOX files from Gmail takeout, Maildir folders and Postfix queue files for inspection and preview. Ever wanted to view the actual HTML source of a nicely designed email instead of some garbled rfc822 text? Just open the HTML tab of an email to see it.
\n
Features:
\n
\n
Preview emails either in rich text or plain text mode. View the source of the entire message or the decoded HTML content
\n
Sendmail replacement to catch emails from applications that pipe to sendmail (eg. PHP mail(…)).
\n
Local development server to catch emails from applications that send via SMTP (Nodemailer, PHPMailer etc.).
\n
Message upload to relay a caught message either to next SMTP server or to an IMAP server.
\n
Extensive search to find long lost emails.
\n
Large mailbox import. Received a 10GB mbox takeout file from Gmail? No problem, just import it to NodemailerApp.
\n
Catchall service to accept messages from the internet.
NodemailerApp is the ultimate cross platform email debugging app.
\n
App includes local SMTP and POP3 servers, a sendmail replacement, and it imports emails from EML files, EMLX files, large MBOX files from Gmail takeout, Maildir folders and Postfix queue files for inspection and preview. Ever wanted to view the actual HTML source of a nicely designed email instead of some garbled rfc822 text? Just open the HTML tab of an email to see it.
\n
Features:
\n
\n
Preview emails either in rich text or plain text mode. View the source of the entire message or the decoded HTML content
\n
Sendmail replacement to catch emails from applications that pipe to sendmail (eg. PHP mail(…)).
\n
Local development server to catch emails from applications that send via SMTP (Nodemailer, PHPMailer etc.).
\n
Message upload to relay a caught message either to next SMTP server or to an IMAP server.
\n
Extensive search to find long lost emails.
\n
Large mailbox import. Received a 10GB mbox takeout file from Gmail? No problem, just import it to NodemailerApp.
\n
Catchall service to accept messages from the internet.
nuclear is a free music streaming program that pulls content from free sources all over the internet.
\n
If you know mps-youtube, this is a similar music player but with a GUI.\nIt's also focusing more on audio. Imagine Spotify which you don't have to pay for and with a bigger library.
Searching for and playing music from YouTube (including integration with playlists and SponsorBlock), Jamendo, Audius and SoundCloud
\n
Searching for albums (powered by Last.fm and Discogs), album view, automatic song lookup based on artist and track name (in progress, can be dodgy sometimes)
\n
Song queue, which can be exported as a playlist
\n
Loading saved playlists (stored in json files)
\n
Scrobbling to last.fm (along with updating the 'now playing' status)
Nuclear has already been translated to several languages, and we're always looking for contributors who would like to add more.
\n
We're using Crowdin to manage localization. You can check if your language is supported, track localization progress, and help us translate Nuclear there.
\n
Screenshots
\n
This will be updated as the program evolves.
\n
\n
\n
\n
\n
\n
\n
\n
\n
License
\n
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
nuclear is a free music streaming program that pulls content from free sources all over the internet.
\n
If you know mps-youtube, this is a similar music player but with a GUI.\nIt's also focusing more on audio. Imagine Spotify which you don't have to pay for and with a bigger library.
Searching for and playing music from YouTube (including integration with playlists and SponsorBlock), Jamendo, Audius and SoundCloud
\n
Searching for albums (powered by Last.fm and Discogs), album view, automatic song lookup based on artist and track name (in progress, can be dodgy sometimes)
\n
Song queue, which can be exported as a playlist
\n
Loading saved playlists (stored in json files)
\n
Scrobbling to last.fm (along with updating the 'now playing' status)
Nuclear has already been translated to several languages, and we're always looking for contributors who would like to add more.
\n
We're using Crowdin to manage localization. You can check if your language is supported, track localization progress, and help us translate Nuclear there.
\n
Screenshots
\n
This will be updated as the program evolves.
\n
\n
\n
\n
\n
\n
\n
\n
\n
License
\n
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
A Node.js & Electron application for easily configuring your freshly-imaged OctoPi microSD adapter
\n
\n
Node.js is an open-source, cross-platform JavaScript run-time environment that executes JavaScript code server-side.
\n
Electron is an open-source framework for developing executable cross-platform desktop applications.
\n
OctoPrint is the leading web software for controlling 3D printers, created/maintained by Gina Häußge
\n
OctoPi is a Raspberry-specific distro of OctoPrint, maintained by Guy Sheffer
\n
\n
Overview
\n
Getting started with OctoPrint—as loaded on a Raspberry Pi computer—involves installing an OctoPi image and then some configuration work before this computer can bootup. This application hopes to make that configuration step much easier by introducing a desktop application to perform this step.
\n
\n
Installation
\n
At the moment, only OSX and Windows installers are available. Two Linux versions are available (AppImage and deb) which require a small amount of work to get going.
\n\n
Download the latest OctoPi image and follow the instructions there to burn it to your microSD card
\n
Using the octopi-init software here, configure that microSD card from your workstation, ejecting it when finished
\n
Put the microSD card into the Raspberry Pi and boot it to continue
\n\n
\n
Windows installation
\n
After downloading the setup executable, you may see the error dialog \"Windows protected your PC: Windows Defender SmartScreen prevented an unrecognized app from starting. Running this app might put your PC at risk. More info...\"
\n
This is Microsoft taking a page out of Apple's playbook and also trying to charge developers each year to digitally sign apps they're giving away for free.
\n
Simply click the More info link and select the Run anyway button to continue.
\n
Linux installation
\n
After downloading the AppImage file, you'll minimally need to mark the file so that it can be executed.
\n
Make it executable by running chmod a+x octopi-init*.AppImage then execute it with ./octopi-init*.AppImage
\n
Alternately, for the deb file image, you'd want to install it with sudo apt install ~/Downloads/octopi-init-1.0.9_amd64.deb, for example.
\n
Apple warning message
\n
When running octopi-init the first time, you'll need to Ctl-Click the application and select Open. Otherwise, you'll see a confusing warning like this:
\n
\n
It's just Apple trying to make $99 per developer per year as part of their business model. As suggested, Ctl-Click the program and choose Open to see:
\n
\n
Then just click the Open button again and you should be good to go. You won't have to repeat this again, in theory.
\n
\n\n
\n
Description
\n
Version
\n
Author
\n
Last Update
\n
\n\n\n
\n
octopi-init
\n
v1.1.2
\n
OutsourcedGuru
\n
August 23, 2018
\n
\n\n
\n
\n\n
\n
Donate
\n
\n
Cryptocurrency
\n
\n\n\n
\n
\n
\n
\n
\n
\n
Ethereum
\n
\n
Bitcoin
\n
\n\n
\n
",
"readmeOriginal": "
octopi-init
\n
A Node.js & Electron application for easily configuring your freshly-imaged OctoPi microSD adapter
\n
\n
Node.js is an open-source, cross-platform JavaScript run-time environment that executes JavaScript code server-side.
\n
Electron is an open-source framework for developing executable cross-platform desktop applications.
\n
OctoPrint is the leading web software for controlling 3D printers, created/maintained by Gina Häußge
\n
OctoPi is a Raspberry-specific distro of OctoPrint, maintained by Guy Sheffer
\n
\n
Overview
\n
Getting started with OctoPrint—as loaded on a Raspberry Pi computer—involves installing an OctoPi image and then some configuration work before this computer can bootup. This application hopes to make that configuration step much easier by introducing a desktop application to perform this step.
\n
\n
Installation
\n
At the moment, only OSX and Windows installers are available. Two Linux versions are available (AppImage and deb) which require a small amount of work to get going.
\n\n
Download the latest OctoPi image and follow the instructions there to burn it to your microSD card
\n
Using the octopi-init software here, configure that microSD card from your workstation, ejecting it when finished
\n
Put the microSD card into the Raspberry Pi and boot it to continue
\n\n
\n
Windows installation
\n
After downloading the setup executable, you may see the error dialog \"Windows protected your PC: Windows Defender SmartScreen prevented an unrecognized app from starting. Running this app might put your PC at risk. More info...\"
\n
This is Microsoft taking a page out of Apple's playbook and also trying to charge developers each year to digitally sign apps they're giving away for free.
\n
Simply click the More info link and select the Run anyway button to continue.
\n
Linux installation
\n
After downloading the AppImage file, you'll minimally need to mark the file so that it can be executed.
\n
Make it executable by running chmod a+x octopi-init*.AppImage then execute it with ./octopi-init*.AppImage
\n
Alternately, for the deb file image, you'd want to install it with sudo apt install ~/Downloads/octopi-init-1.0.9_amd64.deb, for example.
\n
Apple warning message
\n
When running octopi-init the first time, you'll need to Ctl-Click the application and select Open. Otherwise, you'll see a confusing warning like this:
\n
\n
It's just Apple trying to make $99 per developer per year as part of their business model. As suggested, Ctl-Click the program and choose Open to see:
\n
\n
Then just click the Open button again and you should be good to go. You won't have to repeat this again, in theory.
To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer.
\n
The first thing you need is the source code, in your command line:
\n
# Clone this repository\ngit clone https://github.com/liberodark/ODrive
\n
This will download all the source code in a \"ODrive\" folder in the current directory. Alternatively, you can download and extract the zip from github's interface.
\n
The steps below (Setup, Build, Run) are to execute in order to ready everything.
\n
Setup
\n
This step is only needed once, in order to install the necessary environment on your computer for ODrive to run.
\n
# Needed for electron 1.7+ to run, as it's based on chrome\nsudo apt install libgconf-2-4
\n
Note: If you're using Linux Bash for Windows, see this guide or use node from the command prompt.
\n
Build
\n
This step is to execute every new version of the source code.
\n
In the project directory:
\n
npm install
\n
Note: If you're using Ubuntu and you get an error message about a missing node binary, you may want to try this:
\n
sudo ln -s `which nodejs` /usr/bin/node
\n
If you are working on the code yourself and editing some files in app/assets/, you will need to run npm run webpack (or npm install) for those changes to have an impact on the application.
\n
Run
\n
In the project directory:
\n
npm start
\n
On Windows, you can make a .bat file with start cmd /k npm start that then you can double click to launch the program.
\n
The launch-on-startup functionality is only available on bundled releases. See the Deployment section.
\n
Testing
\n
To make sure the code is ok and run some sanity checks on it:
\n
npm test
\n
Deployment
\n
Releases
\n
There are currently three \"release\" formats supported: nsis (Windows installer) for Windows, AppImage for Linux, and DMG for Mac. You can generate them like this:
\n
npm run release-windows\nnpm run release-linux\nnpm run release-mac
\n
To create a different format, like a deb or rpm package for example:
\n
For DEB
\n
npm run release-linux deb
\n
For RPM
\n
sudo yum install rpm-build -y\nnpm run release-linux rpm\n
\n
The releases are generated in the dist folder.
\n
All formats supported by electron-builder are available, such as 7z, zip, tar.gz, deb, rpm, freebsd, pacman, p5p, apk, dmg, pkg, mas, nsis, appx, msi...
\n
Permissionless deployment
\n
An appimage on linux already runs permissionless. Anyway, you can just do:
\n
# Permissonless deployment\nnpm run release-windows dir # or zip, 7zip, tar.xz, tar.7z, ...
\n
This will create a folder in dist that you can just copy to a Windows machine.
To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer.
\n
The first thing you need is the source code, in your command line:
\n
# Clone this repository\ngit clone https://github.com/liberodark/ODrive
\n
This will download all the source code in a \"ODrive\" folder in the current directory. Alternatively, you can download and extract the zip from github's interface.
\n
The steps below (Setup, Build, Run) are to execute in order to ready everything.
\n
Setup
\n
This step is only needed once, in order to install the necessary environment on your computer for ODrive to run.
\n
# Needed for electron 1.7+ to run, as it's based on chrome\nsudo apt install libgconf-2-4
\n
Note: If you're using Linux Bash for Windows, see this guide or use node from the command prompt.
\n
Build
\n
This step is to execute every new version of the source code.
\n
In the project directory:
\n
npm install
\n
Note: If you're using Ubuntu and you get an error message about a missing node binary, you may want to try this:
\n
sudo ln -s `which nodejs` /usr/bin/node
\n
If you are working on the code yourself and editing some files in app/assets/, you will need to run npm run webpack (or npm install) for those changes to have an impact on the application.
\n
Run
\n
In the project directory:
\n
npm start
\n
On Windows, you can make a .bat file with start cmd /k npm start that then you can double click to launch the program.
\n
The launch-on-startup functionality is only available on bundled releases. See the Deployment section.
\n
Testing
\n
To make sure the code is ok and run some sanity checks on it:
\n
npm test
\n
Deployment
\n
Releases
\n
There are currently three \"release\" formats supported: nsis (Windows installer) for Windows, AppImage for Linux, and DMG for Mac. You can generate them like this:
\n
npm run release-windows\nnpm run release-linux\nnpm run release-mac
\n
To create a different format, like a deb or rpm package for example:
\n
For DEB
\n
npm run release-linux deb
\n
For RPM
\n
sudo yum install rpm-build -y\nnpm run release-linux rpm\n
\n
The releases are generated in the dist folder.
\n
All formats supported by electron-builder are available, such as 7z, zip, tar.gz, deb, rpm, freebsd, pacman, p5p, apk, dmg, pkg, mas, nsis, appx, msi...
\n
Permissionless deployment
\n
An appimage on linux already runs permissionless. Anyway, you can just do:
\n
# Permissonless deployment\nnpm run release-windows dir # or zip, 7zip, tar.xz, tar.7z, ...
\n
This will create a folder in dist that you can just copy to a Windows machine.
A browser built on top of Electron using nothing but pure web technologies.
\n
\n
\n
Features
\n
\n
Your web menu - Open tabs, your favorites and history only one click away, no longer hidden behind a scrollbar or menu option.
\n
Smarter url bar - Our URL bar will show you the true domain of a site just in case you do click anything fishy.
\n
Minimal UI - The simplest we could possible make the browser without causing more clicks.
\n
\n
Contributing
\n
If you find any bugs or want to improve OhHai Browser please feel free to submit a pull request, open an issue or send a homing pigeon. OhHai Browser is under constant development meaning bugs may happen from time to time (we're only human!). It would be great if you could point these our or even help us defeat them.
\n
Running
\n
Before running OhHai Browser please make sure you have the latestNode.js installed on your machine.
\n
To run, open the repo in a terminal and run:
\n
npm install\n
\n
Once this is done you can open the project in your editor of choice and run:
\n
npm run debug\n
\n
This should open the development version of the browser.
\n
Simples!
\n
",
"readmeOriginal": "
\n\n
OhHai Browser
\n
\n
\n
A browser built on top of Electron using nothing but pure web technologies.
\n
\n
\n
Features
\n
\n
Your web menu - Open tabs, your favorites and history only one click away, no longer hidden behind a scrollbar or menu option.
\n
Smarter url bar - Our URL bar will show you the true domain of a site just in case you do click anything fishy.
\n
Minimal UI - The simplest we could possible make the browser without causing more clicks.
\n
\n
Contributing
\n
If you find any bugs or want to improve OhHai Browser please feel free to submit a pull request, open an issue or send a homing pigeon. OhHai Browser is under constant development meaning bugs may happen from time to time (we're only human!). It would be great if you could point these our or even help us defeat them.
\n
Running
\n
Before running OhHai Browser please make sure you have the latestNode.js installed on your machine.
\n
To run, open the repo in a terminal and run:
\n
npm install\n
\n
Once this is done you can open the project in your editor of choice and run:
\n
npm run debug\n
\n
This should open the development version of the browser.
Based on the universe of Hereva created by David Revoy with contributions by Craig Maloney.\nCorrections by Willem Sonke, Moini, Hali, CGand and Alex Gryson.\nTranslated into Spanish by TheFaico
Based on the universe of Hereva created by David Revoy with contributions by Craig Maloney.\nCorrections by Willem Sonke, Moini, Hali, CGand and Alex Gryson.\nTranslated into Spanish by TheFaico
# Clone this repository\n$ git clone https://github.com/tmoreno/open-log-viewer\n\n# Go into the repository\n$ cd open-log-viewer\n\n# Install dependencies\n$ npm install\n\n# Build app\n$ npm run build\n\n# Run the app\n$ npm run start
\n
Download
\n
Open Log Viewer is available for Linux, Mac and Windows
# Clone this repository\n$ git clone https://github.com/tmoreno/open-log-viewer\n\n# Go into the repository\n$ cd open-log-viewer\n\n# Install dependencies\n$ npm install\n\n# Build app\n$ npm run build\n\n# Run the app\n$ npm run start
\n
Download
\n
Open Log Viewer is available for Linux, Mac and Windows
This is the reference client for the OpenBazaar network. It is an interface for your OpenBazaar node, to use it you will need to run an OpenBazaar node either locally or on a remote server.
\n
For full installable versions of the OpenBazaar app, with the server and client bundled together, go to the OpenBazaar download page.
\n
\n
Getting Started
\n
To create a local development copy of the reference client, clone the client repository into a directory of your choice:
Make sure you have Node.js and NPM installed. Node versions older than 8.9.2 or NPM versions older than 5.5.1 may not work.
\n
This client uses Babel to compile ES6 JavaScript. You should be familiar with ES6 before modifying its code.
\n
Installation
\n\n
Navigate to the directory you cloned the repo into.
\n
Enter npm install
\n\n
Running
\n
npm start will:
\n
\n
compile your Sass / re-compile on changes
\n
run BrowserSync in watch mode so the app automatically refreshes on JS and HTML changes and dynamically injects any CSS / Sass changes**.
\n
launch the Electron app
\n
\n
** At this time, the app will not refresh on main.js (or other root folder JS changes). This would require the entire Electron app to refresh and BrowserSync is only refreshing our browser.
\n
Linux Troubleshooting
\n
If you see an ENOSPC error after trying npm start and you are using Linux, you may need to do the following:
\n\n
Enter this on the command line:\necho fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
\n\n
For Arch Linux add this line to /etc/sysctl.d/99-sysctl.conf:\nfs.inotify.max_user_watches=524288
\n\n
Execute: sysctl --system
\n\n
This will prevent your system from having errors due to too many files being watched.
\n
Linting
\n
npm run lint will run eslint on the JS files.
\n
npm run lint:watch will run eslint on any JS file changes.
\n
Testing
\n
npm run test will execute test files in the test folder.
\n
npm run test:watch will execute the tests on any file changes.
You can request new languages there, and contribute to the translation of existing languages.
\n
New languages are usually added when they reach 80% or more completion, and not removed from the client unless they fall below 60% for several releases.
\n
License
\n
This project is licensed under the MIT License. You can view LICENSE.MD for more details.
\n
",
"readmeOriginal": "
OpenBazaar Client v2
\n
This is the reference client for the OpenBazaar network. It is an interface for your OpenBazaar node, to use it you will need to run an OpenBazaar node either locally or on a remote server.
\n
For full installable versions of the OpenBazaar app, with the server and client bundled together, go to the OpenBazaar download page.
\n
\n
Getting Started
\n
To create a local development copy of the reference client, clone the client repository into a directory of your choice:
Make sure you have Node.js and NPM installed. Node versions older than 8.9.2 or NPM versions older than 5.5.1 may not work.
\n
This client uses Babel to compile ES6 JavaScript. You should be familiar with ES6 before modifying its code.
\n
Installation
\n\n
Navigate to the directory you cloned the repo into.
\n
Enter npm install
\n\n
Running
\n
npm start will:
\n
\n
compile your Sass / re-compile on changes
\n
run BrowserSync in watch mode so the app automatically refreshes on JS and HTML changes and dynamically injects any CSS / Sass changes**.
\n
launch the Electron app
\n
\n
** At this time, the app will not refresh on main.js (or other root folder JS changes). This would require the entire Electron app to refresh and BrowserSync is only refreshing our browser.
\n
Linux Troubleshooting
\n
If you see an ENOSPC error after trying npm start and you are using Linux, you may need to do the following:
\n\n
Enter this on the command line:\necho fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
\n\n
For Arch Linux add this line to /etc/sysctl.d/99-sysctl.conf:\nfs.inotify.max_user_watches=524288
\n\n
Execute: sysctl --system
\n\n
This will prevent your system from having errors due to too many files being watched.
\n
Linting
\n
npm run lint will run eslint on the JS files.
\n
npm run lint:watch will run eslint on any JS file changes.
\n
Testing
\n
npm run test will execute test files in the test folder.
\n
npm run test:watch will execute the tests on any file changes.
You can request new languages there, and contribute to the translation of existing languages.
\n
New languages are usually added when they reach 80% or more completion, and not removed from the client unless they fall below 60% for several releases.
\n
License
\n
This project is licensed under the MIT License. You can view LICENSE.MD for more details.
Oversetter is an translation app, which allows you to translate content directly from your menu bar. Oversetter is an open-source project based on Angular and Electron. It uses free API of Yandex Translate for text translation.
\n
Features
\n
\n
93 languages - Thanks to Yandex Translate API
\n
Built-in dictionary - Save words and phrases for later
\n
Themes support - Includes dark and light theme
\n
Cross-platform support - Available for MacOs, Linux and Windows
\n
Fast and easy access - Open Oversetter directly from the system tray
\n
Offline mode - Save and learn vocabulary also in offline mode
\n
\n
Screenshots
\n
\n \n Light theme\n
\n
\n \n Dark theme\n
\n
\n \n Dictionary\n
\n
Download
\n
You can download the latest version of the application for macOS, Windows and Linux.
Oversetter is an translation app, which allows you to translate content directly from your menu bar. Oversetter is an open-source project based on Angular and Electron. It uses free API of Yandex Translate for text translation.
\n
Features
\n
\n
93 languages - Thanks to Yandex Translate API
\n
Built-in dictionary - Save words and phrases for later
\n
Themes support - Includes dark and light theme
\n
Cross-platform support - Available for MacOs, Linux and Windows
\n
Fast and easy access - Open Oversetter directly from the system tray
\n
Offline mode - Save and learn vocabulary also in offline mode
\n
\n
Screenshots
\n
\n \n Light theme\n
\n
\n \n Dark theme\n
\n
\n \n Dictionary\n
\n
Download
\n
You can download the latest version of the application for macOS, Windows and Linux.
OpenSpeedTest™️ - Pure HTML5 Network Performance Estimation Tool.
\n
Hi! I'm Vishnu the one who developed OpenSpeedTest™️. OpenSpeedTest use XMLHttpRequest (XHR), HTML, CSS, JS, & SVG For this network performance estimation tool. I started this project in 2011 and moved to OpenSpeedTest.com dedicated Project/Domain Name in 2013.
OpenSpeedTest contains Only \"STATIC\" Files like HTML,CSS & JS.\nSo you don't need to worry about Security Updates or Hidden Exploits that may compromise your secure environments.
\n
Lightweight, High Performance.
\n
OpenSpeedTest is written in Pure JavaScript. No Third-Party frameworks or libraries were used. SpeedTest script file size is under 7kB gzip. The unexpected side effect of using Pure JavaScript is High Performance.
\n
Run a speed test from Any Device.
\n
OpenSpeedTest will run on Any Web Browser that is IE10 or new.
\n
Ready for Any Display Size and Resolution.
\n
OpenSpeedTest User interface is written in SVG.
\n
You can Create Your Own SpeedTest Server using OpenSpeedTest.
\n
Server Requirements :
\n
Nginx, Apache, IIS, Express, or Any Web server that supports HTTP/1.1.
\n
\n
Accept, GET, POST, HEAD & OPTIONS, Response 200 OK.
\n
Accept, POST to Static Files, Response 200 OK.
\n
Timeout greater than 60 seconds.
\n
Disable Access logs for Increasing server performance.
OpenSpeedTest-Server is available as Docker Image, Windows Mac, Linux, Android, & iOS Applications.
\n
New features:
\n\n
Stress Test.
\n\n
To enable stress pass 'stress' keyword as a URL parameter.
\n
http://192.168.1.5?stress=low\n
\n
After stress keyword you should give a value, number of seconds or preset values such as \"low\", \"medium\" ,\"high\" ,\"veryhigh\" ,\"extreem\". Will run a speed test for 300,600,900,1800,3600 seconds respectively. Or you can specify eg:5000 directly without any preset keywords.
\n
http://192.168.1.5?stress=5000\n
\n\n
Start a Speedtest Automatically.
\n\n
Starts a speed test automatically
\n
http://192.168.1.5?run\n
\n
Start a speed test automatically after few seconds
\n
http://192.168.1.5?run=10\n
\n
You can pass multiple keywords
\n
http://192.168.1.5?run&stress=300\n
\n
This will start a speed test immediately and run for 300 seconds in each direction. That is 300 seconds for download and 300 seconds for upload.
\n\n
Save results to a Database
\n\n
Edit Index.html
\n
var saveData = true;\nvar saveDataURL = \"//yourDatabase.Server.com:4500/save?data=\";\n
\n\n
Add multiple servers (Choose one with least latency automatically)
Overhead Compensation factor, This is browser based test, Many Unknowns. Currently 4%. That is within the margin of error. you can pass \"clean\" as a URL parameter and reset it to Zero or set anything under 5%, for that pass 1 for 1% , 2 = 2%, 3 =3% & 4=4% , \"clean\" will not accept values above 5, so Compensation is limited to maximum 4%
\n
Take a look at index.html, you can set a custom ping sample size, threads, upload data size, initial dlDuration etc.
\n
Tested up to 10Gbps on real NIC and up to 30Gbps on Virtual NIC. You can run a speed test from any device with a Web Browser that is IE10 or new. That means you can test your network speed from your Smart TV, Console, etc. No additional plugins or software required.
\n
TLDR: If you need to test 10Gbps or more. You may need to use the latest hardware. Use Safari or Chrome in Private Window or Incognito Window.
\n
For testing 10GbE or more, you will need to use the latest hardware. I used M1 MacMini with Built-in 10GbE and a Linux Machine with AMD Ryzen™ 9 3900XT. Safari was the fastest browser when I tested it. Chrome and Chromium Edge can handle 10Gbps or more on macOS and Linux. You can test more than 10Gbps with Chrome or Safari on M1 MacMini or newer hardware. Or on a Linux Machine with Chrome or Chromium browser using a 3900XT or newer Processor. Up to 2.5 to 3.6 Gbps can be tested on almost all popular browsers and devices. Windows max limit was around 8.5 Gbps for download and 9.4Gbps for upload. Tested on Edge and Chrome. Use Private Window or Incognito Window if you found unusual test results. Probably some Extensions are slowing the speed test process. This tool can be used to check the browser performance and impact of Extensions on your browsing experience.
You have two options here. If you need a custom deployment, use our source code along with a web server of your choice. I prefer Nginx, and you can find my Nginx Configuration here. Or you can use our docker image. You can deploy it on your LAN/WAN without an active internet connection.
\n
This is docker implementation using nginxinc/nginx-unprivileged:stable-alpine. uses significantly fewer resources.
\n
Docker install instructions:
\n
Install Docker and run the following command!
\n\n
\n
docker run --restart=unless-stopped \\ \n--name openspeedtest -d \\ #set name and Run container in background and print container ID\n-p 3000:3000 \\ #Host-port:container-port for http\n-p 3001:3001 \\ #Host-port:container-port for https\nopenspeedtest/latest #Image
Docker images run better on Linux Platforms, including your NAS. But if you install docker on macOS or Windows, you may see poor performance. I asked this on Docker forums, and they told me macOS and Windows support is for Development purposes only. For Production, you need to use any Linux Platform.
\n
The same Story goes for Windows NGINX. Nginx uses only one worker even if you specify n number of worker processes. They will show in Task Manager, but the system will only use one. I got this information directly from the Nginx website.
\n
Speedtest for Home/Office LAN! [Easy to use Standalone Application for Desktop]
\n
An application for launching a quick speed test server. Without using any commands!\nFirst, test your local network speed before pointing fingers towards your ISP for a slow and sluggish internet experience. Introducing Network Speed Test Server for Windows, Mac & Linux!. For large-scale deployments, docker image and source code are available. This application is good enough for testing speeds up to 15 to 20 Gbps. Download Now!.
\n
How is this useful for me?
\n
You can run OpenSpeedTest Server in your Home/Office/Cloud. So that you or employees who work from home can run a speed test to your office and make sure they can run everything smoothly.
\n
Choosing between ISP1 & ISP2.
\n
Sometimes your ISP2 is Faster than ISP1 when you test your speed on popular speed test sites. But when you connect to your Home/Office/Cloud, that slower connection may perform better. The only way to find out is to run a speed test against your infrastructure.
\n
Troubleshooting network issues.
\n
It is common even when your Internet connection is working fine, but some of the devices in your network may experience trouble getting decent connectivity to the internet. The issue might be the wrong VLAN ID or Faulty Switch. If you run a Local network speed test, you can find and fix these issues easily.
\n
Before you add a repeater.
\n
Most repeaters will reduce your network speed by 50%, so if you put it far away, it will perform worst, and if you put it too close, you will not get enough coverage if you run a Local Network speed test. Depending on the application requirements, you can decide exactly where you need to put your repeater.
\n
Browsing experience.
\n
Many useful browser extensions are out there that we all know and love. But some of them are really slowing you down for few seconds per page you visit. You may see good performance when you test your network performance via File Transfer or Command-line utilities, but you may experience poor performance when browsing the internet. This is due to a bad browser configuration that including unwanted extensions installed. From my experience, only keep the one you are going to use every single day. Extension that you may use once in a while should be removed or disabled for maximum performance. If you see poor performance, try OpenSpeedTest from Private Window or Incognito Window. This tool can be used to check the browser performance and impact of Extensions on your browsing experience.
\n
No client-side software or plugin is required. You can run a network speed test from any device with a web browser that is IE10 or new.
OpenSpeedTest™️ - Pure HTML5 Network Performance Estimation Tool.
\n
Hi! I'm Vishnu the one who developed OpenSpeedTest™️. OpenSpeedTest use XMLHttpRequest (XHR), HTML, CSS, JS, & SVG For this network performance estimation tool. I started this project in 2011 and moved to OpenSpeedTest.com dedicated Project/Domain Name in 2013.
OpenSpeedTest contains Only \"STATIC\" Files like HTML,CSS & JS.\nSo you don't need to worry about Security Updates or Hidden Exploits that may compromise your secure environments.
\n
Lightweight, High Performance.
\n
OpenSpeedTest is written in Pure JavaScript. No Third-Party frameworks or libraries were used. SpeedTest script file size is under 7kB gzip. The unexpected side effect of using Pure JavaScript is High Performance.
\n
Run a speed test from Any Device.
\n
OpenSpeedTest will run on Any Web Browser that is IE10 or new.
\n
Ready for Any Display Size and Resolution.
\n
OpenSpeedTest User interface is written in SVG.
\n
You can Create Your Own SpeedTest Server using OpenSpeedTest.
\n
Server Requirements :
\n
Nginx, Apache, IIS, Express, or Any Web server that supports HTTP/1.1.
\n
\n
Accept, GET, POST, HEAD & OPTIONS, Response 200 OK.
\n
Accept, POST to Static Files, Response 200 OK.
\n
Timeout greater than 60 seconds.
\n
Disable Access logs for Increasing server performance.
OpenSpeedTest-Server is available as Docker Image, Windows Mac, Linux, Android, & iOS Applications.
\n
New features:
\n\n
Stress Test.
\n\n
To enable stress pass 'stress' keyword as a URL parameter.
\n
http://192.168.1.5?stress=low\n
\n
After stress keyword you should give a value, number of seconds or preset values such as \"low\", \"medium\" ,\"high\" ,\"veryhigh\" ,\"extreem\". Will run a speed test for 300,600,900,1800,3600 seconds respectively. Or you can specify eg:5000 directly without any preset keywords.
\n
http://192.168.1.5?stress=5000\n
\n\n
Start a Speedtest Automatically.
\n\n
Starts a speed test automatically
\n
http://192.168.1.5?run\n
\n
Start a speed test automatically after few seconds
\n
http://192.168.1.5?run=10\n
\n
You can pass multiple keywords
\n
http://192.168.1.5?run&stress=300\n
\n
This will start a speed test immediately and run for 300 seconds in each direction. That is 300 seconds for download and 300 seconds for upload.
\n\n
Save results to a Database
\n\n
Edit Index.html
\n
var saveData = true;\nvar saveDataURL = \"//yourDatabase.Server.com:4500/save?data=\";\n
\n\n
Add multiple servers (Choose one with least latency automatically)
Overhead Compensation factor, This is browser based test, Many Unknowns. Currently 4%. That is within the margin of error. you can pass \"clean\" as a URL parameter and reset it to Zero or set anything under 5%, for that pass 1 for 1% , 2 = 2%, 3 =3% & 4=4% , \"clean\" will not accept values above 5, so Compensation is limited to maximum 4%
\n
Take a look at index.html, you can set a custom ping sample size, threads, upload data size, initial dlDuration etc.
\n
Tested up to 10Gbps on real NIC and up to 30Gbps on Virtual NIC. You can run a speed test from any device with a Web Browser that is IE10 or new. That means you can test your network speed from your Smart TV, Console, etc. No additional plugins or software required.
\n
TLDR: If you need to test 10Gbps or more. You may need to use the latest hardware. Use Safari or Chrome in Private Window or Incognito Window.
\n
For testing 10GbE or more, you will need to use the latest hardware. I used M1 MacMini with Built-in 10GbE and a Linux Machine with AMD Ryzen™ 9 3900XT. Safari was the fastest browser when I tested it. Chrome and Chromium Edge can handle 10Gbps or more on macOS and Linux. You can test more than 10Gbps with Chrome or Safari on M1 MacMini or newer hardware. Or on a Linux Machine with Chrome or Chromium browser using a 3900XT or newer Processor. Up to 2.5 to 3.6 Gbps can be tested on almost all popular browsers and devices. Windows max limit was around 8.5 Gbps for download and 9.4Gbps for upload. Tested on Edge and Chrome. Use Private Window or Incognito Window if you found unusual test results. Probably some Extensions are slowing the speed test process. This tool can be used to check the browser performance and impact of Extensions on your browsing experience.
You have two options here. If you need a custom deployment, use our source code along with a web server of your choice. I prefer Nginx, and you can find my Nginx Configuration here. Or you can use our docker image. You can deploy it on your LAN/WAN without an active internet connection.
\n
This is docker implementation using nginxinc/nginx-unprivileged:stable-alpine. uses significantly fewer resources.
\n
Docker install instructions:
\n
Install Docker and run the following command!
\n\n
\n
docker run --restart=unless-stopped \\ \n--name openspeedtest -d \\ #set name and Run container in background and print container ID\n-p 3000:3000 \\ #Host-port:container-port for http\n-p 3001:3001 \\ #Host-port:container-port for https\nopenspeedtest/latest #Image
Docker images run better on Linux Platforms, including your NAS. But if you install docker on macOS or Windows, you may see poor performance. I asked this on Docker forums, and they told me macOS and Windows support is for Development purposes only. For Production, you need to use any Linux Platform.
\n
The same Story goes for Windows NGINX. Nginx uses only one worker even if you specify n number of worker processes. They will show in Task Manager, but the system will only use one. I got this information directly from the Nginx website.
\n
Speedtest for Home/Office LAN! [Easy to use Standalone Application for Desktop]
\n
An application for launching a quick speed test server. Without using any commands!\nFirst, test your local network speed before pointing fingers towards your ISP for a slow and sluggish internet experience. Introducing Network Speed Test Server for Windows, Mac & Linux!. For large-scale deployments, docker image and source code are available. This application is good enough for testing speeds up to 15 to 20 Gbps. Download Now!.
\n
How is this useful for me?
\n
You can run OpenSpeedTest Server in your Home/Office/Cloud. So that you or employees who work from home can run a speed test to your office and make sure they can run everything smoothly.
\n
Choosing between ISP1 & ISP2.
\n
Sometimes your ISP2 is Faster than ISP1 when you test your speed on popular speed test sites. But when you connect to your Home/Office/Cloud, that slower connection may perform better. The only way to find out is to run a speed test against your infrastructure.
\n
Troubleshooting network issues.
\n
It is common even when your Internet connection is working fine, but some of the devices in your network may experience trouble getting decent connectivity to the internet. The issue might be the wrong VLAN ID or Faulty Switch. If you run a Local network speed test, you can find and fix these issues easily.
\n
Before you add a repeater.
\n
Most repeaters will reduce your network speed by 50%, so if you put it far away, it will perform worst, and if you put it too close, you will not get enough coverage if you run a Local Network speed test. Depending on the application requirements, you can decide exactly where you need to put your repeater.
\n
Browsing experience.
\n
Many useful browser extensions are out there that we all know and love. But some of them are really slowing you down for few seconds per page you visit. You may see good performance when you test your network performance via File Transfer or Command-line utilities, but you may experience poor performance when browsing the internet. This is due to a bad browser configuration that including unwanted extensions installed. From my experience, only keep the one you are going to use every single day. Extension that you may use once in a while should be removed or disabled for maximum performance. If you see poor performance, try OpenSpeedTest from Private Window or Incognito Window. This tool can be used to check the browser performance and impact of Extensions on your browsing experience.
\n
No client-side software or plugin is required. You can run a network speed test from any device with a web browser that is IE10 or new.
📡 P3X Redis UI is a very functional handy database GUI and works in your pocket on the responsive web or as a desktop app v2022.4.122
\n
Bugs are evident™ - MATRIX️
\n
NodeJS LTS is supported
\n
Built on NodeJs version
\n
v16.14.0\n
\n
Description
\n
p3x-redis-ui is a new Redis GUI which can serve as a backend server or as a desktop application.
\n
Some of the features are coming below.
\n
The best use case for this Redis GUI, if you manage tons of JSON, as it includes JSONEditor and ACE. Check out the different options in the edit json button dialog. :)
\n\n \n
Warning
\n
It is not recommend to generate the configuration JSON via a text editor. The perfect solution is to generate the configuration in the GUI, then apply for example in Kubernetes.
This Redis database every day in the morning European time CET restores some data, so you may do whatever you want to do.
\n
Besides, you could experience the test app to exit for 1 second, because it could auto update itself. It auto updates itself when the code from Git changes.
\n
Third, it is a snapshot, it is possible, that the features are different from GitHub or NPM as the releases are usually monthly or as they happen.
After downloading the AppImage, make it an executable.
\n
mkdir -p $HOME/opt\nmv ~/Downloads/p3x-redis-ui-a.b.c-x86_64.AppImage $HOME/opt/\nchmod +x $HOME/opt/p3x-redis-ui-a.b.c-x86_64.AppImage\n# Then you can run it\n$HOME/opt/p3x-redis-ui-a.b.c-x86_64.AppImage &
wget https://raw.githubusercontent.com/patrikx3/redis-ui/master/docker-compose.yml\n# You might want to tune the settings folder in the docker-compose.yml.\n# the /home/user/p3x-redis-ui-settings settings folder in yml should be set by yourself.\ndocker-compose up
\n
Bare
\n
# you can tune the settings folder\n# in the -v first part is where you can set your own folder\nmkdir -p ./p3x-redis-ui-settings\ndocker run -v $PWD/p3x-redis-ui-settings:/settings -h docker-p3x-redis-ui -p 7843:7843 -t -i patrikx3/p3x-redis-ui
You can override the server port via an environment variable P3XRS_PORT
\n
In the connections, you can enable read only mode, which means, the user will not be able to modify via gui and the console (only pub/sub monitor and select database is allowed) is disabled.
\n
In a sub-directory, you can use Nginx/Ingress to rewrite your paths.\n
To show the menu in the desktop version, click ALT
\n
There is a new feature in the settings/tree setting, which limits the received keys, the minimum is 100, the maximum is 100k, so there is no more crash, because of that
\n
Since v2020.4.189, the tree can handle bigger key count, as of now, we are using deferred rendering for the tree - only rendering what is in the viewport, so it should be much faster versus rendering everything at once
\n
Please, check out your Redis use case, if this program can cover your requirements
\n
Does not handle binary data
\n
Does not work with sentinel, but it will be developed at some point of time
\n
Has cluster support\n
\n
Thanks so much for the awesome contribution by @idetoile (now -> @devthejo) of the cluster function.
\n
\n
\n
Able to monitor all channel messages on the console by using a checkbox.
\n
Works with multiple languages
\n
Works as a backend
\n
Works as a desktop via Electron\n
\n
Linux
\n
Windows
\n
macOS
\n
\n
\n
Starts with no settings without config, or setup your own config
\n
Able to create, test, save, delete multiple connections or a readonly connections setup, for shared usage*
\n
Online you are able to choose the tree separator, for example :, /, -, space etc... or even empty separator
\n
It is based on Redis-Commander and phpRedisAdmin
\n
You can select the database via console or the drop down.\n
\n
The database select drop down shows if the checked database is empty or filled, so you can always know which is filled
\n
\n
\n
Save button to save the db
\n
Full statistics pages, can be useful
\n
This is just a New Kind on the Block in the Redis world, so, of course, there are advantages and disadvantages in the other Redis GUIs
\n
Dark - Dracula / light themes
\n
Search\n
\n
Client side mode searching in keys - small key set
\n
Server side mode searching in keys - large key set
\n
Search mode\n
\n
the search keys starts with a string key
\n
the search keys includes a string in the key
\n
\n
\n
\n
\n
The app is responsive, it works on a phone/tablet as well
\n
There is a key sorting function, which has a penalty, because it sorts with natural-compare, which means it is more human display, then just raw characters, but up to 100k the keys is still ok.
\n
For big key set to be usable paging should be a maximum 1000 keys / page, though for 250 is the sweetest spot
For file names do not use camelCase, but use kebab-case. Folder should be named as kebab-case as well. As you can see, all code filenames are using it like that, please do not change that.\nPlease apply the .editorconfig settings in your IDE.
\n
It creates a package that allows you to compose p3x-redis-ui-server and p3x-redis-ui-material into one:
If you develop on this app, you are required to test, that all JS you code write is working with Electron (as the embedded Electron NodeJs version is usually below the real NodeJs). Once the server and client is running as above, you clone this repo and test like this:
\n
# terminal 1\ngit clone https://github.com/patrikx3/redis-ui-material.git\ncd redis-ui-material\nnpm install\nnpm run dev\n\n# terminal 2\ngit clone https://github.com/patrikx3/redis-ui-server.git\ncd redis-ui-server\nnpm install\nnpm run dev\n\n# if you are not working on Electron, at this point you can fire the browser\n# @ http://localhost:8080/\n\n# terminal 3 \ngit clone https://github.com/patrikx3/redis-ui.git\ncd redis-ui\nnpm install\n./scripts/start-local.sh\n# or\n.\\scripts\\start-local.cmd
\n
Development of the translations
\n
By default, only English is created, but given all strings are from a JS file, it is very quick to spawn another language eg. German, French, Spanish etc ...
For a new language:\nAdd into redis-ui-material/src/bundle.js.
\n
This solution is not using REST at all, but instead uses Socket.IO 🤣, which is weird, but I like it, it is supposed to be more responsive, as there is no big overhead in the HTTP protocol.
🙏 This is an open-source project. Star this repository, if you like it, or even donate to maintain the servers and the development. Thank you so much!
\n
Possible, this server, rarely, is down, please, hang on for 15-30 minutes and the server will be back up.
\n
All my domains (patrikx3.com and corifeus.com) could have minor errors, since I am developing in my free time. However, it is usually stable.
\n
Note about versioning: Versions are cut in Major.Minor.Patch schema. Major is always the current year. Minor is either 4 (January - June) or 10 (July - December). Patch is incremental by every build. If there is a breaking change, it should be noted in the readme.
📡 P3X Redis UI is a very functional handy database GUI and works in your pocket on the responsive web or as a desktop app v2022.4.122
\n
Bugs are evident™ - MATRIX️
\n
NodeJS LTS is supported
\n
Built on NodeJs version
\n
v16.14.0\n
\n
Description
\n
p3x-redis-ui is a new Redis GUI which can serve as a backend server or as a desktop application.
\n
Some of the features are coming below.
\n
The best use case for this Redis GUI, if you manage tons of JSON, as it includes JSONEditor and ACE. Check out the different options in the edit json button dialog. :)
\n\n \n
Warning
\n
It is not recommend to generate the configuration JSON via a text editor. The perfect solution is to generate the configuration in the GUI, then apply for example in Kubernetes.
This Redis database every day in the morning European time CET restores some data, so you may do whatever you want to do.
\n
Besides, you could experience the test app to exit for 1 second, because it could auto update itself. It auto updates itself when the code from Git changes.
\n
Third, it is a snapshot, it is possible, that the features are different from GitHub or NPM as the releases are usually monthly or as they happen.
After downloading the AppImage, make it an executable.
\n
mkdir -p $HOME/opt\nmv ~/Downloads/p3x-redis-ui-a.b.c-x86_64.AppImage $HOME/opt/\nchmod +x $HOME/opt/p3x-redis-ui-a.b.c-x86_64.AppImage\n# Then you can run it\n$HOME/opt/p3x-redis-ui-a.b.c-x86_64.AppImage &
wget https://raw.githubusercontent.com/patrikx3/redis-ui/master/docker-compose.yml\n# You might want to tune the settings folder in the docker-compose.yml.\n# the /home/user/p3x-redis-ui-settings settings folder in yml should be set by yourself.\ndocker-compose up
\n
Bare
\n
# you can tune the settings folder\n# in the -v first part is where you can set your own folder\nmkdir -p ./p3x-redis-ui-settings\ndocker run -v $PWD/p3x-redis-ui-settings:/settings -h docker-p3x-redis-ui -p 7843:7843 -t -i patrikx3/p3x-redis-ui
You can override the server port via an environment variable P3XRS_PORT
\n
In the connections, you can enable read only mode, which means, the user will not be able to modify via gui and the console (only pub/sub monitor and select database is allowed) is disabled.
\n
In a sub-directory, you can use Nginx/Ingress to rewrite your paths.\n
To show the menu in the desktop version, click ALT
\n
There is a new feature in the settings/tree setting, which limits the received keys, the minimum is 100, the maximum is 100k, so there is no more crash, because of that
\n
Since v2020.4.189, the tree can handle bigger key count, as of now, we are using deferred rendering for the tree - only rendering what is in the viewport, so it should be much faster versus rendering everything at once
\n
Please, check out your Redis use case, if this program can cover your requirements
\n
Does not handle binary data
\n
Does not work with sentinel, but it will be developed at some point of time
\n
Has cluster support\n
\n
Thanks so much for the awesome contribution by @idetoile (now -> @devthejo) of the cluster function.
\n
\n
\n
Able to monitor all channel messages on the console by using a checkbox.
\n
Works with multiple languages
\n
Works as a backend
\n
Works as a desktop via Electron\n
\n
Linux
\n
Windows
\n
macOS
\n
\n
\n
Starts with no settings without config, or setup your own config
\n
Able to create, test, save, delete multiple connections or a readonly connections setup, for shared usage*
\n
Online you are able to choose the tree separator, for example :, /, -, space etc... or even empty separator
\n
It is based on Redis-Commander and phpRedisAdmin
\n
You can select the database via console or the drop down.\n
\n
The database select drop down shows if the checked database is empty or filled, so you can always know which is filled
\n
\n
\n
Save button to save the db
\n
Full statistics pages, can be useful
\n
This is just a New Kind on the Block in the Redis world, so, of course, there are advantages and disadvantages in the other Redis GUIs
\n
Dark - Dracula / light themes
\n
Search\n
\n
Client side mode searching in keys - small key set
\n
Server side mode searching in keys - large key set
\n
Search mode\n
\n
the search keys starts with a string key
\n
the search keys includes a string in the key
\n
\n
\n
\n
\n
The app is responsive, it works on a phone/tablet as well
\n
There is a key sorting function, which has a penalty, because it sorts with natural-compare, which means it is more human display, then just raw characters, but up to 100k the keys is still ok.
\n
For big key set to be usable paging should be a maximum 1000 keys / page, though for 250 is the sweetest spot
For file names do not use camelCase, but use kebab-case. Folder should be named as kebab-case as well. As you can see, all code filenames are using it like that, please do not change that.\nPlease apply the .editorconfig settings in your IDE.
\n
It creates a package that allows you to compose p3x-redis-ui-server and p3x-redis-ui-material into one:
If you develop on this app, you are required to test, that all JS you code write is working with Electron (as the embedded Electron NodeJs version is usually below the real NodeJs). Once the server and client is running as above, you clone this repo and test like this:
\n
# terminal 1\ngit clone https://github.com/patrikx3/redis-ui-material.git\ncd redis-ui-material\nnpm install\nnpm run dev\n\n# terminal 2\ngit clone https://github.com/patrikx3/redis-ui-server.git\ncd redis-ui-server\nnpm install\nnpm run dev\n\n# if you are not working on Electron, at this point you can fire the browser\n# @ http://localhost:8080/\n\n# terminal 3 \ngit clone https://github.com/patrikx3/redis-ui.git\ncd redis-ui\nnpm install\n./scripts/start-local.sh\n# or\n.\\scripts\\start-local.cmd
\n
Development of the translations
\n
By default, only English is created, but given all strings are from a JS file, it is very quick to spawn another language eg. German, French, Spanish etc ...
For a new language:\nAdd into redis-ui-material/src/bundle.js.
\n
This solution is not using REST at all, but instead uses Socket.IO 🤣, which is weird, but I like it, it is supposed to be more responsive, as there is no big overhead in the HTTP protocol.
🙏 This is an open-source project. Star this repository, if you like it, or even donate to maintain the servers and the development. Thank you so much!
\n
Possible, this server, rarely, is down, please, hang on for 15-30 minutes and the server will be back up.
\n
All my domains (patrikx3.com and corifeus.com) could have minor errors, since I am developing in my free time. However, it is usually stable.
\n
Note about versioning: Versions are cut in Major.Minor.Patch schema. Major is always the current year. Minor is either 4 (January - June) or 10 (July - December). Patch is incremental by every build. If there is a breaking change, it should be noted in the readme.
git clone git@github.com:mb21/panwriter.git\ncd panwriter\nyarn install\n\n## To run the app in development mode:\nyarn run electron:dev\n\n## To build distributable app package (goes to ./dist):\nyarn dist\n
\n
Check out the package.json for more scripts to run.
\n
TODOs
\n
\n
Preview:\n
\n
respect css, toc metadata fields
\n
\n
\n
Editor:\n
\n
expand Format menu
\n
spell check
\n
improve find/replace
\n
\n
\n
add a Settings/Preferences window (or should this just be a settings.yaml file?) where you can:\n
\n
set a CodeMirror editor theme css
\n
edit the default CSS and YAML files
\n
choose pandoc executable (probably with file-open dialog, which we can use for app sandboxing with security-scoped bookmarks)
\n
\n
\n
Write pandoc lua filter that does some PanWriter-specific transformations:\n
git clone git@github.com:mb21/panwriter.git\ncd panwriter\nyarn install\n\n## To run the app in development mode:\nyarn run electron:dev\n\n## To build distributable app package (goes to ./dist):\nyarn dist\n
\n
Check out the package.json for more scripts to run.
\n
TODOs
\n
\n
Preview:\n
\n
respect css, toc metadata fields
\n
\n
\n
Editor:\n
\n
expand Format menu
\n
spell check
\n
improve find/replace
\n
\n
\n
add a Settings/Preferences window (or should this just be a settings.yaml file?) where you can:\n
\n
set a CodeMirror editor theme css
\n
edit the default CSS and YAML files
\n
choose pandoc executable (probably with file-open dialog, which we can use for app sandboxing with security-scoped bookmarks)
\n
\n
\n
Write pandoc lua filter that does some PanWriter-specific transformations:\n
P3X OneNote Linux is, actually, an independent browser window for the online OneNote. You can use this program without having to clutter your browser. The main functions are:
\n
\n
that is independent from any browser, as it works in it's own process
\n
it provides a tray, that allows you to close your browser while it keeps running in the tray
\n
the data is cached and is faster than always opening a new window
\n
it allows you to sign in with the corporate or the personal login
\n
when there is a new update, it auto updates itself (Only in the AppImage version.)
\n
the program allows to use other Microsoft online applications, but the dedicated purpose is to use OneNote
\n
\n
Verbose feature info
\n
\n
Dark mode is enabled (but it is a hack, not supported by Microsoft, so quirky)
\n
To show the menu, click ALT
\n
Desktop menu
\n
You can use the --minimized argument to start the app with minimized window
\n
You can zoom the window
\n
Icon
\n
There is a bottom bar\n
\n
It shows the current location
\n
When you click on this bar, the location URL is copied into the clipboard
\n
\n
\n
There is a new button on the Edit menu\n
\n
Copy this location to the clipboard\n
\n
This is the same function that is on the bottom bar when you click on it
\n
\n
\n
\n
\n
Restart button (empty your cache, you can login again if there is an error)
\n
Remember last notebook (as much Online Onenote allows ...)
\n
Menu > Settings\n
\n
Close to the tray\n
\n
If checked, will minimize to the tray instead of quit
\n
If un-checked, default quit close button behaviour (quit the app)
\n
\n
\n
\n
\n
You are able to set a proxy in the settings menu.
\n
There is now a menu called Corporate home\n
\n
Given, I do not have a Corporate login, I cannot debug it at all.\n
\n
If something is not working, the only way is to provide your login and I could probably fix it. Otherwise, I see nothing.
\n
\n
\n
\n
\n
The OneNote language is controlled by Microsoft, and we try to work with Online OneNote, but we are getting a hard time, but the Electron UI is now able to use any language.\n
Allows using multiple instances (with some quirks, as the config will not be synchronized using multiple instances at once, so it can provide wrong results - to make it to work, configure with 1 instance, exit, then use multiple instances).\n
\n
Multiple instances is not recommended (it was requested and provided).
After downloading the AppImage, make it an executable.
\n
mkdir -p $HOME/opt\nmv ~/Downloads/p3x-onenote-a.b.c-x86_64.AppImage $HOME/opt/\nchmod +x $HOME/opt/p3x-onenote-a.b.c-x86_64.AppImage\n# Then you can run it\n$HOME/opt/p3x-onenote-a.b.c-x86_64.AppImage &
The corporate login is unstable, either it works or not. Only the personal account that I can provide some minimal support.
\n
Suspend/Sleep/Wake up
\n
I recognized, that after suspend/sleep and then wake up, the app is not saving the pages anymore. For now, the solution is, that after wake up, restart the app.
\n
Not working on SNAP on some versions
\n
Usually, on stable distros are working with SNAP, but usually non stable Linux distros could not work. Please, try using the AppImage, that is usually better than SNAP.
For file names do not use camelCase, but use kebab-case. Folder should be named as kebab-case as well. As you can see, all code filenames are using it like that, please do not change that.\nPlease apply the .editorconfig settings in your IDE.
\n
If you try to build the app with AppImage, you have to change from electrondependencies to devDependencies, this is because it is created to be able to run this app from NPM instead of an AppImage.
🙏 This is an open-source project. Star this repository, if you like it, or even donate to maintain the servers and the development. Thank you so much!
\n
Possible, this server, rarely, is down, please, hang on for 15-30 minutes and the server will be back up.
\n
All my domains (patrikx3.com and corifeus.com) could have minor errors, since I am developing in my free time. However, it is usually stable.
\n
Note about versioning: Versions are cut in Major.Minor.Patch schema. Major is always the current year. Minor is either 4 (January - June) or 10 (July - December). Patch is incremental by every build. If there is a breaking change, it should be noted in the readme.
P3X OneNote Linux is, actually, an independent browser window for the online OneNote. You can use this program without having to clutter your browser. The main functions are:
\n
\n
that is independent from any browser, as it works in it's own process
\n
it provides a tray, that allows you to close your browser while it keeps running in the tray
\n
the data is cached and is faster than always opening a new window
\n
it allows you to sign in with the corporate or the personal login
\n
when there is a new update, it auto updates itself (Only in the AppImage version.)
\n
the program allows to use other Microsoft online applications, but the dedicated purpose is to use OneNote
\n
\n
Verbose feature info
\n
\n
Dark mode is enabled (but it is a hack, not supported by Microsoft, so quirky)
\n
To show the menu, click ALT
\n
Desktop menu
\n
You can use the --minimized argument to start the app with minimized window
\n
You can zoom the window
\n
Icon
\n
There is a bottom bar\n
\n
It shows the current location
\n
When you click on this bar, the location URL is copied into the clipboard
\n
\n
\n
There is a new button on the Edit menu\n
\n
Copy this location to the clipboard\n
\n
This is the same function that is on the bottom bar when you click on it
\n
\n
\n
\n
\n
Restart button (empty your cache, you can login again if there is an error)
\n
Remember last notebook (as much Online Onenote allows ...)
\n
Menu > Settings\n
\n
Close to the tray\n
\n
If checked, will minimize to the tray instead of quit
\n
If un-checked, default quit close button behaviour (quit the app)
\n
\n
\n
\n
\n
You are able to set a proxy in the settings menu.
\n
There is now a menu called Corporate home\n
\n
Given, I do not have a Corporate login, I cannot debug it at all.\n
\n
If something is not working, the only way is to provide your login and I could probably fix it. Otherwise, I see nothing.
\n
\n
\n
\n
\n
The OneNote language is controlled by Microsoft, and we try to work with Online OneNote, but we are getting a hard time, but the Electron UI is now able to use any language.\n
Allows using multiple instances (with some quirks, as the config will not be synchronized using multiple instances at once, so it can provide wrong results - to make it to work, configure with 1 instance, exit, then use multiple instances).\n
\n
Multiple instances is not recommended (it was requested and provided).
After downloading the AppImage, make it an executable.
\n
mkdir -p $HOME/opt\nmv ~/Downloads/p3x-onenote-a.b.c-x86_64.AppImage $HOME/opt/\nchmod +x $HOME/opt/p3x-onenote-a.b.c-x86_64.AppImage\n# Then you can run it\n$HOME/opt/p3x-onenote-a.b.c-x86_64.AppImage &
The corporate login is unstable, either it works or not. Only the personal account that I can provide some minimal support.
\n
Suspend/Sleep/Wake up
\n
I recognized, that after suspend/sleep and then wake up, the app is not saving the pages anymore. For now, the solution is, that after wake up, restart the app.
\n
Not working on SNAP on some versions
\n
Usually, on stable distros are working with SNAP, but usually non stable Linux distros could not work. Please, try using the AppImage, that is usually better than SNAP.
For file names do not use camelCase, but use kebab-case. Folder should be named as kebab-case as well. As you can see, all code filenames are using it like that, please do not change that.\nPlease apply the .editorconfig settings in your IDE.
\n
If you try to build the app with AppImage, you have to change from electrondependencies to devDependencies, this is because it is created to be able to run this app from NPM instead of an AppImage.
🙏 This is an open-source project. Star this repository, if you like it, or even donate to maintain the servers and the development. Thank you so much!
\n
Possible, this server, rarely, is down, please, hang on for 15-30 minutes and the server will be back up.
\n
All my domains (patrikx3.com and corifeus.com) could have minor errors, since I am developing in my free time. However, it is usually stable.
\n
Note about versioning: Versions are cut in Major.Minor.Patch schema. Major is always the current year. Minor is either 4 (January - June) or 10 (July - December). Patch is incremental by every build. If there is a breaking change, it should be noted in the readme.
PaperArxiv is a new paper management tool that helps to organize your mind. It focuses on taking notes, organizing, and archiving your files. Different from existing paper management tools that focus on reference management. PaperArxiv emphasizes on notes organizing as we believe a short note can bring more information to grasp the general idea.
\n
Highlights
\n
\n
Auto Extraction: It can extract almost all information from pdf files and generate default meta information;
\n
Portable: all information is stored in one folder and you can put in your cloud disk and take it everywhere;
\n
Universal Search: You can use its powerful find tool to find whatever you want, tags, names, notes ... No matter what comes into your mind.
\n
Powerful tree-view and tag management.
\n
Support different forms of notes including Markdown, LaTeX, and Mermaid.
On Windows and Linux, please use conda install -c conda-forge poppler.
\n
\n
\n
Open PaperArxiv;
\n
Click the Add Button to select a paper in pdf format. PaperArxiv will automatically generate a new item for the paper;
\n
Double Click the item to add some notes;
\n\n
Notes Format
\n
The notes support Markdown, Latex, and Mermaid. For example, you can write the following notes to write items, formulas, and Mermaid diagrams.
\n
upper bound for the repetition:\n $$\\begin{aligned}\n R\\le\\frac{\\|B^2\\|_*}{\\min_{1\\le i \\le n} \\{ \\frac{1}{2}( \\zeta n - \\underbrace{\\sum_{j=1}^n (B^2)_{ij}}_{outflow})+\\frac{1}{2}(\\zeta n - \\underbrace{\\sum_{k=1}^n (B^2)_{ki}}_{inflow}) \\}}\n \\end{aligned}$$\n\n ```mermaid\n flowchart LR;\n Repetition-->Theory;\n Theory-->Encoding;\n ```\n\n ![My Image][image-1]\n\n\n\n \n [image-1]:data:image/png;base64,iVBORw0KGgoAAAANS...\n\">
- Give a proof of the *repetition problem* for Generation;\n - New **encoding method**;\n - The <font color=orange>upper bound</font> for the <del>repetition</del>:\n $$\\begin{aligned}\n R\\le\\frac{\\|B^2\\|_*}{\\min_{1\\le i \\le n} \\{ \\frac{1}{2}( \\zeta n - \\underbrace{\\sum_{j=1}^n (B^2)_{ij}}_{outflow})+\\frac{1}{2}(\\zeta n - \\underbrace{\\sum_{k=1}^n (B^2)_{ki}}_{inflow}) \\}}\n \\end{aligned}$$\n\n ```mermaid\n flowchart LR;\n Repetition-->Theory;\n Theory-->Encoding;\n ```\n\n ![My Image][image-1]\n\n\n\n <!--The image data is attached as follows-->\n [image-1]:data:image/png;base64,iVBORw0KGgoAAAANS...\n\n
\n
\n \n
\nIf you want to add images in the comments, just copy the image and paste in the edit box. Then it will insert a base64 image into the comments file.\n
npm install\n./node_modules/.bin/electron-rebuild\nnpm run buildmac\n
\n
On Mac with M1 CPU, please use:
\n
npm install\n./node_modules/.bin/electron-rebuild -a arm64\nnpm run buildm1\n
\n
",
"readmeOriginal": "
PaperArxiv
\n
\n
PaperArxiv is a new paper management tool that helps to organize your mind. It focuses on taking notes, organizing, and archiving your files. Different from existing paper management tools that focus on reference management. PaperArxiv emphasizes on notes organizing as we believe a short note can bring more information to grasp the general idea.
\n
Highlights
\n
\n
Auto Extraction: It can extract almost all information from pdf files and generate default meta information;
\n
Portable: all information is stored in one folder and you can put in your cloud disk and take it everywhere;
\n
Universal Search: You can use its powerful find tool to find whatever you want, tags, names, notes ... No matter what comes into your mind.
\n
Powerful tree-view and tag management.
\n
Support different forms of notes including Markdown, LaTeX, and Mermaid.
On Windows and Linux, please use conda install -c conda-forge poppler.
\n
\n
\n
Open PaperArxiv;
\n
Click the Add Button to select a paper in pdf format. PaperArxiv will automatically generate a new item for the paper;
\n
Double Click the item to add some notes;
\n\n
Notes Format
\n
The notes support Markdown, Latex, and Mermaid. For example, you can write the following notes to write items, formulas, and Mermaid diagrams.
\n
- Give a proof of the *repetition problem* for Generation;\n - New **encoding method**;\n - The <font color=orange>upper bound</font> for the <del>repetition</del>:\n $$\\begin{aligned}\n R\\le\\frac{\\|B^2\\|_*}{\\min_{1\\le i \\le n} \\{ \\frac{1}{2}( \\zeta n - \\underbrace{\\sum_{j=1}^n (B^2)_{ij}}_{outflow})+\\frac{1}{2}(\\zeta n - \\underbrace{\\sum_{k=1}^n (B^2)_{ki}}_{inflow}) \\}}\n \\end{aligned}$$\n\n ```mermaid\n flowchart LR;\n Repetition-->Theory;\n Theory-->Encoding;\n ```\n\n ![My Image][image-1]\n\n\n\n <!--The image data is attached as follows-->\n [image-1]:data:image/png;base64,iVBORw0KGgoAAAANS...\n\n
\n
\n \n
\nIf you want to add images in the comments, just copy the image and paste in the edit box. Then it will insert a base64 image into the comments file.\n
\nA desktop app which converts your minecraft .schematic files you got from worldedit to blueprints for papercraft.
\n \n \n \n
\n\n \n
🚀 How to use?
\n\n
🏡 You need an installed Minecraft Version
\n
🏗 You need to install the Minecraft mod Worldedit
\n
🔨 Start Minecraft and build something amazing
\n
💾//Copy what you built and //schematic save it
\n
🌴 Download a Texturepack
\n
💿 Start this desktop app
\n
🏝 Drop schematic file and texturepack in it
\n
🌟 Let the Program do its magic
\n
🖨 Print out the blueprints
\n
🏘 Make amazing minecraft builds in real!
\n\n
⚠️ Important
\n
\n
PaperCubes is still in BETA. Errors may occur. When you found one, please open an issue for me
\n
Currently works only for schematic files which are taken from minecraft versions smaller than v1.13.0. Versions that are very old won't work eighter. The version of the texturepack should match the minecraft version of the schematic file for best results
\n
Loading times can be very long depending on the size of the schematic
\n
\n
📝 Source Code
\n
In order to use this source code you need to have Node.js, Git and Bower installed globally. After that you have to follow the steps below.
\n
Only for Windows (as admin)
\n
npm install --global --production windows-build-tools\nnpm config set msvs_version 2015 --global
\n
For all platforms
\n
# Clone this repository\ngit clone https://github.com/florianfe/PaperCubes\n# Go into the repository\ncd PaperCubes\n# Install npm dependencies\nnpm install\n# Install bower dependencies\nbower install\n# Compile C++ sources\nnpm run-script compile\n# Run the app in test mode\nnpm start\n# build application for release\n[sudo] npm run-script dist
This Project was inspired by Orthogami (made by mikolalysenko).
\n
The Texture Pack Pixel Perfection (Link) which is used for the Screenshots was made by Hugh \"XSSheep\" Rutland.
\n
\n
📖 License
\n
\n
",
"readmeOriginal": "
\n \n
🏡🖨 PaperCubes
\n
\nA desktop app which converts your minecraft .schematic files you got from worldedit to blueprints for papercraft.
\n \n \n \n
\n\n \n
🚀 How to use?
\n\n
🏡 You need an installed Minecraft Version
\n
🏗 You need to install the Minecraft mod Worldedit
\n
🔨 Start Minecraft and build something amazing
\n
💾//Copy what you built and //schematic save it
\n
🌴 Download a Texturepack
\n
💿 Start this desktop app
\n
🏝 Drop schematic file and texturepack in it
\n
🌟 Let the Program do its magic
\n
🖨 Print out the blueprints
\n
🏘 Make amazing minecraft builds in real!
\n\n
⚠️ Important
\n
\n
PaperCubes is still in BETA. Errors may occur. When you found one, please open an issue for me
\n
Currently works only for schematic files which are taken from minecraft versions smaller than v1.13.0. Versions that are very old won't work eighter. The version of the texturepack should match the minecraft version of the schematic file for best results
\n
Loading times can be very long depending on the size of the schematic
\n
\n
📝 Source Code
\n
In order to use this source code you need to have Node.js, Git and Bower installed globally. After that you have to follow the steps below.
\n
Only for Windows (as admin)
\n
npm install --global --production windows-build-tools\nnpm config set msvs_version 2015 --global
\n
For all platforms
\n
# Clone this repository\ngit clone https://github.com/florianfe/PaperCubes\n# Go into the repository\ncd PaperCubes\n# Install npm dependencies\nnpm install\n# Install bower dependencies\nbower install\n# Compile C++ sources\nnpm run-script compile\n# Run the app in test mode\nnpm start\n# build application for release\n[sudo] npm run-script dist
It's recommended to move the Papyrus.app file to the Applications directory. macOS will prompt you to accept that this runs from an unidentified developer.
\n
Shortcuts
\n
\n\n
\n
Description
\n
Keybinding
\n
\n\n\n
\n
Create a new document
\n
Cmd/CtrlN
\n
\n
\n
Create a new folder
\n
Cmd/CtrlT
\n
\n\n
\n
All keybindings can also be found under the File menu.
\n
Development
\n
The application wraps the official Dropbox Paper website in an Electron browser window (and does some more minor things to round it up).
\n
git clone the repository, npm install all dependencies and you are good to go. You might have to run brew install wine before building the application.
\n
\n\n
\n
Command
\n
Description
\n
\n\n\n
\n
npm start
\n
Starts the application
\n
\n
\n
npm run build
\n
Creates packages for all supported platforms (bundles all below commands)
It's recommended to move the Papyrus.app file to the Applications directory. macOS will prompt you to accept that this runs from an unidentified developer.
\n
Shortcuts
\n
\n\n
\n
Description
\n
Keybinding
\n
\n\n\n
\n
Create a new document
\n
Cmd/CtrlN
\n
\n
\n
Create a new folder
\n
Cmd/CtrlT
\n
\n\n
\n
All keybindings can also be found under the File menu.
\n
Development
\n
The application wraps the official Dropbox Paper website in an Electron browser window (and does some more minor things to round it up).
\n
git clone the repository, npm install all dependencies and you are good to go. You might have to run brew install wine before building the application.
\n
\n\n
\n
Command
\n
Description
\n
\n\n\n
\n
npm start
\n
Starts the application
\n
\n
\n
npm run build
\n
Creates packages for all supported platforms (bundles all below commands)
This release is meant to tide us over so that other clients can take it from here.
\n
Thank you to everyone who contributed to this release and all the ones preceding it!\nPaul, Matt McKegg, and Christian Bundy first and foremost, but by now the contributors page shows 94 contributors! 💓
\n
Where do we go from here? Do I have to change client now?
\n
For the time being (the next couple of months) you should be fine to just keep Patchwork running. However, as time progresses and security of the underlying components \"degrades\" (read: already existing issues are discovered) it will become a bad idea to keep running Patchwork.\nBy that time, you should pick a different ssb client.
\n
Why retire Patchwork? Can I keep it alive?
\n
Of course Patchwork is, as always, released under the AGPL license. So if you really wanted to, you could fork it and keep it alive. However, let me (Daan) explain why this is a bad idea:
\n
All the devs say \"Don't do it!\"
\n
Everyone who has spent significant time in the codebase agrees that it is time to retire Patchwork. Over the years, it has seen multiple iterations of developers coming in, trying to change things in a structural way, then burning out on it. It's a pattern, so be warned. This is due to the fact that Patchwork makes some architectural decisions that make it hard to maintain, and even harder for new developers to get into the codebase:
\n
\n
depject is a bespoke dependency injection system, which breaks any kind of navigation and tool support for debugging.
\n
mutant is another bespoke implementation of observables. It is also used for generating HTML, which makes a transition to component-based UI toolkits very hard.
\n
custom sbot: Patchwork doesn't really work except with its own, bundled ssb-server. This is considered bad form for ssb applications.
\n
ssb-db, the bespoke database of the original ssb stack, is deeply baked into patchwork. Migrating to the new #ssb-db2 would be a long and painful process. This is compounded by the fact that patchwork bundles a few custom plugins for ssb-db.
\n
\n
I want to be clear that none of the above are impossible to solve; in fact, they all have straight-forward but labour-intensive solutions. I also want to be clear that these technological choices were all made for good reasons at the time, and I am sure you're as greatful to the developers who made them as I am, for putting their (overwhelmingly volunteered!) time into the project, and for making Patchwork the application that it is. In combination however, the above issues mean that new developers are faced with a very, very steep leaning curve before they're able to even make small changes.\nGiven all of the above, it makes more sense to deprecate Patchwork and focus our efforts on projects like #oasis or #manyverse which are nearing feature parity with Patchwork. If you want to get involved with ssb development, both are great projects for that; they are much more hackable than Patchwork, and follow standard techniques & workflows, so you'll feel right at home.
\n
If you do, against all advice, want to continue developing Patchwork then we kindly request you rename it to reflect the change in leadership.
\n\n
Original Readme
\n
\n
A decentralized messaging and sharing app built on top of Secure Scuttlebutt (SSB).
\n
\n
Features
\n
\n
Connect with friends without depending on any central servers.
\n
Don't worry about spam, you only get messages from people you follow.
\n
Use Patchwork online or offline, the data you need is stored on your device.
\n
Sync messages with friends when you're on the same Wi-Fi network.
\n
Keep secrets with private messages, which are always end-to-end encrypted.
\n
Change and improve Patchwork however you'd like, it's free and open source.
\n
\n
Usage
\n
\n
New to Scuttlebutt? Join the network by connecting to a pub.
\n\n
Choose a pub from the pub list and copy an invite code.
\n
Open Patchwork and select Join Pub.
\n
Paste the invite code and select Redeem Invite.
\n\n
You're done! Check out #new-people to see who else has recently joined.
Building from source? Check out INSTALL.md for more information.
\n
Contributing
\n
Create a new issue to report problems or request features. See\nCONTRIBUTING.md for more information on how to get involved.\nYou can also support the project via donations.
\n
Please note that this project is released with a Contributor Code of\nConduct. By participating in this project you agree to abide by its\nterms.
This release is meant to tide us over so that other clients can take it from here.
\n
Thank you to everyone who contributed to this release and all the ones preceding it!\nPaul, Matt McKegg, and Christian Bundy first and foremost, but by now the contributors page shows 94 contributors! 💓
\n
Where do we go from here? Do I have to change client now?
\n
For the time being (the next couple of months) you should be fine to just keep Patchwork running. However, as time progresses and security of the underlying components \"degrades\" (read: already existing issues are discovered) it will become a bad idea to keep running Patchwork.\nBy that time, you should pick a different ssb client.
\n
Why retire Patchwork? Can I keep it alive?
\n
Of course Patchwork is, as always, released under the AGPL license. So if you really wanted to, you could fork it and keep it alive. However, let me (Daan) explain why this is a bad idea:
\n
All the devs say \"Don't do it!\"
\n
Everyone who has spent significant time in the codebase agrees that it is time to retire Patchwork. Over the years, it has seen multiple iterations of developers coming in, trying to change things in a structural way, then burning out on it. It's a pattern, so be warned. This is due to the fact that Patchwork makes some architectural decisions that make it hard to maintain, and even harder for new developers to get into the codebase:
\n
\n
depject is a bespoke dependency injection system, which breaks any kind of navigation and tool support for debugging.
\n
mutant is another bespoke implementation of observables. It is also used for generating HTML, which makes a transition to component-based UI toolkits very hard.
\n
custom sbot: Patchwork doesn't really work except with its own, bundled ssb-server. This is considered bad form for ssb applications.
\n
ssb-db, the bespoke database of the original ssb stack, is deeply baked into patchwork. Migrating to the new #ssb-db2 would be a long and painful process. This is compounded by the fact that patchwork bundles a few custom plugins for ssb-db.
\n
\n
I want to be clear that none of the above are impossible to solve; in fact, they all have straight-forward but labour-intensive solutions. I also want to be clear that these technological choices were all made for good reasons at the time, and I am sure you're as greatful to the developers who made them as I am, for putting their (overwhelmingly volunteered!) time into the project, and for making Patchwork the application that it is. In combination however, the above issues mean that new developers are faced with a very, very steep leaning curve before they're able to even make small changes.\nGiven all of the above, it makes more sense to deprecate Patchwork and focus our efforts on projects like #oasis or #manyverse which are nearing feature parity with Patchwork. If you want to get involved with ssb development, both are great projects for that; they are much more hackable than Patchwork, and follow standard techniques & workflows, so you'll feel right at home.
\n
If you do, against all advice, want to continue developing Patchwork then we kindly request you rename it to reflect the change in leadership.
\n\n
Original Readme
\n
\n
A decentralized messaging and sharing app built on top of Secure Scuttlebutt (SSB).
\n
\n
Features
\n
\n
Connect with friends without depending on any central servers.
\n
Don't worry about spam, you only get messages from people you follow.
\n
Use Patchwork online or offline, the data you need is stored on your device.
\n
Sync messages with friends when you're on the same Wi-Fi network.
\n
Keep secrets with private messages, which are always end-to-end encrypted.
\n
Change and improve Patchwork however you'd like, it's free and open source.
\n
\n
Usage
\n
\n
New to Scuttlebutt? Join the network by connecting to a pub.
\n\n
Choose a pub from the pub list and copy an invite code.
\n
Open Patchwork and select Join Pub.
\n
Paste the invite code and select Redeem Invite.
\n\n
You're done! Check out #new-people to see who else has recently joined.
Building from source? Check out INSTALL.md for more information.
\n
Contributing
\n
Create a new issue to report problems or request features. See\nCONTRIBUTING.md for more information on how to get involved.\nYou can also support the project via donations.
\n
Please note that this project is released with a Contributor Code of\nConduct. By participating in this project you agree to abide by its\nterms.
Passky is simple, modern, lightweight, open source and secure password manager.
\n
\n
How Much Does it Cost?
\n
Passky is open-source. This means that anyone can download it, dig into its code, and customize it to their liking. Using Passky doesn’t require an upfront cost or monthly subscription. It’s completely free to download and can be hosted by anyone who has the space to do so.
\n
When we launched Passky, we setup two servers, each holding up to 1,000 passwords for 100 users apiece. These servers are currently open for new users. But only the first two-hundred people to sign up will get access. Possible future servers are contingent upon a number of factors. So, if you want access to the best, open-source password manager on the market, now is the time to join.
\n
How Does Passky Work?
\n
Some people are hesitant to use a password manager because they fear that it could leave them vulnerable to hackers and other malicious actors. But once you understand the way Passky works, you’ll quickly realize that using a password manager like Passky is far more secure than opting for a single password across all your accounts.
\n
When you save your account information to Passky, all sensitive data is fully encrypted. This means that your sensitive data cannot be accessed by anyone at Passky or by any potential hackers. If someone did access your passwords, they’d only be able to see an encrypted version of it that’s useless without your master key.
\n
So, what is your master key? It’s your own personal password – the one password you need to unlock all other passwords. When you try to access your e-mail or another password protected site, Passky will pull your encrypted password from our server. Then, you’ll input your master password, and it will decrypt the password. So, you’ll only ever need to remember your master password. It will effortlessly unlock every other password you could want.
\n
How Secure is Passky?
\n
Passky simplifies your digital life and solves your password problem. All you’ll ever need to do is remember a single, ultra-secure password that includes uppercase letters, lowercase letters, numbers, and special characters. Once you’ve got that written down in your wallet or purse (or buried in your memory), you’ll get the benefit of secure passwords across your online accounts without having to memorize dozens of codewords. This makes it one of the most secure ways to protect your online identity.
\n
But Passky takes security a step further. We’ve implemented a brute force mitigation system that locks out any user who inputs the wrong password too many times. By stopping login attempts for a set time and warning you about an attempted breach, you’ll have time to secure your account by creating a new password or taking other measures.
\n
But is Passky Easy to Use?
\n
Passky has been designed with modern users in mind. That’s why we’ve strived to provide an interface that’s streamlined and easy to use. Unlike some of the competition, Passky can be easily used by anyone, including techies and computer novices. And since it’s built for performance, you won’t need to overtax your CPU or waste a lot of storage space to keep it running.
\n
Downloading and installing Passky to your browser is a simple process that takes less than two-minutes to complete. Once it’s up and running, you can immediately begin managing your passwords with it. Creating, editing, and deleting passwords takes mere seconds. And once you’ve got everything setup, you’ll be able to quickly access all of your password-protected websites and accounts.
\n
How Does Passky Compare to the Competition?
\n
Bitwarden is one of Passky’s biggest competitors. It’s also a free, open-source password manager. But unlike Passky, Bitwarden offers a host of additional features. The only problem is that you’ll likely never use any of them. Most people want a password manager to do one thing really well – not a whole host of things with mediocrity.
\n
Since Passky is designed to do one thing well, it’s faster, less resource intensive, easier to use, and requires less storage space than Bitwarden. Plus, it’s just more modern.
\n
Passky is built for today’s users, not yesterday’s.
\n
But how does Passky stack up against other password managers on the market today?
\n
Unfortunately, that’s the problem with them. Most other password managers are on the market. They’ve been built to be sold to people like you. Those managers aren’t open-source or free. They require an upfront cost, or a monthly or yearly subscription.
\n
We believe in the power of open-source software. And we also believe in the generosity of those who benefit from our products. That’s why we’ve made Passky available at no cost. We only ask that you’d consider making a donation if you benefit from the work we’ve put in to this product.
\n
And when you donate, don’t think that you’re paying us to rest on our laurels. We’re dedicated to enhancing Passky in a number of valuable and important ways, including…
\n
• An increasing number of themes that users can choose from to customize their Passky experience.\n• More language options for our worldwide users.\n• And more…\n
\n
If you’re ready to try Passky out at no cost, you can get started by visiting our website at https://passky.org. We currently have a desktop application available for Windows and Linux operating systems along with a mobile app on the Google Play Store. MacOS and iOS apps are currently being developed. In addition, we offer browser extensions for all major browsers except for Safari.
Passky is simple, modern, lightweight, open source and secure password manager.
\n
\n
How Much Does it Cost?
\n
Passky is open-source. This means that anyone can download it, dig into its code, and customize it to their liking. Using Passky doesn’t require an upfront cost or monthly subscription. It’s completely free to download and can be hosted by anyone who has the space to do so.
\n
When we launched Passky, we setup two servers, each holding up to 1,000 passwords for 100 users apiece. These servers are currently open for new users. But only the first two-hundred people to sign up will get access. Possible future servers are contingent upon a number of factors. So, if you want access to the best, open-source password manager on the market, now is the time to join.
\n
How Does Passky Work?
\n
Some people are hesitant to use a password manager because they fear that it could leave them vulnerable to hackers and other malicious actors. But once you understand the way Passky works, you’ll quickly realize that using a password manager like Passky is far more secure than opting for a single password across all your accounts.
\n
When you save your account information to Passky, all sensitive data is fully encrypted. This means that your sensitive data cannot be accessed by anyone at Passky or by any potential hackers. If someone did access your passwords, they’d only be able to see an encrypted version of it that’s useless without your master key.
\n
So, what is your master key? It’s your own personal password – the one password you need to unlock all other passwords. When you try to access your e-mail or another password protected site, Passky will pull your encrypted password from our server. Then, you’ll input your master password, and it will decrypt the password. So, you’ll only ever need to remember your master password. It will effortlessly unlock every other password you could want.
\n
How Secure is Passky?
\n
Passky simplifies your digital life and solves your password problem. All you’ll ever need to do is remember a single, ultra-secure password that includes uppercase letters, lowercase letters, numbers, and special characters. Once you’ve got that written down in your wallet or purse (or buried in your memory), you’ll get the benefit of secure passwords across your online accounts without having to memorize dozens of codewords. This makes it one of the most secure ways to protect your online identity.
\n
But Passky takes security a step further. We’ve implemented a brute force mitigation system that locks out any user who inputs the wrong password too many times. By stopping login attempts for a set time and warning you about an attempted breach, you’ll have time to secure your account by creating a new password or taking other measures.
\n
But is Passky Easy to Use?
\n
Passky has been designed with modern users in mind. That’s why we’ve strived to provide an interface that’s streamlined and easy to use. Unlike some of the competition, Passky can be easily used by anyone, including techies and computer novices. And since it’s built for performance, you won’t need to overtax your CPU or waste a lot of storage space to keep it running.
\n
Downloading and installing Passky to your browser is a simple process that takes less than two-minutes to complete. Once it’s up and running, you can immediately begin managing your passwords with it. Creating, editing, and deleting passwords takes mere seconds. And once you’ve got everything setup, you’ll be able to quickly access all of your password-protected websites and accounts.
\n
How Does Passky Compare to the Competition?
\n
Bitwarden is one of Passky’s biggest competitors. It’s also a free, open-source password manager. But unlike Passky, Bitwarden offers a host of additional features. The only problem is that you’ll likely never use any of them. Most people want a password manager to do one thing really well – not a whole host of things with mediocrity.
\n
Since Passky is designed to do one thing well, it’s faster, less resource intensive, easier to use, and requires less storage space than Bitwarden. Plus, it’s just more modern.
\n
Passky is built for today’s users, not yesterday’s.
\n
But how does Passky stack up against other password managers on the market today?
\n
Unfortunately, that’s the problem with them. Most other password managers are on the market. They’ve been built to be sold to people like you. Those managers aren’t open-source or free. They require an upfront cost, or a monthly or yearly subscription.
\n
We believe in the power of open-source software. And we also believe in the generosity of those who benefit from our products. That’s why we’ve made Passky available at no cost. We only ask that you’d consider making a donation if you benefit from the work we’ve put in to this product.
\n
And when you donate, don’t think that you’re paying us to rest on our laurels. We’re dedicated to enhancing Passky in a number of valuable and important ways, including…
\n
• An increasing number of themes that users can choose from to customize their Passky experience.\n• More language options for our worldwide users.\n• And more…\n
\n
If you’re ready to try Passky out at no cost, you can get started by visiting our website at https://passky.org. We currently have a desktop application available for Windows and Linux operating systems along with a mobile app on the Google Play Store. MacOS and iOS apps are currently being developed. In addition, we offer browser extensions for all major browsers except for Safari.
Pencil V3 is a rewrite of Pencil that aims to fix major performance and scalability issues of the application. The new version is under heavy development and we are expecting GA builds in June. The following list summarizes important changes in the new version:
\n
\n
Pencil V3 uses Electron instead of Mozilla XULRunner as the runtime. We expect that by moving into this Nodejs-based environment, the Pencil source code can be much easier for all fellow developers to play with. The fact that Mozilla XULRunner is outdated is also a reason for the movement.
\n
A new, zip-based file format was introduced to support large documents and better embedding of external bitmaps/resources.
\n
A new mechanism for page management that dramatically reduces memory usage for large documents.
\n
Document pages can now be structured into a tree-like model.
\n
Custom fonts can now be embedded into Pencil .epz documents
\n
Printing and PDF export will be improved to support all platforms and with many options
\n
New UI approach
\n
\n
Setting up
\n
Pencil uses Atom Electron as the runtime, follow the these steps to setup the environment:
\n
\n
\n
Clone this repository
\n
\n
\n
Make sure you are using nodejs 5+ (Pencil development only needs npm for package management. Node runtime is not required.)
\n
\n
\n
Checkout this development branch:
\n
$ git checkout development
\n
\n
\n
Install dependencies:
\n
$ npm install
\n
\n
\n
Start Pencil using the prebuilt version of Electron
\n
$ npm start
\n
\n
\n
Supported Platforms
\n
OS X
\n
Only OSX 64bit 10.9 and later are supported.
\n
Windows
\n
Windows 7 and later are supported, older operating systems are not supported (and do not work).
Pencil V3 is a rewrite of Pencil that aims to fix major performance and scalability issues of the application. The new version is under heavy development and we are expecting GA builds in June. The following list summarizes important changes in the new version:
\n
\n
Pencil V3 uses Electron instead of Mozilla XULRunner as the runtime. We expect that by moving into this Nodejs-based environment, the Pencil source code can be much easier for all fellow developers to play with. The fact that Mozilla XULRunner is outdated is also a reason for the movement.
\n
A new, zip-based file format was introduced to support large documents and better embedding of external bitmaps/resources.
\n
A new mechanism for page management that dramatically reduces memory usage for large documents.
\n
Document pages can now be structured into a tree-like model.
\n
Custom fonts can now be embedded into Pencil .epz documents
\n
Printing and PDF export will be improved to support all platforms and with many options
\n
New UI approach
\n
\n
Setting up
\n
Pencil uses Atom Electron as the runtime, follow the these steps to setup the environment:
\n
\n
\n
Clone this repository
\n
\n
\n
Make sure you are using nodejs 5+ (Pencil development only needs npm for package management. Node runtime is not required.)
\n
\n
\n
Checkout this development branch:
\n
$ git checkout development
\n
\n
\n
Install dependencies:
\n
$ npm install
\n
\n
\n
Start Pencil using the prebuilt version of Electron
\n
$ npm start
\n
\n
\n
Supported Platforms
\n
OS X
\n
Only OSX 64bit 10.9 and later are supported.
\n
Windows
\n
Windows 7 and later are supported, older operating systems are not supported (and do not work).
This repository keeps track of Pendulums client source.
\n
Development server
\n
Run npm run start for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.
\n
Help us to improve Pendulums and keep it alive
\n
Maintaining servers, fixing issues and bringing new features to Pendulums cost a lot of time and money. We will be grateful if you can show us some love using donations.
\n
",
"readmeOriginal": "
Pendulums Web/Desktop/Android Clients
\n
This repository keeps track of Pendulums client source.
\n
Development server
\n
Run npm run start for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.
\n
Help us to improve Pendulums and keep it alive
\n
Maintaining servers, fixing issues and bringing new features to Pendulums cost a lot of time and money. We will be grateful if you can show us some love using donations.
Pennywise opens any website or media in a small floating window that remains on top of all other applications. Pennywise windows stays up all the time. No need to keep struggling with alt + tab, use Pennywise for easy multitasking.
\n
Features
\n
\n
Always stays on top of any open applications
\n
Adjustable opacity – it gets out of your way while you work
\n
Resize and place it anywhere
\n
Shortcuts to make you more productive
\n
Lets you multitask while you work
\n
Open source licensed under MIT
\n
Lean small resource footprint, minimal User Interface.
\n
Cross-platform works on MacOS, Windows and Linux
\n
\n
Installation
\n
Download and install the relevant distribution from the releases page.
\n
If you are on MacOS, you can use Homebrew to install it
\n
brew install --cask pennywise\n
\n
Enable Flash Support
\n
To enable flash support, copy or link Chrome's Pepperflash plugin into your $HOME/.pennywise-flash. You can find the plugin at the installation path of the Chrome. For example, on MacOS, you can do the below to enable Flash support
Here is the list of some of the possible use cases off the top of my head
\n
\n
\n
Use it as a floating window for your calendar/checklist/assigned-tickets etc
\n
Watching tutorial while you code? Open the video in Pennywise and keep it in front of you
\n
Making a video course? Open the demo in Pennywise and show the output in real time
\n
Working on some web UI? Open it in Pennywise to avoid pressing alt + tab again and again
\n
Play some video, watch some talk or play some TV series while you work
\n
Working on something non-familiar? Open the docs in Pennywise
\n
Open that live football match that you won't want to miss
\n
Use it as a desktop widget
\n
\n
Development
\n
Clone the repository, install the dependencies and start the app
\n
yarn install\nyarn start
\n
Shortcuts
\n
\n
Here is the list of available shortcuts that you may use
\n
\n
\n\n
\n
Shortcut
\n
Description
\n
\n\n\n
\n
Cmd/Ctrl + L
\n
Show Navbar and focus URL input
\n
\n
\n
Cmd/Ctrl + Shift + D
\n
Enable detached mode
\n
\n
\n
Cmd/Ctrl + M
\n
Refresh Page
\n
\n
\n
Cmd/Ctrl + Shift + L
\n
Toggle Navbar on WebPages
\n
\n
\n
Cmd/Ctrl + Shift + Up
\n
Increase Opacity
\n
\n
\n
Cmd/Ctrl + Shift + Down
\n
Decrease Opacity
\n
\n
\n
Cmd/Ctrl + Alt + I
\n
Show Developer Tools
\n
\n
\n
Cmd/Ctrl + [0-9]
\n
Switch Window Opacity
\n
\n\n
\n
\n
Note – Changing the opacity is only supported in Windows and MacOS
\n
\n
Detached Mode
\n
\n
Enabling the detached mode makes Pennywise non-interactive – it will let any interactions fall through to the window below it. To remove the detached mode, focus the window either by clicking the dock icon or by activating it using alt + tab
\n
\n
Screenshots
\n
\n
Homescreen for the application
\n
\n
\n
\n
\n
Anything running in pennywise stays on top of everything
\n
\n
\n
\n
\n
You can change the opacity too
\n
\n
\n
\n
Auto-embed Videos
\n
For some video streaming websites such as Youtube, Vimeo, Twitch, Daily Motion etc, Pennywise shows you the video only web page by default (using the auto-generated embed links), showing you the video in a distract free manner. You can disable that by toggling the Edit > Embed Videos.
\n
\n
Note – In case of youtube, it might not work sometime when the user has put restrictions on the video – in that case, you will have to disable \"Auto Embed\" option from the Edit menu to make them work.
Pennywise opens any website or media in a small floating window that remains on top of all other applications. Pennywise windows stays up all the time. No need to keep struggling with alt + tab, use Pennywise for easy multitasking.
\n
Features
\n
\n
Always stays on top of any open applications
\n
Adjustable opacity – it gets out of your way while you work
\n
Resize and place it anywhere
\n
Shortcuts to make you more productive
\n
Lets you multitask while you work
\n
Open source licensed under MIT
\n
Lean small resource footprint, minimal User Interface.
\n
Cross-platform works on MacOS, Windows and Linux
\n
\n
Installation
\n
Download and install the relevant distribution from the releases page.
\n
If you are on MacOS, you can use Homebrew to install it
\n
brew install --cask pennywise\n
\n
Enable Flash Support
\n
To enable flash support, copy or link Chrome's Pepperflash plugin into your $HOME/.pennywise-flash. You can find the plugin at the installation path of the Chrome. For example, on MacOS, you can do the below to enable Flash support
Here is the list of some of the possible use cases off the top of my head
\n
\n
\n
Use it as a floating window for your calendar/checklist/assigned-tickets etc
\n
Watching tutorial while you code? Open the video in Pennywise and keep it in front of you
\n
Making a video course? Open the demo in Pennywise and show the output in real time
\n
Working on some web UI? Open it in Pennywise to avoid pressing alt + tab again and again
\n
Play some video, watch some talk or play some TV series while you work
\n
Working on something non-familiar? Open the docs in Pennywise
\n
Open that live football match that you won't want to miss
\n
Use it as a desktop widget
\n
\n
Development
\n
Clone the repository, install the dependencies and start the app
\n
yarn install\nyarn start
\n
Shortcuts
\n
\n
Here is the list of available shortcuts that you may use
\n
\n
\n\n
\n
Shortcut
\n
Description
\n
\n\n\n
\n
Cmd/Ctrl + L
\n
Show Navbar and focus URL input
\n
\n
\n
Cmd/Ctrl + Shift + D
\n
Enable detached mode
\n
\n
\n
Cmd/Ctrl + M
\n
Refresh Page
\n
\n
\n
Cmd/Ctrl + Shift + L
\n
Toggle Navbar on WebPages
\n
\n
\n
Cmd/Ctrl + Shift + Up
\n
Increase Opacity
\n
\n
\n
Cmd/Ctrl + Shift + Down
\n
Decrease Opacity
\n
\n
\n
Cmd/Ctrl + Alt + I
\n
Show Developer Tools
\n
\n
\n
Cmd/Ctrl + [0-9]
\n
Switch Window Opacity
\n
\n\n
\n
\n
Note – Changing the opacity is only supported in Windows and MacOS
\n
\n
Detached Mode
\n
\n
Enabling the detached mode makes Pennywise non-interactive – it will let any interactions fall through to the window below it. To remove the detached mode, focus the window either by clicking the dock icon or by activating it using alt + tab
\n
\n
Screenshots
\n
\n
Homescreen for the application
\n
\n
\n
\n
\n
Anything running in pennywise stays on top of everything
\n
\n
\n
\n
\n
You can change the opacity too
\n
\n
\n
\n
Auto-embed Videos
\n
For some video streaming websites such as Youtube, Vimeo, Twitch, Daily Motion etc, Pennywise shows you the video only web page by default (using the auto-generated embed links), showing you the video in a distract free manner. You can disable that by toggling the Edit > Embed Videos.
\n
\n
Note – In case of youtube, it might not work sometime when the user has put restrictions on the video – in that case, you will have to disable \"Auto Embed\" option from the Edit menu to make them work.
Windows screen saver that displays a photo slideshow, built on\nReact and Electron.
\n
Why?
\n
Since modern LCD displays aren't subject to burn-in, screen savers are a thing of the past... right?
\n
Not if you have your HTPC hooked up to a plasma TV; plasma still has a big problem with burn-in.\nFinding myself in that situation, I needed a screen saver that would protect the screen while a\nmovie is paused. I also wanted it to look great — it's in my living room, after all —\nbut every screen saver I tried looked like it was written decades ago. (Most of them were.)
\n
Modern web technologies make it incredibly easy to create engaging animations. All I needed was a\nway to marry the web tools we know and love to the Windows screen saver framework. That's where\nElectron comes in.
\n
Please note: This is currently a Windows-specific project. You can run the code in Electron on\nother platforms, but you won't get the screen saver integration with the OS.
\n
Before You Build
\n
This screen saver displays a photo slideshow with a simple \"Ken Burns\" effect. It supports three\nphoto sources:
\n
\n
Unsplash: Photos tagged mountain, ocean, or forest
\n
Flickr: Photos from the group \"Flickr's Best Landscape\nPhotographers (Post 1 Award 2)\"
\n
A local folder on your computer
\n
\n
Since I didn't feel like implementing a Settings window, you'll need to make some simple code\nchanges to set up a source. If you take a look at the top of src/photoSlideshow.tsx, you'll find\nthe following line of code. Set GET_PHOTOS to getUnsplashPhotos, getFlickrPhotos, or\ngetLocalPhotos:
A quick warning: When you display random photos from the web, there's always a chance you'll get\nsomething you wouldn't want your kids, your grandma, or your boss to see. The API calls are set\nup to avoid anything NSFW, but photos do end up in the wrong category from time to time —\ndon't say I didn't warn you. If you want to stay on the safe side, you can always use your own local\nfolder of photos.
\n
How to Build
\n
(This project requires Node.js — if you're reading\nthis, you probably already have it.)
\n
Install: Go to the project folder and run the following command:
\n
npm install\n
\n
Build: Go to the project folder and run the following command:
\n
npm run build-electron\n
\n
Run: Once the build is complete, you have a couple of options. If you want to quickly fire it up\nand see what it does, go to the project folder and run:
\n
npm run start-electron\n
\n
Screen Saver: If you want to install the screen saver, look in the\npackage/photo-screen-saver-win32-x64 subfolder and find the file photo-screen-saver.scr.\nRight-click the file and choose Install. When the Windows screen saver settings appear, you'll see\nthat photo-screen-saver is now your selected screen saver.
\n
Development: If you want to work on the React part of the project, you can run npm start to\nlaunch it in the browser. Since it's built on\ncreate-react-app, you get all the benefits of\nwebpack-dev-server including hot module reloading. Note: In this mode you won't be able to use any\nfeatures that depend on Electron, such as loading photos from a local folder.
\n
Behind the Scenes
\n
It's a lot easier than I thought to create a screen saver for Windows — it's just a normal\nexecutable with a .scr extension. The program just needs to display a topmost full-screen window and\nexit on mouse or keyboard activity. These requirements are really easy to meet in Electron!
\n
Note: This project is the bare minimum and won't give you the mini-preview or Settings features.\nThe mini-preview is a pain to implement, and IMO not worth the effort. To support Settings you just\nneed to handle the /S command line argument and display an appropriate UI. (I was too lazy to\nimplement a Settings UI, but you might feel differently!)
\n
Possibilities
\n
This project makes a good starting point for any screen saver you want to create. You could start by\nchanging the Unsplash API call to get different types of photos. If photos aren't your cup of tea,\nthere are a lot of cool animations on CodePen and ShaderToy. To get you started, there are four ready-to-run\nanimation components included in this project, each one with a great-looking demo and each one\nillustrating a different basic approach to animation:
\n
\n
DemoCanvas: writes directly to an HTML5 Canvas
\n
DemoCss: uses pure SCSS
\n
DemoShader: implemented as a WebGL fragment shader
\n
DemoThreeJs: uses Three.js to create a 3D animation
\n
\n
At the top of src/app.tsx you'll find the following line of code. Set SHOW_COMPONENT to the\ncomponent you want to see:
You can create your own components using the demos as a template. Use your own code or examples you\nfind on the web. Whatever you use, be sure to comply with the license terms!
\n
License
\n
The MIT License
\n
Copyright (c) 2016 Rand Scullard
\n
",
"readmeOriginal": "
photo-screen-saver
\n
\n
Windows screen saver that displays a photo slideshow, built on\nReact and Electron.
\n
Why?
\n
Since modern LCD displays aren't subject to burn-in, screen savers are a thing of the past... right?
\n
Not if you have your HTPC hooked up to a plasma TV; plasma still has a big problem with burn-in.\nFinding myself in that situation, I needed a screen saver that would protect the screen while a\nmovie is paused. I also wanted it to look great — it's in my living room, after all —\nbut every screen saver I tried looked like it was written decades ago. (Most of them were.)
\n
Modern web technologies make it incredibly easy to create engaging animations. All I needed was a\nway to marry the web tools we know and love to the Windows screen saver framework. That's where\nElectron comes in.
\n
Please note: This is currently a Windows-specific project. You can run the code in Electron on\nother platforms, but you won't get the screen saver integration with the OS.
\n
Before You Build
\n
This screen saver displays a photo slideshow with a simple \"Ken Burns\" effect. It supports three\nphoto sources:
\n
\n
Unsplash: Photos tagged mountain, ocean, or forest
\n
Flickr: Photos from the group \"Flickr's Best Landscape\nPhotographers (Post 1 Award 2)\"
\n
A local folder on your computer
\n
\n
Since I didn't feel like implementing a Settings window, you'll need to make some simple code\nchanges to set up a source. If you take a look at the top of src/photoSlideshow.tsx, you'll find\nthe following line of code. Set GET_PHOTOS to getUnsplashPhotos, getFlickrPhotos, or\ngetLocalPhotos:
A quick warning: When you display random photos from the web, there's always a chance you'll get\nsomething you wouldn't want your kids, your grandma, or your boss to see. The API calls are set\nup to avoid anything NSFW, but photos do end up in the wrong category from time to time —\ndon't say I didn't warn you. If you want to stay on the safe side, you can always use your own local\nfolder of photos.
\n
How to Build
\n
(This project requires Node.js — if you're reading\nthis, you probably already have it.)
\n
Install: Go to the project folder and run the following command:
\n
npm install\n
\n
Build: Go to the project folder and run the following command:
\n
npm run build-electron\n
\n
Run: Once the build is complete, you have a couple of options. If you want to quickly fire it up\nand see what it does, go to the project folder and run:
\n
npm run start-electron\n
\n
Screen Saver: If you want to install the screen saver, look in the\npackage/photo-screen-saver-win32-x64 subfolder and find the file photo-screen-saver.scr.\nRight-click the file and choose Install. When the Windows screen saver settings appear, you'll see\nthat photo-screen-saver is now your selected screen saver.
\n
Development: If you want to work on the React part of the project, you can run npm start to\nlaunch it in the browser. Since it's built on\ncreate-react-app, you get all the benefits of\nwebpack-dev-server including hot module reloading. Note: In this mode you won't be able to use any\nfeatures that depend on Electron, such as loading photos from a local folder.
\n
Behind the Scenes
\n
It's a lot easier than I thought to create a screen saver for Windows — it's just a normal\nexecutable with a .scr extension. The program just needs to display a topmost full-screen window and\nexit on mouse or keyboard activity. These requirements are really easy to meet in Electron!
\n
Note: This project is the bare minimum and won't give you the mini-preview or Settings features.\nThe mini-preview is a pain to implement, and IMO not worth the effort. To support Settings you just\nneed to handle the /S command line argument and display an appropriate UI. (I was too lazy to\nimplement a Settings UI, but you might feel differently!)
\n
Possibilities
\n
This project makes a good starting point for any screen saver you want to create. You could start by\nchanging the Unsplash API call to get different types of photos. If photos aren't your cup of tea,\nthere are a lot of cool animations on CodePen and ShaderToy. To get you started, there are four ready-to-run\nanimation components included in this project, each one with a great-looking demo and each one\nillustrating a different basic approach to animation:
\n
\n
DemoCanvas: writes directly to an HTML5 Canvas
\n
DemoCss: uses pure SCSS
\n
DemoShader: implemented as a WebGL fragment shader
\n
DemoThreeJs: uses Three.js to create a 3D animation
\n
\n
At the top of src/app.tsx you'll find the following line of code. Set SHOW_COMPONENT to the\ncomponent you want to see:
You can create your own components using the demos as a template. Use your own code or examples you\nfind on the web. Whatever you use, be sure to comply with the license terms!
This is a photo/GIF viewer with support for many cool resizing and color effects.
\n
Features:
\n
\n
View images (PNG, JPG, WEBP, TIFF) and animated GIFs
\n
Support for local files, links, and images on the clipboard
\n
Brightness/Contrast adjustment
\n
Hue/Saturation/Lightness adjustment
\n
Tint adjustment
\n
Blur and Sharpen effects
\n
Pixelate effect
\n
Binarize effect
\n
Crop, resize, rotate, and flip transformations
\n
GIF speed, reverse, and transparency adjustments
\n
Undo and redo history states
\n
Open next and previous files (from the file system)
\n
Save images and GIFs with the applied effects
\n
Process multiple images in bulk
\n
\n
Keyboard Shortcuts:
\n
\n
R: Rotate
\n
Space: Pan over cropping area
\n
Escape: Reset rotation
\n
Double Click: Reset rotation, zoom, and pan
\n
Ctrl Z: Undo
\n
Ctrl Shift Z: Redo
\n
Ctrl +: Zoom in
\n
Ctrl -: Zoom out
\n
Ctrl C: Copy
\n
Ctrl V: Paste
\n
Ctrl S: Save image(s)
\n
Ctrl O: Open image(s)
\n
Drag and drop: Open image(s)
\n
\n
Installation
\n
Download the latest installer from the releases tab. Updates can be installed automatically.
\n
Known issues: Sorry, it seems like I can only build the macOS version correctly so if you are on Windows or Linux try compiling the source code yourself. Run both of these commands: \nnpm install (installs dependencies) \nnpm run build (builds the project)
This is a photo/GIF viewer with support for many cool resizing and color effects.
\n
Features:
\n
\n
View images (PNG, JPG, WEBP, TIFF) and animated GIFs
\n
Support for local files, links, and images on the clipboard
\n
Brightness/Contrast adjustment
\n
Hue/Saturation/Lightness adjustment
\n
Tint adjustment
\n
Blur and Sharpen effects
\n
Pixelate effect
\n
Binarize effect
\n
Crop, resize, rotate, and flip transformations
\n
GIF speed, reverse, and transparency adjustments
\n
Undo and redo history states
\n
Open next and previous files (from the file system)
\n
Save images and GIFs with the applied effects
\n
Process multiple images in bulk
\n
\n
Keyboard Shortcuts:
\n
\n
R: Rotate
\n
Space: Pan over cropping area
\n
Escape: Reset rotation
\n
Double Click: Reset rotation, zoom, and pan
\n
Ctrl Z: Undo
\n
Ctrl Shift Z: Redo
\n
Ctrl +: Zoom in
\n
Ctrl -: Zoom out
\n
Ctrl C: Copy
\n
Ctrl V: Paste
\n
Ctrl S: Save image(s)
\n
Ctrl O: Open image(s)
\n
Drag and drop: Open image(s)
\n
\n
Installation
\n
Download the latest installer from the releases tab. Updates can be installed automatically.
\n
Known issues: Sorry, it seems like I can only build the macOS version correctly so if you are on Windows or Linux try compiling the source code yourself. Run both of these commands: \nnpm install (installs dependencies) \nnpm run build (builds the project)
Releasing Peacock for the Windows package, Chocolatey, might be our next step.
\n
Mac
\n
Unfortunately, Mac builds are failing and there hasn't been enough testing yet for Peacock to be confident enough in releasing a public build for MacOS.
\n
Linux
\n
Here, you can download Linux builds for Peacock. Hopefully Peacock will have a Flatpak release and possibly an RPM build in the near future.
Both of the build commands use electron-builder and output executables for their respective operating system in the dist/ folder.
\n
Download and initialize Peacock's source code with these commands:
\n\n
git clone https://github.com/peacockweb/peacock.git && cd peacock
\n
npm i
\n\n
Run peacock from source:
\n
npm run start
\n
Build instructions for Windows:
\n
npm run build-win
\n
Build instructions for Linux:
\n
npm run build-linux
\n
F.A.Q.
\n
How does Peacock compare to other privacy browsers like Firefox and Brave?
\n
Both Firefox and Brave are spectacular and every day, Peacock gets closer and closer to their status of privacy. Peacock isn't stable enough yet to be used as a daily driver, but is an awesome experiment nonetheless to test the limits of the web and help make the internet a safer place.
\n
How do I know Peacock doesn't take telemetry?
\n
Peacock is built around on open source technologies and therefore we love transparency. You're welcome to perform your own audits on our entirely open source code! We also include a Components entry in our docs which breaks down all the technologies used in the production of Peacock.
\n
How experimental is Peacock? Can I process any sensitive data on it yet?
\n
Using should hold off on doing anything too sensitive on Peacock for now, it's still in development and bugs are getting patched all the time, but like all apps, some may be missed along the way.
\n
Why use Electron?
\n
Some people are skeptical about Electron for its generally high memory usage, but Electron makes the development process incredibly simple. Electron lets us build a desktop app using web technologies. Eventually, we may switch to something more practical like forking Chromium or Firefox.
\n
How to bypass security warnings?
\n
On Windows, apps are deemed as insecure if they haven't been code-signed with a certificate. Sigining certificates are expensive and therefore, Peacock doesn't have one (yet). This means that Peacock may show up to antiviruses or Windows Defender as a 'suspicious application' but can be easily bypsased selecting \"More Info\" > \"Run Anyway\":
\n
\n
",
"readmeOriginal": "
Peacock
\n
\n
\n 🦚 Open source experimental private-by-default web browser. \n Docs |\n Download |\n FAQ\n
Releasing Peacock for the Windows package, Chocolatey, might be our next step.
\n
Mac
\n
Unfortunately, Mac builds are failing and there hasn't been enough testing yet for Peacock to be confident enough in releasing a public build for MacOS.
\n
Linux
\n
Here, you can download Linux builds for Peacock. Hopefully Peacock will have a Flatpak release and possibly an RPM build in the near future.
Both of the build commands use electron-builder and output executables for their respective operating system in the dist/ folder.
\n
Download and initialize Peacock's source code with these commands:
\n\n
git clone https://github.com/peacockweb/peacock.git && cd peacock
\n
npm i
\n\n
Run peacock from source:
\n
npm run start
\n
Build instructions for Windows:
\n
npm run build-win
\n
Build instructions for Linux:
\n
npm run build-linux
\n
F.A.Q.
\n
How does Peacock compare to other privacy browsers like Firefox and Brave?
\n
Both Firefox and Brave are spectacular and every day, Peacock gets closer and closer to their status of privacy. Peacock isn't stable enough yet to be used as a daily driver, but is an awesome experiment nonetheless to test the limits of the web and help make the internet a safer place.
\n
How do I know Peacock doesn't take telemetry?
\n
Peacock is built around on open source technologies and therefore we love transparency. You're welcome to perform your own audits on our entirely open source code! We also include a Components entry in our docs which breaks down all the technologies used in the production of Peacock.
\n
How experimental is Peacock? Can I process any sensitive data on it yet?
\n
Using should hold off on doing anything too sensitive on Peacock for now, it's still in development and bugs are getting patched all the time, but like all apps, some may be missed along the way.
\n
Why use Electron?
\n
Some people are skeptical about Electron for its generally high memory usage, but Electron makes the development process incredibly simple. Electron lets us build a desktop app using web technologies. Eventually, we may switch to something more practical like forking Chromium or Firefox.
\n
How to bypass security warnings?
\n
On Windows, apps are deemed as insecure if they haven't been code-signed with a certificate. Sigining certificates are expensive and therefore, Peacock doesn't have one (yet). This means that Peacock may show up to antiviruses or Windows Defender as a 'suspicious application' but can be easily bypsased selecting \"More Info\" > \"Run Anyway\":
Desktop client for PLAYCODE Online Javascript Editor
\n
\n
Development
\n
$ git clone https://github.com/playcode/playcode-desktop.git\n$ cd Playcode-desktop\n$ npm install\n$ npm start\n$ npm run dist\n
\n
License
\n
This program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.
\n
This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.
\n
You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.
\n
",
"readmeOriginal": "
\n
\n
Playcode
\n
\n
Desktop client for PLAYCODE Online Javascript Editor
\n
\n
Development
\n
$ git clone https://github.com/playcode/playcode-desktop.git\n$ cd Playcode-desktop\n$ npm install\n$ npm start\n$ npm run dist\n
\n
License
\n
This program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.
\n
This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.
\n
You should have received a copy of the GNU General Public License\nalong with this program. If not, see http://www.gnu.org/licenses/.
Download the latest release from the release page.
\n
Platform Support
\n
\n
macOS
\n
Windows
\n
Linux
\n
\n
Features
\n
\n
Uses the iTunes API to search for Podcasts
\n
Find all episodes in the New Episodes menu item
\n
See all your Favorite Podcasts in one place
\n
Browse through the History of podcasts you've already listened to
\n
See some Statistics
\n
Manage Playlists for custom playback
\n
Dark mode
\n
Speedy playback
\n
Keyboard shortcuts for audio player actions
\n
Proxy mode for company environments
\n
Internatialization
\n
\n
Contact
\n
I'm always happy to help, and discuss new features.\nPlease use any of these contact options to get in touch. \nYou'll also find more useful stuff about the app, like tutorial and blogposts. 🍀
Download the latest release from the release page.
\n
Platform Support
\n
\n
macOS
\n
Windows
\n
Linux
\n
\n
Features
\n
\n
Uses the iTunes API to search for Podcasts
\n
Find all episodes in the New Episodes menu item
\n
See all your Favorite Podcasts in one place
\n
Browse through the History of podcasts you've already listened to
\n
See some Statistics
\n
Manage Playlists for custom playback
\n
Dark mode
\n
Speedy playback
\n
Keyboard shortcuts for audio player actions
\n
Proxy mode for company environments
\n
Internatialization
\n
\n
Contact
\n
I'm always happy to help, and discuss new features.\nPlease use any of these contact options to get in touch. \nYou'll also find more useful stuff about the app, like tutorial and blogposts. 🍀
You need to enter your IPTV provider's details to Settings. When you save, if your authentication works, you will directly see the channel lists on the left side. Select a channel and it will begin shorty.
\n
\n
\n
Future Work
\n
\n
UI work will be done
\n
Need to check Linux HWAccels
\n
\n
Contributing
\n
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
\n
This project is in early phase. If you want to change any function, feel free to do. You could refactor, propose architecture changes, design assets, add new features, provide CI/CD things and build for other platforms. Basically, all changes that can improve this software are welcome.
You need to enter your IPTV provider's details to Settings. When you save, if your authentication works, you will directly see the channel lists on the left side. Select a channel and it will begin shorty.
\n
\n
\n
Future Work
\n
\n
UI work will be done
\n
Need to check Linux HWAccels
\n
\n
Contributing
\n
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
\n
This project is in early phase. If you want to change any function, feel free to do. You could refactor, propose architecture changes, design assets, add new features, provide CI/CD things and build for other platforms. Basically, all changes that can improve this software are welcome.
Polar is personal knowledge repository which supports advanced\nfeatures like incremental reading, annotation, comments, and spaced repetition.\nIt supports reading PDF, EPUB, and the web content.
\n
\n
Features
\n
\n
\n
PDF support We have first-class PDF support thanks to PDF.js. PDFs work well when reading content in book format or when reading scientific\nresearch which is often stored as PDF.
\n
\n
\n
EPUB support Add any EPUB and we also capture web content to EPUB/
\n
\n
\n
Captured Web Pages Download HTML content and save them as offline documents which can be annotated.
\n
\n
\n
Pagemarks Easily keep track of what you're reading and the progress of each document.
\n
\n
\n
Text Highlights Highlight text in PDF and web pages.
\n
\n
\n
Area Highlights Capture a region of the page as a highlight which can be a chart, figure, infographic, etc.
\n
\n
\n
Portable Run across any platform. Linux, MacOS, and Windows supported.
Polar is personal knowledge repository which supports advanced\nfeatures like incremental reading, annotation, comments, and spaced repetition.\nIt supports reading PDF, EPUB, and the web content.
\n
\n
Features
\n
\n
\n
PDF support We have first-class PDF support thanks to PDF.js. PDFs work well when reading content in book format or when reading scientific\nresearch which is often stored as PDF.
\n
\n
\n
EPUB support Add any EPUB and we also capture web content to EPUB/
\n
\n
\n
Captured Web Pages Download HTML content and save them as offline documents which can be annotated.
\n
\n
\n
Pagemarks Easily keep track of what you're reading and the progress of each document.
\n
\n
\n
Text Highlights Highlight text in PDF and web pages.
\n
\n
\n
Area Highlights Capture a region of the page as a highlight which can be a chart, figure, infographic, etc.
\n
\n
\n
Portable Run across any platform. Linux, MacOS, and Windows supported.
Collect and visualize your desktop working activities, i.e., the names and titles of the using apps, locally
\n
Use integrated Kanban Board to make your schedule control easier
\n
Analyse your efficiency
\n
\n
Pomodoro Technique 🍅
\n
The working loop in the Pomodoro Technique is split into a 25-minute focus session and a 5-minute rest session. During a work session, the user focuses on one todo item and should not do anything irrelevant. The Pomodoro Technique can greatly improve the efficiency of work and study and alleviate work fatigue.
\n
In the Pomodoro Logger, the app will record the names and titles of the apps you use on your PC during the working sessions. The titles of apps contain rich semantic information. For example, the browser title includes the title of the website being viewed, and the IDE often provides the project path or project name.
By connecting your todo items with the corresponding recorded Pomodoro sessions, you can analyze how often you are interrupted by email and social software, the time distribution of the application and application title used to complete the task. It will help you have a more comprehensive understanding of your working hours on PC.
\n
Efficiency Analysis
\n
Pomodoro Logger keeps a list of distracting app (you can config it in the setting). When it detect your using distracting apps, you lose your efficiency.
Demonstrating your efficiency by the dots. The larger the hole, the less efficient you are.
\n
\n
You can view the record in detail by clicking the circle
\n
\n \n\n
Data 📈
\n
Pomodoro Logger records your desktop activities when you are in a working session of Pomodoro.
\n
It only records your application activities, including the name and title of the focused application.
\n
You can import / export / delete all your data in the settings.
\n
All the data is saved and processed locally.
\n
Kanban Board
\n
Pomodoro Logger has integrated Kanban Board to help you organize and estimate the time spent of your todos easily with confidence.
\n
The lists in Kanban are divided into Todo, In Progress, and Done. Though lists customization is possible, you are required to preserve In Progress list and Done list in order to track, estimate and analyze your project time spent. You can set the estimated time cost on each todo card. Pomodoro Logger will assist you with the corresponding actual time spent record. i.e., When you are focusing on a Kanban board, it will automatically associate your Pomodoro session with the todo cards of In Progress list in the Kanban, which makes further analysis possible.
\n
To make the statistics more accurate, you can keep the cards of the In Progress list as few as possible to precisely reflect the tasks you are focusing on.
Collect and visualize your desktop working activities, i.e., the names and titles of the using apps, locally
\n
Use integrated Kanban Board to make your schedule control easier
\n
Analyse your efficiency
\n
\n
Pomodoro Technique 🍅
\n
The working loop in the Pomodoro Technique is split into a 25-minute focus session and a 5-minute rest session. During a work session, the user focuses on one todo item and should not do anything irrelevant. The Pomodoro Technique can greatly improve the efficiency of work and study and alleviate work fatigue.
\n
In the Pomodoro Logger, the app will record the names and titles of the apps you use on your PC during the working sessions. The titles of apps contain rich semantic information. For example, the browser title includes the title of the website being viewed, and the IDE often provides the project path or project name.
By connecting your todo items with the corresponding recorded Pomodoro sessions, you can analyze how often you are interrupted by email and social software, the time distribution of the application and application title used to complete the task. It will help you have a more comprehensive understanding of your working hours on PC.
\n
Efficiency Analysis
\n
Pomodoro Logger keeps a list of distracting app (you can config it in the setting). When it detect your using distracting apps, you lose your efficiency.
Demonstrating your efficiency by the dots. The larger the hole, the less efficient you are.
\n
\n
You can view the record in detail by clicking the circle
\n
\n \n\n
Data 📈
\n
Pomodoro Logger records your desktop activities when you are in a working session of Pomodoro.
\n
It only records your application activities, including the name and title of the focused application.
\n
You can import / export / delete all your data in the settings.
\n
All the data is saved and processed locally.
\n
Kanban Board
\n
Pomodoro Logger has integrated Kanban Board to help you organize and estimate the time spent of your todos easily with confidence.
\n
The lists in Kanban are divided into Todo, In Progress, and Done. Though lists customization is possible, you are required to preserve In Progress list and Done list in order to track, estimate and analyze your project time spent. You can set the estimated time cost on each todo card. Pomodoro Logger will assist you with the corresponding actual time spent record. i.e., When you are focusing on a Kanban board, it will automatically associate your Pomodoro session with the todo cards of In Progress list in the Kanban, which makes further analysis possible.
\n
To make the statistics more accurate, you can keep the cards of the In Progress list as few as possible to precisely reflect the tasks you are focusing on.
To clone and run this application, you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\n$ git clone https://github.com/amitmerchant1990/pomolectron\n\n# Go into the repository\n$ cd pomolectron\n\n# Install dependencies\n$ npm install\n\n# Run the app\n$ npm start
To clone and run this application, you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
# Clone this repository\n$ git clone https://github.com/amitmerchant1990/pomolectron\n\n# Go into the repository\n$ cd pomolectron\n\n# Install dependencies\n$ npm install\n\n# Run the app\n$ npm start
Pomotroid is a simple and configurable Pomodoro timer. It aims to provide a visually-pleasing and reliable way to track productivity using the Pomodoro Technique.
\n
Pomotroid is in its early stages, so feedback and contributions are welcome and appreciated! 🌱
\n
Features
\n
\n
Customize times and number of rounds (persistent)
\n
Charming timer alert sounds (optional)
\n
Desktop notifications (optional)
\n
Minimize to tray (optional)
\n
Several themes included with the ability to create custom themes.
\n
Timer activity logging.
\n
\n
Themes
\n
Pomotroid provides many themes. It's also theme-able, allowing you to customize its appearance.
\n
\n
Visit the theme documentation to view the full list of official themes and for instruction on creating your own.
\n
Install
\n
Download
\n
Download the latest version from the releases page.
\n
Pomotroid is available for Windows, Mac OSX and Linux.
\n
Homebrew
\n
You can also install Pomotroid on macOS with Homebrew:
Note: depending on your OS settings, you may receive a security warning upon installation. This has to do with Pomotroid being an unsigned application. You can find out more by researching code-signing for Apple and Microsoft.
\n
Build Setup
\n
# install dependencies\nnpm i\n\n# serve with hot reload at localhost:9080\nnpm run dev\n\n# build Pomotroid for production\nnpm run build
Pomotroid is a simple and configurable Pomodoro timer. It aims to provide a visually-pleasing and reliable way to track productivity using the Pomodoro Technique.
\n
Pomotroid is in its early stages, so feedback and contributions are welcome and appreciated! 🌱
\n
Features
\n
\n
Customize times and number of rounds (persistent)
\n
Charming timer alert sounds (optional)
\n
Desktop notifications (optional)
\n
Minimize to tray (optional)
\n
Several themes included with the ability to create custom themes.
\n
Timer activity logging.
\n
\n
Themes
\n
Pomotroid provides many themes. It's also theme-able, allowing you to customize its appearance.
\n
\n
Visit the theme documentation to view the full list of official themes and for instruction on creating your own.
\n
Install
\n
Download
\n
Download the latest version from the releases page.
\n
Pomotroid is available for Windows, Mac OSX and Linux.
\n
Homebrew
\n
You can also install Pomotroid on macOS with Homebrew:
Note: depending on your OS settings, you may receive a security warning upon installation. This has to do with Pomotroid being an unsigned application. You can find out more by researching code-signing for Apple and Microsoft.
\n
Build Setup
\n
# install dependencies\nnpm i\n\n# serve with hot reload at localhost:9080\nnpm run dev\n\n# build Pomotroid for production\nnpm run build
Your donations will help to publish to app stores, more frequent releases, faster feature requests implementation.\nPostbird at opencollective: https://opencollective.com/postbird
\n
Contributors
\n
This project exists thanks to all the people who contribute. [Contribute].\n
Your donations will help to publish to app stores, more frequent releases, faster feature requests implementation.\nPostbird at opencollective: https://opencollective.com/postbird
\n
Contributors
\n
This project exists thanks to all the people who contribute. [Contribute].\n
PreMiD is a simple, configurable utility that allows you to show what you're doing on the web in your Discord now playing status. It supports many different websites, and will support multiple users watching the same content simultaneously in an upcoming update.
\n
Features
\n
· Displays your current web service in Discord as your status. \n· Grants full control over Presences. \n· Supports over 900 web services, still rising! \n· Watch parties and more are coming soon!
\n
Installation/Troubleshooting
\n
Installation instructions, Troubleshooting guides etc. can be located at our docs.
PreMiD is a simple, configurable utility that allows you to show what you're doing on the web in your Discord now playing status. It supports many different websites, and will support multiple users watching the same content simultaneously in an upcoming update.
\n
Features
\n
· Displays your current web service in Discord as your status. \n· Grants full control over Presences. \n· Supports over 900 web services, still rising! \n· Watch parties and more are coming soon!
\n
Installation/Troubleshooting
\n
Installation instructions, Troubleshooting guides etc. can be located at our docs.
After the image is calculated you have 2 options to save the result:
\n\n
The first one which is selected by default is to save the generated image directly as an image file (option Raster image) - for this after calculating a \"Save as\" dialog shows up in which you can select the name and folder of the file
\n
Alternatively you can choose the option \"vector image\" and then copy&paste the image date from primitive.nextgen into a file with the ending .svg (eg. via Notepad++ or another text editor). Then open the .svg file in eg. inkscape, make some edits if you want and save the result as an image file with the ending .jpg, .png or any other format
\n\n
Hint: According to issue #2 there seem to occur problems on OS X devices with the first option, so please use the second option then.
After the image is calculated you have 2 options to save the result:
\n\n
The first one which is selected by default is to save the generated image directly as an image file (option Raster image) - for this after calculating a \"Save as\" dialog shows up in which you can select the name and folder of the file
\n
Alternatively you can choose the option \"vector image\" and then copy&paste the image date from primitive.nextgen into a file with the ending .svg (eg. via Notepad++ or another text editor). Then open the .svg file in eg. inkscape, make some edits if you want and save the result as an image file with the ending .jpg, .png or any other format
\n\n
Hint: According to issue #2 there seem to occur problems on OS X devices with the first option, so please use the second option then.
Our planet is a beautiful place. The Google Chrome Earth View extension by Google is a wonderful way to deliver stunning satellite images to us every time we open a new tab, inspiring us on our next web adventure. But why stop there? Why don't get impressed by these the wonders of the earth as well when gazing at this more important rectangle on our screen, our wallpaper. PrettyEarth now grants you the opportunity to bring our blue marble to your desktop.
Our planet is a beautiful place. The Google Chrome Earth View extension by Google is a wonderful way to deliver stunning satellite images to us every time we open a new tab, inspiring us on our next web adventure. But why stop there? Why don't get impressed by these the wonders of the earth as well when gazing at this more important rectangle on our screen, our wallpaper. PrettyEarth now grants you the opportunity to bring our blue marble to your desktop.
Register your .proto files to enable protobuf-related features. Right click on the collection, select 'Manage .proto files' to register the file paths.
\n\n
\n
\n\n
\n
The rest of the request-building interface is similar to Postman.
\n
a. Enter your good old http request parameters (method, url, headers)
\n
b. Select request/response proto messages you want.
\n
c. Fill out the fields in your request proto message.
\n
d. Click send.
\n
e. The response is shown below the request section.
\n
\n\n
\n\n
As of version 0.2.0, you can also set up environments, and reuse variables there throughout your requests on the top-right corner!
\n\n
\n
\n\n
As of version 0.3.0, you can also import / export collections as JSON
\n\n
\n
When importing a collection, all the proto definitions / path to .proto files are also imported. Hence, it's recommended to fix the paths to keep the proto definitions up-to-date.
\n
Note that it's not compatible with Postman collections.
\n
\n\n
\n
As of version 0.4.0, you can also reorder requests / set different expected messages for success(2XX) and failures(others)
\n
\n
\n
That's it for the current version. Enjoy and leave a star if you like it !
As a fallback, you can clone the repo and run npm install && npm run build to build, and npm run start to launch the app. Or, you can actually find configurations on electron builder to get the right distribution version yourself!
\n
Contributing
\n
If you are interested in reporting/fixing issues and contributing directly to the codebase, follow the standard procedures.
\n\n
Create an issue.
\n
Fork the repo.
\n
Submit a PR.
\n
We'll get back to you as soon as we can!
\n\n
Make sure to run npm run lint before submitting your PR!
Register your .proto files to enable protobuf-related features. Right click on the collection, select 'Manage .proto files' to register the file paths.
\n\n
\n
\n\n
\n
The rest of the request-building interface is similar to Postman.
\n
a. Enter your good old http request parameters (method, url, headers)
\n
b. Select request/response proto messages you want.
\n
c. Fill out the fields in your request proto message.
\n
d. Click send.
\n
e. The response is shown below the request section.
\n
\n\n
\n\n
As of version 0.2.0, you can also set up environments, and reuse variables there throughout your requests on the top-right corner!
\n\n
\n
\n\n
As of version 0.3.0, you can also import / export collections as JSON
\n\n
\n
When importing a collection, all the proto definitions / path to .proto files are also imported. Hence, it's recommended to fix the paths to keep the proto definitions up-to-date.
\n
Note that it's not compatible with Postman collections.
\n
\n\n
\n
As of version 0.4.0, you can also reorder requests / set different expected messages for success(2XX) and failures(others)
\n
\n
\n
That's it for the current version. Enjoy and leave a star if you like it !
As a fallback, you can clone the repo and run npm install && npm run build to build, and npm run start to launch the app. Or, you can actually find configurations on electron builder to get the right distribution version yourself!
\n
Contributing
\n
If you are interested in reporting/fixing issues and contributing directly to the codebase, follow the standard procedures.
\n\n
Create an issue.
\n
Fork the repo.
\n
Submit a PR.
\n
We'll get back to you as soon as we can!
\n\n
Make sure to run npm run lint before submitting your PR!
Puppetry is an open-source cross-platform desktop application that gives non-developers the ability to create, manage, and integrate automated tests for Web
Puppetry offers you an easy-to-use UI where you choose browser methods and assertions from a predefined list, with predefined settings, guided by extensive tips.\nNamely you can do the following:
\n
\n
record user flow
\n
declare element targets as pairs variable = locator, where locator can be either CSS selector or Xpath.
\n
manage your test structure in BDD style (project, suite, test context, test case)
\n
manage page/element methods and assertions
\n
run the tests in Chromium/Chromium/Chrome/Firefox/Edge
\n
export the project as Jest/Puppeteer bundle ready to run in CLI (e.g. by a continuous integration server)
\n
\n
Key Features
\n
\n
Can be used by QA engineers with no programming background
Please adhere the coding style. We have one based on jQuery's JavaScript Style Guide. You can find the validation rules in .eslintrc\nand lint the code by running npm run lint
Puppetry is an open-source cross-platform desktop application that gives non-developers the ability to create, manage, and integrate automated tests for Web
Puppetry offers you an easy-to-use UI where you choose browser methods and assertions from a predefined list, with predefined settings, guided by extensive tips.\nNamely you can do the following:
\n
\n
record user flow
\n
declare element targets as pairs variable = locator, where locator can be either CSS selector or Xpath.
\n
manage your test structure in BDD style (project, suite, test context, test case)
\n
manage page/element methods and assertions
\n
run the tests in Chromium/Chromium/Chrome/Firefox/Edge
\n
export the project as Jest/Puppeteer bundle ready to run in CLI (e.g. by a continuous integration server)
\n
\n
Key Features
\n
\n
Can be used by QA engineers with no programming background
Please adhere the coding style. We have one based on jQuery's JavaScript Style Guide. You can find the validation rules in .eslintrc\nand lint the code by running npm run lint
Pullp is a tool to help you manage pull requests and reviews on your Github repositories, available for Mac, Linux and Windows.
\n
An interactive dashboard shows all the open pull requests for your chosen repositories and highlights where your review has been requested. This information syncs with Github every minute! To help you keep track of things, Pullp has configurable desktop notifications to keep you in the loop.
\n
\n
Want to find out more about the pull requests on a particular repository? Selecting a repository shows a full summary of each pull request, including all of the requested reviewers and submitted reviews. If you need to action anything, a click will take you directly to the pull request in Github.
\n
\n
You are also shown the five most recently closed pull requests:
\n
\n
Want to change the way that Pullp notifies you of changes? On the settings screen you can toggle a number of different options:
\n
\n
Pullp is an Electron application built with React.
\n
⚡ Getting Started
\n
\n
Download and install the latest release. You'll want the .dmg file for MacOS or the .AppImage file for Linux
\n
Open the app
\n
On MacOS, if your security settings block you from opening the app, right-click it and select Open. You can then click Open on the warning dialogue that opens up.
\n
Follow the on screen instructions to sign in with Github
\n
Select the repositories you want to monitor with Pullp (you are able to choose from all the ones that you watch on Github
\n
Click Monitor to go to the dashboard screen.
\n
Pullp will refresh the dashboard every minute!
\n
\n\n
❔ FAQs
\n
❓ Why does my repository only show a maximum of 50 open pull requests?
\n
\n
💡 Github applies a cost in points to each request Pullp makes for data. Each hour you are permitted to spend 5000 points. By restricting the maximum pull requests to 50, the cost of each request is manageable. This means Pullp can make more frequent requests, giving you a more \"near-time\" experience. Allowing this maximum limit to be configurable by the user could be a feature in the future.
\n
\n
❓ I am seeing an error saying The amount of pull request data for your selected repositories exceeds Github's maximum limit.
\n
\n
💡 Github places a limit on the maximum number of data nodes that can be returned from a single request. This limit may be breached if you have selected a large number of repositories that have many pull requests. The only solution to this currently is to select fewer repositories.
\n
\n
❓ Can I access the console/Chrome dev tools inside the app?
\n
\n
💡 Yes! Just use the normal Chrome shortcut to open them, e.g. cmd + opt + i on Mac. React and Redux dev tools are not available in the production app, but are enabled if you are running the app in the dev environment.
\n
\n
❓ I can't see my repository on the Select screen.
\n
\n
💡 Make sure you are watching the repository in Github, otherwise it won't appear on the select screen.
\n
\n\n
🏁 Developer Instructions 🏁
\n
🚀 Running dev environment - The simplest way
\n
After npm install, run npm start to start the webpack dev server and electron app.
\n
React and Apollo dev tools will be available inside the Chrome dev tools.
\n
✅ Running the tests
\n
\n
Run npm test.
\n
To run the tests without the file watcher, run npm run test:no-watcher
\n
\n
💫 Optional - Running a local oAuth server
\n
Pullp uses an external auth server to complete Github sign in and receive a token for the Github API. You may want to host a local version of this server. Clone it from https://github.com/rkclark/pullp-oauth-gatekeeper, run it on the port of your choosing and then add the server URL to REACT_APP_OAUTH_GATEKEEPER_URL in the /env/.env.development file inside of Pullp.
\n
If you are connecting to a different GitHub domain than github.com, you can set REACT_APP_GITHUB_DOMAIN to that domain such as github.mycompany.com
\n
Your oauth server will need set of Github oAuth app credentials. To make these:
\n
\n
In Github, go to your settings
\n
Go to Developer Settings, select oAuth Apps (usually selected by default)
\n
Click New oAuth App
\n
Give the app a name, this will be seen when/if your app requests access to any organisations that you are a part of. I suggest pullp!
\n
Set the homepage to whatever you like
\n
The authorization callback URL is not actually used by Pullp, I'd suggest just setting it to http://localhost:3001/auth/github/callback
\n
Click to register the app
\n
Make a note of the client ID and client secret that you are shown on the next screen
\n
\n
Once you have the credentials, create a new .env file in the server project root and add them as
\n
OAUTH_CLIENT_ID=xxx\nOAUTH_CLIENT_SECRET=xxx\n
\n
Optional - Stubbing Github
\n
The project includes a server that provides stub responses for all external dependencies:
\n
\n
Github login page
\n
Github oAuth flow
\n
Github GraphQl server
\n
\n
To run the stub server run npm run stub. This will start the server along with the webpack dev server. Then just run npm run electron:start:dev in another terminal window.
\n
This can be used if you want to work offline or have finer control over the data being received by the app.
\n
Limitations:
\n
\n
The GraphQl endpoint is not a real GraphQl implementation! If you change any queries then they will not work without updating the stub endpoint to watch for them.
\n
To have repos appear on the dashboard, do not select any on the Select screen
\n
Images are not currently stubbed so will simply not be loaded
\n
\n
🔮 Other developer scripts
\n
\n
npm run serve: Run a server that hosts the production files
\n
npm run react:build: Build the React/CSS production files
\n
npm run style: Run the linter report
\n
npm run style-fix: Fix all auto-fixable lint errors
\n
npm run precommit: Runs the linter and test suite - used by Husky whenever a git commit is created
\n
npm run electron: Runs electron against the built production files,
\n
npm run pack: Packages distributable for the current OS and leaves unpackaged files available for inspection for debugging
\n
npm run dist: Builds the production files and then packages them into a distributable for the current OS
\n
npm run ship: Builds the production files, packages them for the current OS, and then pushes them to a draft Github release on the Pullp repository. For this to work, you must have the relevant access rights on the Pullp repository. In addition, you must create a personal token on Github and add it as GH_TOKEN=**YOURTOKEN** in a new file electron-builder.env in the project root. See electron-builder.example.env for an example.
\n
npm run install-wsl: Installs linux versions of all packages except for Electron which is installed as the Windows version. For use when developing using Windows Subsystem for Linux (WSL). This is currently the best workaround available.
\n
\n
CI/CD and Releasing
\n
Pullp uses Github Actions for CI/CD. This is configured so that any branch that is pushed with a name in the format vX.X.X will be automatically packaged for Mac and Linux and uploaded to Github as a draft release.
\n
e.g.
\n
\n
a branch with a name v1.9.70 will be created as a draft release with the Windows, Mac and Linux installation files attached.
\n
\n
Once the draft release is on Github it can have release notes added and then be published! 👌
\n
",
"readmeOriginal": "
Pullp
\n
Pullp is a tool to help you manage pull requests and reviews on your Github repositories, available for Mac, Linux and Windows.
\n
An interactive dashboard shows all the open pull requests for your chosen repositories and highlights where your review has been requested. This information syncs with Github every minute! To help you keep track of things, Pullp has configurable desktop notifications to keep you in the loop.
\n
\n
Want to find out more about the pull requests on a particular repository? Selecting a repository shows a full summary of each pull request, including all of the requested reviewers and submitted reviews. If you need to action anything, a click will take you directly to the pull request in Github.
\n
\n
You are also shown the five most recently closed pull requests:
\n
\n
Want to change the way that Pullp notifies you of changes? On the settings screen you can toggle a number of different options:
\n
\n
Pullp is an Electron application built with React.
\n
⚡ Getting Started
\n
\n
Download and install the latest release. You'll want the .dmg file for MacOS or the .AppImage file for Linux
\n
Open the app
\n
On MacOS, if your security settings block you from opening the app, right-click it and select Open. You can then click Open on the warning dialogue that opens up.
\n
Follow the on screen instructions to sign in with Github
\n
Select the repositories you want to monitor with Pullp (you are able to choose from all the ones that you watch on Github
\n
Click Monitor to go to the dashboard screen.
\n
Pullp will refresh the dashboard every minute!
\n
\n\n
❔ FAQs
\n
❓ Why does my repository only show a maximum of 50 open pull requests?
\n
\n
💡 Github applies a cost in points to each request Pullp makes for data. Each hour you are permitted to spend 5000 points. By restricting the maximum pull requests to 50, the cost of each request is manageable. This means Pullp can make more frequent requests, giving you a more \"near-time\" experience. Allowing this maximum limit to be configurable by the user could be a feature in the future.
\n
\n
❓ I am seeing an error saying The amount of pull request data for your selected repositories exceeds Github's maximum limit.
\n
\n
💡 Github places a limit on the maximum number of data nodes that can be returned from a single request. This limit may be breached if you have selected a large number of repositories that have many pull requests. The only solution to this currently is to select fewer repositories.
\n
\n
❓ Can I access the console/Chrome dev tools inside the app?
\n
\n
💡 Yes! Just use the normal Chrome shortcut to open them, e.g. cmd + opt + i on Mac. React and Redux dev tools are not available in the production app, but are enabled if you are running the app in the dev environment.
\n
\n
❓ I can't see my repository on the Select screen.
\n
\n
💡 Make sure you are watching the repository in Github, otherwise it won't appear on the select screen.
\n
\n\n
🏁 Developer Instructions 🏁
\n
🚀 Running dev environment - The simplest way
\n
After npm install, run npm start to start the webpack dev server and electron app.
\n
React and Apollo dev tools will be available inside the Chrome dev tools.
\n
✅ Running the tests
\n
\n
Run npm test.
\n
To run the tests without the file watcher, run npm run test:no-watcher
\n
\n
💫 Optional - Running a local oAuth server
\n
Pullp uses an external auth server to complete Github sign in and receive a token for the Github API. You may want to host a local version of this server. Clone it from https://github.com/rkclark/pullp-oauth-gatekeeper, run it on the port of your choosing and then add the server URL to REACT_APP_OAUTH_GATEKEEPER_URL in the /env/.env.development file inside of Pullp.
\n
If you are connecting to a different GitHub domain than github.com, you can set REACT_APP_GITHUB_DOMAIN to that domain such as github.mycompany.com
\n
Your oauth server will need set of Github oAuth app credentials. To make these:
\n
\n
In Github, go to your settings
\n
Go to Developer Settings, select oAuth Apps (usually selected by default)
\n
Click New oAuth App
\n
Give the app a name, this will be seen when/if your app requests access to any organisations that you are a part of. I suggest pullp!
\n
Set the homepage to whatever you like
\n
The authorization callback URL is not actually used by Pullp, I'd suggest just setting it to http://localhost:3001/auth/github/callback
\n
Click to register the app
\n
Make a note of the client ID and client secret that you are shown on the next screen
\n
\n
Once you have the credentials, create a new .env file in the server project root and add them as
\n
OAUTH_CLIENT_ID=xxx\nOAUTH_CLIENT_SECRET=xxx\n
\n
Optional - Stubbing Github
\n
The project includes a server that provides stub responses for all external dependencies:
\n
\n
Github login page
\n
Github oAuth flow
\n
Github GraphQl server
\n
\n
To run the stub server run npm run stub. This will start the server along with the webpack dev server. Then just run npm run electron:start:dev in another terminal window.
\n
This can be used if you want to work offline or have finer control over the data being received by the app.
\n
Limitations:
\n
\n
The GraphQl endpoint is not a real GraphQl implementation! If you change any queries then they will not work without updating the stub endpoint to watch for them.
\n
To have repos appear on the dashboard, do not select any on the Select screen
\n
Images are not currently stubbed so will simply not be loaded
\n
\n
🔮 Other developer scripts
\n
\n
npm run serve: Run a server that hosts the production files
\n
npm run react:build: Build the React/CSS production files
\n
npm run style: Run the linter report
\n
npm run style-fix: Fix all auto-fixable lint errors
\n
npm run precommit: Runs the linter and test suite - used by Husky whenever a git commit is created
\n
npm run electron: Runs electron against the built production files,
\n
npm run pack: Packages distributable for the current OS and leaves unpackaged files available for inspection for debugging
\n
npm run dist: Builds the production files and then packages them into a distributable for the current OS
\n
npm run ship: Builds the production files, packages them for the current OS, and then pushes them to a draft Github release on the Pullp repository. For this to work, you must have the relevant access rights on the Pullp repository. In addition, you must create a personal token on Github and add it as GH_TOKEN=**YOURTOKEN** in a new file electron-builder.env in the project root. See electron-builder.example.env for an example.
\n
npm run install-wsl: Installs linux versions of all packages except for Electron which is installed as the Windows version. For use when developing using Windows Subsystem for Linux (WSL). This is currently the best workaround available.
\n
\n
CI/CD and Releasing
\n
Pullp uses Github Actions for CI/CD. This is configured so that any branch that is pushed with a name in the format vX.X.X will be automatically packaged for Mac and Linux and uploaded to Github as a draft release.
\n
e.g.
\n
\n
a branch with a name v1.9.70 will be created as a draft release with the Windows, Mac and Linux installation files attached.
\n
\n
Once the draft release is on Github it can have release notes added and then be published! 👌
Current status: 80% parity with previous version (missing dark theme, icons on hover tooltips, mostly)
\n
This project uses Github Projects to plan development — feel free to join in!
\n
Feel free to email me if you are interested in contributing right now, before the foundation is done: navedcoded@gmail.com . Sorry if things are a bit messy, but I recommend checking this repo out a few weeks later!
(The repo uses an automatic postinstall script to patch the npm package electron-update-notification to use a promise .then() instead of callbacks. I haven't been able to test if I set this up correctly, but hopefully it's fine. You can check the installed package files manually, or just message me for help to ensure it's all good.)
\n
Action\n5. Run a local build with electron-dev, has hot-reload\n6. Build a package with dist-[platform] choosing the relevant platform from the scripts available in the package.json
\n
Many thanks to Albert Nye for his svelte electron template!
\n
License
\n.\">
Copyright (C) 2020-2021 Naved Islam\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU Affero General Public License as published\nby the Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU Affero General Public License for more details.\n\nYou should have received a copy of the GNU Affero General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>.\n
\n",
"readmeOriginal": "
Qawl v2
\n
Current status: 80% parity with previous version (missing dark theme, icons on hover tooltips, mostly)
\n
This project uses Github Projects to plan development — feel free to join in!
\n
Feel free to email me if you are interested in contributing right now, before the foundation is done: navedcoded@gmail.com . Sorry if things are a bit messy, but I recommend checking this repo out a few weeks later!
(The repo uses an automatic postinstall script to patch the npm package electron-update-notification to use a promise .then() instead of callbacks. I haven't been able to test if I set this up correctly, but hopefully it's fine. You can check the installed package files manually, or just message me for help to ensure it's all good.)
\n
Action\n5. Run a local build with electron-dev, has hot-reload\n6. Build a package with dist-[platform] choosing the relevant platform from the scripts available in the package.json
\n
Many thanks to Albert Nye for his svelte electron template!
\n
License
\n
Copyright (C) 2020-2021 Naved Islam\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU Affero General Public License as published\nby the Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU Affero General Public License for more details.\n\nYou should have received a copy of the GNU Affero General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>.\n
Permission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.
\n
\n
",
"readmeOriginal": "
\n \n
\n
\n \n
\n
\n
INTRODUCTION
\n
Meet qikQR. A desktop app that creates QR codes.\n qikQR is multi-platform, open-source, and built entirely on web technology.
Permission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.
Quark is a general purpose software tool specifically designed to help you create projects written in HTML, CSS and JavaScript with native desktop app like capabilities. Quark apps run on Mac, Windows, and Linux from a single codebase.
Projects build with Quark should be easy and quick to setup.
\n
💻 Cross-platform
\n
Projects build with Quark should run on all platforms such as Windows, Linux and Mac, sharing the same code base.
\n
🐱 Simplicity
\n
Quark is built with simplicity in mind, so that creating projects with Quark is enjoyable, easy to learn, and accessible to just about anyone with basic programming skills.
Quark is a general purpose software tool specifically designed to help you create projects written in HTML, CSS and JavaScript with native desktop app like capabilities. Quark apps run on Mac, Windows, and Linux from a single codebase.
Projects build with Quark should be easy and quick to setup.
\n
💻 Cross-platform
\n
Projects build with Quark should run on all platforms such as Windows, Linux and Mac, sharing the same code base.
\n
🐱 Simplicity
\n
Quark is built with simplicity in mind, so that creating projects with Quark is enjoyable, easy to learn, and accessible to just about anyone with basic programming skills.
Quba-Viewer (homepage) is a cross platform open source application to display\nstructured (i.e., XML) and hybrid (Factur-X/ZUGFeRD PDF) electronic invoices.
\n\n1.1.2 .04.2022\n - Accept invoices as command line arguments #12\n\n\n1.1.1 11.11.2021\n - Allow drag&drop of files #9\n\n\n1.1.1 24.09.2021\n - The window for the example files can now be closed\n - plain pdf without embedded xml not to show button for visualization\n\n\n1.1.0 20.09.2021\n - #6 New document shows still old data / invoice\n - Switch to vue.js\n - i18n: Support for EN and FR\n - support FX Referenzprofil XRechnung\n\n\n1.0 23.08.2021\n - #5 Codelists are now resolved\n - Support for first FX Extended Element, i.e., Cash Discount in XML \n\n\n0.5 27.07.2021\n - Support for PDF\n - Support for Factur-X/ZUGFeRD\n - Display errors as dialog instead of hiding them \n\n\n0.2 10.06.2021\n - Support for XRechnung (UBL)\n - \"dark\" theming\n - possibility to open multiple files at the same time in the same viewer (tabs)\n - print \n \n\n0.1 2021-03-31\n - Initial release\n - Support for XRechnung (UN/CEFACT CII)\n - release for Windows on 2021-03-31, for Linux on 2101-04-16 and for Mac on 2021-04-27\n \n
Pedigree
\n
\n
The FeRD had published visualization XSLTs for ZF1 (~=UN/CEFACT C13B) as open source, unfortunately the ones for the UN/CEFACT C16B-based\nversion 2 remains proprietary. The Kosit released XSLT for both CII and UBL of the XRechnung (XR) which has been used for various online viewers\nbut also for offline viewers like Ultramarinviewer and Open XRechnung Toolbox. Quba uses this work added translations and\nat least experimental support for Factur-X/ZUGFeRD profiles higher than EN16931.
\n
Known issues
\n
\n
While XRechnung, EN16931 and below should work, not all FX attributes/elements of the Extended Profile have yet been mapped, feel free to report missing ones
\n
\n
",
"readmeOriginal": "
Quba-Viewer
\n
Quba-Viewer (homepage) is a cross platform open source application to display\nstructured (i.e., XML) and hybrid (Factur-X/ZUGFeRD PDF) electronic invoices.
\n\n1.1.2 .04.2022\n - Accept invoices as command line arguments #12\n\n\n1.1.1 11.11.2021\n - Allow drag&drop of files #9\n\n\n1.1.1 24.09.2021\n - The window for the example files can now be closed\n - plain pdf without embedded xml not to show button for visualization\n\n\n1.1.0 20.09.2021\n - #6 New document shows still old data / invoice\n - Switch to vue.js\n - i18n: Support for EN and FR\n - support FX Referenzprofil XRechnung\n\n\n1.0 23.08.2021\n - #5 Codelists are now resolved\n - Support for first FX Extended Element, i.e., Cash Discount in XML \n\n\n0.5 27.07.2021\n - Support for PDF\n - Support for Factur-X/ZUGFeRD\n - Display errors as dialog instead of hiding them \n\n\n0.2 10.06.2021\n - Support for XRechnung (UBL)\n - \"dark\" theming\n - possibility to open multiple files at the same time in the same viewer (tabs)\n - print \n \n\n0.1 2021-03-31\n - Initial release\n - Support for XRechnung (UN/CEFACT CII)\n - release for Windows on 2021-03-31, for Linux on 2101-04-16 and for Mac on 2021-04-27\n \n
Pedigree
\n
\n
The FeRD had published visualization XSLTs for ZF1 (~=UN/CEFACT C13B) as open source, unfortunately the ones for the UN/CEFACT C16B-based\nversion 2 remains proprietary. The Kosit released XSLT for both CII and UBL of the XRechnung (XR) which has been used for various online viewers\nbut also for offline viewers like Ultramarinviewer and Open XRechnung Toolbox. Quba uses this work added translations and\nat least experimental support for Factur-X/ZUGFeRD profiles higher than EN16931.
\n
Known issues
\n
\n
While XRechnung, EN16931 and below should work, not all FX attributes/elements of the Extended Profile have yet been mapped, feel free to report missing ones
Go to the project directory and install dependencies:
\n
\n
cd r2e-todoworks && npm install\n
\n
$ npm run dev\n
\n
Generate the binary:
\n
\n
For Linux
\n
\n
$ npm run package-linux\n
\n
Maybe you will install some depends packages.
\n
\n
For Mac
\n
\n
$ npm run package-mac\n
\n
After that, you will see the binary in ./release folder
\n
2. How to use it ?
\n
\n\n
\n
Icon
\n
Description
\n
\n\n\n
\n
Check
\n
Click when todo done
\n
\n
\n
Fire
\n
Todo in status warning, and move on top
\n
\n
\n
Rocket
\n
Click when you want change status todo normal to warning
\n
\n
\n
Like
\n
Todo in status done and move down in list todo done
\n
\n
\n
Close
\n
Remove todo
\n
\n\n
\n
3. Contributing
\n
So you want to contribute? Fun! I love seeing new PRs for r2e-todoworks.\nIf you are thinking about working on something, feel free to make an issue beforehand so that you can make sure it'll be worth your time!
\n
4. License
\n
MIT License
\n
",
"readmeOriginal": "
r2e-todoworks
\n
todoworks for desktop use React, Electron and Mobx
Go to the project directory and install dependencies:
\n
\n
cd r2e-todoworks && npm install\n
\n
$ npm run dev\n
\n
Generate the binary:
\n
\n
For Linux
\n
\n
$ npm run package-linux\n
\n
Maybe you will install some depends packages.
\n
\n
For Mac
\n
\n
$ npm run package-mac\n
\n
After that, you will see the binary in ./release folder
\n
2. How to use it ?
\n
\n\n
\n
Icon
\n
Description
\n
\n\n\n
\n
Check
\n
Click when todo done
\n
\n
\n
Fire
\n
Todo in status warning, and move on top
\n
\n
\n
Rocket
\n
Click when you want change status todo normal to warning
\n
\n
\n
Like
\n
Todo in status done and move down in list todo done
\n
\n
\n
Close
\n
Remove todo
\n
\n\n
\n
3. Contributing
\n
So you want to contribute? Fun! I love seeing new PRs for r2e-todoworks.\nIf you are thinking about working on something, feel free to make an issue beforehand so that you can make sure it'll be worth your time!
The R6RC | R6 Rank Calculator takes a user's current MMR (Match Making Rating) and ELO (Points per match) to display how many matches the user has to win or lose to reach their goal.
Solve for custom goal (anywhere between 1,100 & 10,000)
\n
Calculate how many games you have to win to reach your rank goal
\n
Calculate how many games you have to lose to reach your rank goal
\n
Switch between solving for preset and custom values
\n
Automatic updates
\n
Clean UI
\n
\n
Platforms
\n
\n
This app is currently only supported on all Windows platforms
\n
\n
Pictures
\n
\n
\n
Affiliation
\n
\n
The R6RC | R6 Rank Calculator is in no way shape or form affiliated with Ubisoft and its partners. Any \"Rainbow Six: Siege\" name, logos and/or images are registered trademarks of Ubisoft.
The R6RC | R6 Rank Calculator takes a user's current MMR (Match Making Rating) and ELO (Points per match) to display how many matches the user has to win or lose to reach their goal.
Solve for custom goal (anywhere between 1,100 & 10,000)
\n
Calculate how many games you have to win to reach your rank goal
\n
Calculate how many games you have to lose to reach your rank goal
\n
Switch between solving for preset and custom values
\n
Automatic updates
\n
Clean UI
\n
\n
Platforms
\n
\n
This app is currently only supported on all Windows platforms
\n
\n
Pictures
\n
\n
\n
Affiliation
\n
\n
The R6RC | R6 Rank Calculator is in no way shape or form affiliated with Ubisoft and its partners. Any \"Rainbow Six: Siege\" name, logos and/or images are registered trademarks of Ubisoft.
An advanced GUI for Redis. Modern. Efficient. Fast.
\n
A faster and robust Redis management tool. For developers that need to manage data with confidence.
\n
It gives you full control about every single aspect of your Redis management experience. Instead of lots of CLI commands, you can CRUD keys and monitor endpoints.
An advanced GUI for Redis. Modern. Efficient. Fast.
\n
A faster and robust Redis management tool. For developers that need to manage data with confidence.
\n
It gives you full control about every single aspect of your Redis management experience. Instead of lots of CLI commands, you can CRUD keys and monitor endpoints.
Mac & Linux are on the roadmap. Kindly support the project if you would like to see more platforms and features added in the future.
\n
Features
\n
\n
\n
Clean Minimal Design
\n
\n
\n
Raider is simple, clean and easy to use.
\n
\n
\n
Download from Private Accounts
\n
\n
\n
Login with your Instagram credentials and download photos from private accounts that you follow.
\n
\n
\n
Multiple Accounts Support
\n
\n
\n
Raider allows you to add multiple accounts and switches between them seamlessly when downloading from private accounts.
\n
\n
\n
Subscribe to Accounts
\n
\n
\n
Every time you download an account using Raider, we add it to your subscribed accounts section. You can update a single account or all of them anytime.
\n
\n
\n
Edit/Delete Subscribed Accounts
\n
\n
\n
Want to change the username of a subscribed account? Maybe rename the folder name? Raider allows you to easily do so.
\n
Just long click on any account to enter Edit Mode.
\n
Support the Project
\n
Despite taking weeks to research, design and code, Raider does not contain a single ad, any trackers or in app purchases. It is completely free to use.
\n
If you would like to see more features added in the future and keep the app free, kindly support the author on Patreon.
Mac & Linux are on the roadmap. Kindly support the project if you would like to see more platforms and features added in the future.
\n
Features
\n
\n
\n
Clean Minimal Design
\n
\n
\n
Raider is simple, clean and easy to use.
\n
\n
\n
Download from Private Accounts
\n
\n
\n
Login with your Instagram credentials and download photos from private accounts that you follow.
\n
\n
\n
Multiple Accounts Support
\n
\n
\n
Raider allows you to add multiple accounts and switches between them seamlessly when downloading from private accounts.
\n
\n
\n
Subscribe to Accounts
\n
\n
\n
Every time you download an account using Raider, we add it to your subscribed accounts section. You can update a single account or all of them anytime.
\n
\n
\n
Edit/Delete Subscribed Accounts
\n
\n
\n
Want to change the username of a subscribed account? Maybe rename the folder name? Raider allows you to easily do so.
\n
Just long click on any account to enter Edit Mode.
\n
Support the Project
\n
Despite taking weeks to research, design and code, Raider does not contain a single ad, any trackers or in app purchases. It is completely free to use.
\n
If you would like to see more features added in the future and keep the app free, kindly support the author on Patreon.
# install dependencies\nyarn install\n\n# serve with hot reload at localhost:9080\nyarn electron:serve\n\n# build electron application for production\nyarn electron:build\n\n\n# lint all JS/Vue component files in `src/`\nyarn run lint\n
# install dependencies\nyarn install\n\n# serve with hot reload at localhost:9080\nyarn electron:serve\n\n# build electron application for production\nyarn electron:build\n\n\n# lint all JS/Vue component files in `src/`\nyarn run lint\n
Plugin-based: local supported for now, ftp in the works
\n
WSL detection on Windows
\n
\n
Feature tour
\n
Dark theme automatic detection (macOS Mojave)
\n
React-Explorer will automatically switch to dark-theme when it's detected:
\n
\n
Create and read folder
\n
By pressing ctrl (Linux/Win) or cmd the folder you create will be automatically read:
\n
\n
Create nested folders
\n
You can create several folders at once by separating them with a forward-slash:
\n
\n
Quick access to parent folders
\n
By right-clicking on a tab's icon you can quickly get access to the parents of the currend folder:
\n
\n
WSL support
\n
React-Explorer will automatically detect and show the list of Linux distributions installed using WSL on Windows:
\n
\n
Requirements
\n
React-Explorer works on any modern Windows, Mac or Linux computer.
\n
Building for local development
\n
In order to build React-Explorer you need to have installed nodejs.
\n
Once installed, building React-Explorer is as easy as typing:
\n
npm install && npm run build
\n
This will build a development package.
\n
In order to run in locally without having to create a native executable, you can then type:
\n
npx electron ./build/main.js
\n
Building binary packages
\n
In order to build binary packages, simply type the following:
\n
npm run dist
\n
This will build packaged binaries of React Explorer into the dist folder for every supported platform.
\n
React-Explorer can also be built for a single patform. For example, to build only the Windows binaries, type:
\n
npm run dist-win
\n
Localization
\n
React-Explorer is fully localized using .json files. Right now, English and French are available.
\n
Adding a new language to React-Explorer is easy: simply duplicate one of the file found in src/locale/lang directory.
\n
The new file should have the name code.json where code is a valid language code, for example: ja.json to add support for Japanese.
\n
Tests
\n
Unit testing
\n
React-Explorer has both unit tests (using Jest) and end to end tests (using Cypress).
\n
To run unit tests simply type:
\n
npm test
\n
This will start Jest and run every spec files found in src. Every test file can be found next to the component it is testing.
\n
End to End testing
\n
End to end tests are using Cypress and are in the separate e2e directory. You must install & configure Cypress before running E2E tests. This needs to be done one once using the following commands:
\n
cd e2e && npm install &&cd ..
\n
The first time you run the tests, you also need to install cypress dependencies:
\n
npm install
\n
Since end to end tests need to run Electron-Explorer outside of Electron, a special build needs to be created that stubs some Electron APIs. To create this build, simply type:
\n
npm run build
\n
This will create a new Electron-Explorer in the build-e2e directory.
\n
You may also type npm run watch if you want to rebuild automatically the e2e build after a change has been detected inside the sources.
\n
For React-Explorer to run without Electron, a local webserver needs to be started before running the tests:
\n
npm run server
\n
Now, simply type: npm run cypress:run or npm run cypress:open.
\n
How to develop a new Plugin
\n
React-Explorer has been written so that it can easily be extended using plugins.
\n
As a starting point you may use the FsGeneric skeleton.
\n
Acknowledgments
\n
React-Explorer makes use of the following tools/components:
Plugin-based: local supported for now, ftp in the works
\n
WSL detection on Windows
\n
\n
Feature tour
\n
Dark theme automatic detection (macOS Mojave)
\n
React-Explorer will automatically switch to dark-theme when it's detected:
\n
\n
Create and read folder
\n
By pressing ctrl (Linux/Win) or cmd the folder you create will be automatically read:
\n
\n
Create nested folders
\n
You can create several folders at once by separating them with a forward-slash:
\n
\n
Quick access to parent folders
\n
By right-clicking on a tab's icon you can quickly get access to the parents of the currend folder:
\n
\n
WSL support
\n
React-Explorer will automatically detect and show the list of Linux distributions installed using WSL on Windows:
\n
\n
Requirements
\n
React-Explorer works on any modern Windows, Mac or Linux computer.
\n
Building for local development
\n
In order to build React-Explorer you need to have installed nodejs.
\n
Once installed, building React-Explorer is as easy as typing:
\n
npm install && npm run build
\n
This will build a development package.
\n
In order to run in locally without having to create a native executable, you can then type:
\n
npx electron ./build/main.js
\n
Building binary packages
\n
In order to build binary packages, simply type the following:
\n
npm run dist
\n
This will build packaged binaries of React Explorer into the dist folder for every supported platform.
\n
React-Explorer can also be built for a single patform. For example, to build only the Windows binaries, type:
\n
npm run dist-win
\n
Localization
\n
React-Explorer is fully localized using .json files. Right now, English and French are available.
\n
Adding a new language to React-Explorer is easy: simply duplicate one of the file found in src/locale/lang directory.
\n
The new file should have the name code.json where code is a valid language code, for example: ja.json to add support for Japanese.
\n
Tests
\n
Unit testing
\n
React-Explorer has both unit tests (using Jest) and end to end tests (using Cypress).
\n
To run unit tests simply type:
\n
npm test
\n
This will start Jest and run every spec files found in src. Every test file can be found next to the component it is testing.
\n
End to End testing
\n
End to end tests are using Cypress and are in the separate e2e directory. You must install & configure Cypress before running E2E tests. This needs to be done one once using the following commands:
\n
cd e2e && npm install &&cd ..
\n
The first time you run the tests, you also need to install cypress dependencies:
\n
npm install
\n
Since end to end tests need to run Electron-Explorer outside of Electron, a special build needs to be created that stubs some Electron APIs. To create this build, simply type:
\n
npm run build
\n
This will create a new Electron-Explorer in the build-e2e directory.
\n
You may also type npm run watch if you want to rebuild automatically the e2e build after a change has been detected inside the sources.
\n
For React-Explorer to run without Electron, a local webserver needs to be started before running the tests:
\n
npm run server
\n
Now, simply type: npm run cypress:run or npm run cypress:open.
\n
How to develop a new Plugin
\n
React-Explorer has been written so that it can easily be extended using plugins.
\n
As a starting point you may use the FsGeneric skeleton.
\n
Acknowledgments
\n
React-Explorer makes use of the following tools/components:
The Community Edition of Rambox is no longer maintained. We highly recommend that you update to the new version of Rambox, which has a FREE plan with all the features you already use and much more!
Visit our website https://rambox.app/#apps and select the \"Community-Edition\" filter to see all the apps available.
\n
Features
\n
\n
Multi-language.
\n
Sync your configuration between multiple computers.
\n
Master Password.
\n
Lock Rambox if you will be away for a period of time.
\n
Don't disturb mode.
\n
Reorder applications in the tab bar.
\n
Notification badge in the tab.
\n
Minimize to tray.
\n
Mute audio to specific service.
\n
Separate tabs floating to the right.
\n
Disable a service instead of remove it.
\n
Start automatically on system startup.
\n
Custom Code Injection.
\n
Keyboard Shortcuts.
\n
Proxy.
\n
Switch from horizontal to vertical tab bar.
\n
\n
Privacy
\n
No personal information will be saved
\n
Sessions will persist using the partition:persist attribute for Webviews.\nSo every time you open Rambox, your sessions will keep alive until you remove the service.
\n
Sync feature use Auth0 for Single Sign On & Token Based Authentication and to store the services that user is using (and the configuration for each service).\nYou are always welcome to check the code! ;)
The Community Edition of Rambox is no longer maintained. We highly recommend that you update to the new version of Rambox, which has a FREE plan with all the features you already use and much more!
Visit our website https://rambox.app/#apps and select the \"Community-Edition\" filter to see all the apps available.
\n
Features
\n
\n
Multi-language.
\n
Sync your configuration between multiple computers.
\n
Master Password.
\n
Lock Rambox if you will be away for a period of time.
\n
Don't disturb mode.
\n
Reorder applications in the tab bar.
\n
Notification badge in the tab.
\n
Minimize to tray.
\n
Mute audio to specific service.
\n
Separate tabs floating to the right.
\n
Disable a service instead of remove it.
\n
Start automatically on system startup.
\n
Custom Code Injection.
\n
Keyboard Shortcuts.
\n
Proxy.
\n
Switch from horizontal to vertical tab bar.
\n
\n
Privacy
\n
No personal information will be saved
\n
Sessions will persist using the partition:persist attribute for Webviews.\nSo every time you open Rambox, your sessions will keep alive until you remove the service.
\n
Sync feature use Auth0 for Single Sign On & Token Based Authentication and to store the services that user is using (and the configuration for each service).\nYou are always welcome to check the code! ;)
Rebaslight Terms, Conditions, and License Agreement
\n
Rebaslight is a product of Very Small Helm LLC, Copyright (c) 2008-2022.
\n
Rebaslight's codebase is open source and adopts the GNU AGPLv3 license.
\n
Open source does not always mean free as in gratis.\nRebaslight is free (no cost) to use as long as the \"Made with Rebaslight\" watermark appears on the output video/image.\nHowever, if you make a one-time payment of $25 USD you may remove this watermark.\nOnce paid, you personally may use Rebaslight without watermarks forever.
Rebaslight Terms, Conditions, and License Agreement
\n
Rebaslight is a product of Very Small Helm LLC, Copyright (c) 2008-2022.
\n
Rebaslight's codebase is open source and adopts the GNU AGPLv3 license.
\n
Open source does not always mean free as in gratis.\nRebaslight is free (no cost) to use as long as the \"Made with Rebaslight\" watermark appears on the output video/image.\nHowever, if you make a one-time payment of $25 USD you may remove this watermark.\nOnce paid, you personally may use Rebaslight without watermarks forever.
Feel free to clone it and make any changes you'd like, but I am no longer working on this project, and I'm sure several things don't work. I made this as my first realy project with AngularJS so the code is absolutely atrocious! Continue at your own risk.
\n
Reach Podcast Player
\n
\n
\n
Small Demo
\n
\n
Reach Podcast Player is a RSS-based podcast player, meaning that in order to listen to your favorite podcasts, all you have to do is copy and paste the RSS feed from the podcast.
\n
Who Is This For?
\n
This application is for all podcast listeners. Itunes, Spotify, and whereever you get your podcasts, have a ton of available podcast but every once in a while you will hear about a new podcast and search for it on your favorite podcast provider and they won't have it! with Reach, all you need is the RSS feed and you're good to go. No need to listen to podcasts accross different programs.
\n
What's Under The Hood?
\n
This was made with electron and angularjs. This is my first time using both of these items so some parts of the program are not perfectly optomized, but I plan on continuing to work on both the program itself, and my angular and electron skills in order to fuilly optimize the program.
\n
TODO:
\n
\n
Make listening queue
\n
Scale better\n
\n
With generic window sizes the program looks fine, but at smaller than average sizes, things get bad
\n
\n
\n
Redo podcast-view UI\n
\n
When a user clicks a podcast, the current UI is for the old theme, and needs to be updated
\n
\n
\n
Have the podcasts actually get the latest episodes when the user opens up the app
\n
Make a wiki page, or release distributions\n
\n
If I can figure out how, I'd like to be able to give the users notifications when a new update is available
\n
\n
\n
The Play/Pause button is very dodgy at the moment in terms of click detection, so I gotta fix that
\n
Put that data structure and algorithm class to good use
\n
Add comments everywhere
\n
\n
",
"readmeOriginal": "
This Project Has Been Abandoned
\n
Feel free to clone it and make any changes you'd like, but I am no longer working on this project, and I'm sure several things don't work. I made this as my first realy project with AngularJS so the code is absolutely atrocious! Continue at your own risk.
\n
Reach Podcast Player
\n
\n
\n
Small Demo
\n
\n
Reach Podcast Player is a RSS-based podcast player, meaning that in order to listen to your favorite podcasts, all you have to do is copy and paste the RSS feed from the podcast.
\n
Who Is This For?
\n
This application is for all podcast listeners. Itunes, Spotify, and whereever you get your podcasts, have a ton of available podcast but every once in a while you will hear about a new podcast and search for it on your favorite podcast provider and they won't have it! with Reach, all you need is the RSS feed and you're good to go. No need to listen to podcasts accross different programs.
\n
What's Under The Hood?
\n
This was made with electron and angularjs. This is my first time using both of these items so some parts of the program are not perfectly optomized, but I plan on continuing to work on both the program itself, and my angular and electron skills in order to fuilly optimize the program.
\n
TODO:
\n
\n
Make listening queue
\n
Scale better\n
\n
With generic window sizes the program looks fine, but at smaller than average sizes, things get bad
\n
\n
\n
Redo podcast-view UI\n
\n
When a user clicks a podcast, the current UI is for the old theme, and needs to be updated
\n
\n
\n
Have the podcasts actually get the latest episodes when the user opens up the app
\n
Make a wiki page, or release distributions\n
\n
If I can figure out how, I'd like to be able to give the users notifications when a new update is available
\n
\n
\n
The Play/Pause button is very dodgy at the moment in terms of click detection, so I gotta fix that
\n
Put that data structure and algorithm class to good use
Responsivize is an open-source, cross-platform, desktop app that is used to develop responsive websites!
\n
\n
How does it work?
\n
With Responsivize, you can test your web apps on popular devices like iPhones, Android phones, iPads, MacBooks, and you can even set custom dimension devices, that you set the dimensions for! \nThis gives you the ability to test your apps on everything from widescreen monitors to smart fridge screens!
\n
\n
This is what the Home Page looks like
\n
\n
\n
\n
Responsivize Home Page 👆
\n
\n
\n
\n
Responsivize Mobile View 👆
\n
\n
\n
\n
Responsivize Tablet View 👆
\n
\n
\n
\n
Responsivize Tablet View 👆
\n
\n
\n
\n
Responsivize Laptop View 👆
\n
\n
\n
Apart from the devices available, you can also enter the dimensions (or simply the drag webview) for any other device you want to test on in the Custom Size View!
Responsivize is an open-source, cross-platform, desktop app that is used to develop responsive websites!
\n
\n
How does it work?
\n
With Responsivize, you can test your web apps on popular devices like iPhones, Android phones, iPads, MacBooks, and you can even set custom dimension devices, that you set the dimensions for! \nThis gives you the ability to test your apps on everything from widescreen monitors to smart fridge screens!
\n
\n
This is what the Home Page looks like
\n
\n
\n
\n
Responsivize Home Page 👆
\n
\n
\n
\n
Responsivize Mobile View 👆
\n
\n
\n
\n
Responsivize Tablet View 👆
\n
\n
\n
\n
Responsivize Tablet View 👆
\n
\n
\n
\n
Responsivize Laptop View 👆
\n
\n
\n
Apart from the devices available, you can also enter the dimensions (or simply the drag webview) for any other device you want to test on in the Custom Size View!
Run npm i and npm i -g electron if you haven't already installed electron globally.
\n
If you are on windows I recommend using command prompt, as that can launch electron apps fine, while Windows Linux Subsystem has troubles launching electron apps.
\n
If you are on a mac using the mac terminal, download brew and ffmpeg-mac/ by following the instructions below.
\n
Download and setup ffmpeg-mac/ folder (instructions below).
\n
Run electron . to start the program.
\n
\n
How to install ffmpeg locally for mac (ffmpeg-mac/)
\n
\n
If you are on mac; run sh buildffmpeg.sh to create the ffmpeg-mac/ folder and statically build a version of ffmpeg that can be sandboxed and distributed to the mac apple store (mas).
\n
Verify your local ffmpeg-mac/ folder has no dynamic libraries by running this command:\notool -L ffmpeg-mac/ffmpeg | grep /usr/local
\n
If any files show up after running this command, delete or move those files, redownload the ffmpeg-mac/ folder, then run the 'otool' command again to verify there are no dynamic libraries in your local ffmpeg-mac/ folder.
\n
\n
Releasing a new version:
\n
\n
Change version number in package.json (this is the bare minimum to change).
\n
Make sure you have local vars set for GH_TOKEN, APPLEID, and APPLEIDPASS.
\n
Mac:\n
\n
Download and setup ffmpeg-mac/ folder.
\n
Mac Apple Store: Change package.json mac build targets to only contain \"mas\", verify the paths in signmasscript.sh are correct, then build & sign by running the command npm run build-mas. Upload the outputted RenderTune.pkg file to App Store Connect using Transporter, then create a new Mac Apple Store submission for review.
\n
Mac .dmg Installer (auto-updates): Change package.json build targets to contain \"dmg\", \"zip\", remove the RenderTune.pkg file we crated for MAS in the above step if it exists since we don't want to package that inside our build. Build & publish by running the command npm run build-mac-publish.
Windows Installer (auto-updates), Windows Portable, and Windows Store .appx: On Windows, make sure env vars are set by running echo %GH_TOKEN% in command prompt terminal, build nsis-web/portable/appx targets with the command npm run build-win-publish. To sign the Windows Store Build, make sure you are on a computer with the powershell electron-windows-store requirements, and then run the following powershell command to generate a signed .appx file that you can upload to the Microsoft Store review system:
Login to snap store from terminal: $ snapcraft login. Build & publish linux builds for snap and AppImage: $ npm run build-linux-publish. This will output a .snap file in the dist/ folder that you can upload using the command: $ snapcraft upload --release=stable dist/rendertune_0.3.23_amd64.snap (make sure your .snap filename is correct).
\n
\n
\n
Once all of the following steps have been followed, there should be a new RenderTune version drafted on GitHub with files uploaded for Mac, Windows, and Linux.
\n
\n
Roadmap:
\n
This list is of future updates / improvements I plan to make for RenderTune (If you can think of any features you would like, contact me and I will include them in the roadmap)
\n
\n
UI Improvements: Better render status options, more efficent code.
\n
Add API to electron app so you can trigger renders using POST route.
\n
New Feature: Append/Prepend video file to video we are rendering (Add MP4 intro/outro, add MP3 intro/outro)
\n
New Feautre: Record, split, export and tag audio files.
\n
New Feature: Upload files to YouTube / tag
\n
\n
",
"readmeOriginal": "
RenderTune
\n \nRenderTune is a free open-source program for mac/win/linux to combine audio + image file(s) into video files that can be uploaded to YouTube.\n
\n
Tutorial Video (Click To Watch):
\n
\n
Download
\n
RenderTune is available for free on the Mac Apple Store, Windows Store, and Linux Snap Store. Click any of the below badges to view the store page.
\n
\n\n
\n
If you want to download RenderTune without using the above stores, you can download RenderTune from the most recent Github Release.
Run npm i and npm i -g electron if you haven't already installed electron globally.
\n
If you are on windows I recommend using command prompt, as that can launch electron apps fine, while Windows Linux Subsystem has troubles launching electron apps.
\n
If you are on a mac using the mac terminal, download brew and ffmpeg-mac/ by following the instructions below.
\n
Download and setup ffmpeg-mac/ folder (instructions below).
\n
Run electron . to start the program.
\n
\n
How to install ffmpeg locally for mac (ffmpeg-mac/)
\n
\n
If you are on mac; run sh buildffmpeg.sh to create the ffmpeg-mac/ folder and statically build a version of ffmpeg that can be sandboxed and distributed to the mac apple store (mas).
\n
Verify your local ffmpeg-mac/ folder has no dynamic libraries by running this command:\notool -L ffmpeg-mac/ffmpeg | grep /usr/local
\n
If any files show up after running this command, delete or move those files, redownload the ffmpeg-mac/ folder, then run the 'otool' command again to verify there are no dynamic libraries in your local ffmpeg-mac/ folder.
\n
\n
Releasing a new version:
\n
\n
Change version number in package.json (this is the bare minimum to change).
\n
Make sure you have local vars set for GH_TOKEN, APPLEID, and APPLEIDPASS.
\n
Mac:\n
\n
Download and setup ffmpeg-mac/ folder.
\n
Mac Apple Store: Change package.json mac build targets to only contain \"mas\", verify the paths in signmasscript.sh are correct, then build & sign by running the command npm run build-mas. Upload the outputted RenderTune.pkg file to App Store Connect using Transporter, then create a new Mac Apple Store submission for review.
\n
Mac .dmg Installer (auto-updates): Change package.json build targets to contain \"dmg\", \"zip\", remove the RenderTune.pkg file we crated for MAS in the above step if it exists since we don't want to package that inside our build. Build & publish by running the command npm run build-mac-publish.
Windows Installer (auto-updates), Windows Portable, and Windows Store .appx: On Windows, make sure env vars are set by running echo %GH_TOKEN% in command prompt terminal, build nsis-web/portable/appx targets with the command npm run build-win-publish. To sign the Windows Store Build, make sure you are on a computer with the powershell electron-windows-store requirements, and then run the following powershell command to generate a signed .appx file that you can upload to the Microsoft Store review system:
Login to snap store from terminal: $ snapcraft login. Build & publish linux builds for snap and AppImage: $ npm run build-linux-publish. This will output a .snap file in the dist/ folder that you can upload using the command: $ snapcraft upload --release=stable dist/rendertune_0.3.23_amd64.snap (make sure your .snap filename is correct).
\n
\n
\n
Once all of the following steps have been followed, there should be a new RenderTune version drafted on GitHub with files uploaded for Mac, Windows, and Linux.
\n
\n
Roadmap:
\n
This list is of future updates / improvements I plan to make for RenderTune (If you can think of any features you would like, contact me and I will include them in the roadmap)
\n
\n
UI Improvements: Better render status options, more efficent code.
\n
Add API to electron app so you can trigger renders using POST route.
\n
New Feature: Append/Prepend video file to video we are rendering (Add MP4 intro/outro, add MP3 intro/outro)
\n
New Feautre: Record, split, export and tag audio files.
Element Desktop is a Matrix client for desktop platforms with Element Web at its core.
\n
First Steps
\n
Before you do anything else, fetch the dependencies:
\n
yarn install\n
\n
Fetching Element
\n
Since this package is just the Electron wrapper for Element Web, it doesn't contain any of the Element Web code,\nso the first step is to get a working copy of Element Web. There are a few ways of doing this:
\n
# Fetch the prebuilt release Element package from the element-web GitHub releases page. The version\n# fetched will be the same as the local element-desktop package.\n# We're explicitly asking for no config, so the packaged Element will have no config.json.\nyarn run fetch --noverify --cfgdir \"\"\n
\n
...or if you'd like to use GPG to verify the downloaded package:
\n
# Fetch the Element public key from the element.io web server over a secure connection and import\n# it into your local GPG keychain (you'll need GPG installed). You only need to to do this\n# once.\nyarn run fetch --importkey\n# Fetch the package and verify the signature\nyarn run fetch --cfgdir \"\"\n
\n
...or either of the above, but fetching a specific version of Element:
\n
# Fetch the prebuilt release Element package from the element-web GitHub releases page. The version\n# fetched will be the same as the local element-desktop package.\nyarn run fetch --noverify --cfgdir \"\" v1.5.6\n
\n
If you only want to run the app locally and don't need to build packages, you can\nprovide the webapp directory directly:
\n
# Assuming you've checked out and built a copy of element-web in ../element-web\nln -s ../element-web/webapp ./\n
\n
[TODO: add support for fetching develop builds, arbitrary URLs and arbitrary paths]
\n
Building
\n
Native Build
\n
TODO: List native pre-requisites
\n
Optionally, build the native modules,\nwhich include support for searching in encrypted rooms and secure storage. Skipping this step is fine, you just won't have those features.
\n
Then, run
\n
yarn run build\n
\n
This will do a couple of things:
\n
\n
Run the setversion script to set the local package version to match whatever\nversion of Element you installed above.
\n
Run electron-builder to build a package. The package built will match the operating system\nyou're running the build process on.
\n
\n
Docker
\n
Alternatively, you can also build using docker, which will always produce the linux package:
\n
# Run this once to make the docker image\nyarn run docker:setup\n\nyarn run docker:install\n# if you want to build the native modules (this will take a while)\nyarn run docker:build:native\nyarn run docker:build\n
\n
After running, the packages should be in dist/.
\n
Starting
\n
If you'd just like to run the electron app locally for development:
\n
# Install electron - we don't normally need electron itself as it's provided\n# by electron-builder when building packages\nyarn add electron\nyarn start\n
\n
Config
\n
If you'd like the packaged Element to have a configuration file, you can create a\nconfig directory and place config.json in there, then specify this directory\nwith the --cfgdir option to yarn run fetch, eg:
\n
mkdir myconfig\ncp /path/to/my/config.json myconfig/\nyarn run fetch --cfgdir myconfig\n
\n
The config dir for the official Element app is in element.io. If you use this,\nyour app will auto-update itself using builds from element.io.
\n
Profiles
\n
To run multiple instances of the desktop app for different accounts, you can\nlaunch the executable with the --profile argument followed by a unique\nidentifier, e.g element-desktop --profile Work for it to run a separate profile and\nnot interfere with the default one.
\n
Alternatively, a custom location for the profile data can be specified using the\n--profile-dir flag followed by the desired path.
\n
User-specified config.json
\n
\n
%APPDATA%\\$NAME\\config.json on Windows
\n
$XDG_CONFIG_HOME\\$NAME\\config.json or ~/.config/$NAME/config.json on Linux
\n
~/Library/Application Support/$NAME/config.json on macOS
\n
\n
In the paths above, $NAME is typically Element, unless you use --profile $PROFILE in which case it becomes Element-$PROFILE, or it is using one of\nthe above created by a pre-1.7 install, in which case it will be Riot or\nRiot-$PROFILE.
If you run into any bugs or have feedback you'd like to share, please let us know on GitHub.
\n
To help avoid duplicate issues, please view existing issues first (and add a +1) or create a new issue if you can't find it. Please note that this issue tracker is associated with the element-web repo, but is also applied to the code in this repo as well.
\n
",
"readmeOriginal": "
\n\n\n\n\n
\n
Element Desktop
\n
Element Desktop is a Matrix client for desktop platforms with Element Web at its core.
\n
First Steps
\n
Before you do anything else, fetch the dependencies:
\n
yarn install\n
\n
Fetching Element
\n
Since this package is just the Electron wrapper for Element Web, it doesn't contain any of the Element Web code,\nso the first step is to get a working copy of Element Web. There are a few ways of doing this:
\n
# Fetch the prebuilt release Element package from the element-web GitHub releases page. The version\n# fetched will be the same as the local element-desktop package.\n# We're explicitly asking for no config, so the packaged Element will have no config.json.\nyarn run fetch --noverify --cfgdir \"\"\n
\n
...or if you'd like to use GPG to verify the downloaded package:
\n
# Fetch the Element public key from the element.io web server over a secure connection and import\n# it into your local GPG keychain (you'll need GPG installed). You only need to to do this\n# once.\nyarn run fetch --importkey\n# Fetch the package and verify the signature\nyarn run fetch --cfgdir \"\"\n
\n
...or either of the above, but fetching a specific version of Element:
\n
# Fetch the prebuilt release Element package from the element-web GitHub releases page. The version\n# fetched will be the same as the local element-desktop package.\nyarn run fetch --noverify --cfgdir \"\" v1.5.6\n
\n
If you only want to run the app locally and don't need to build packages, you can\nprovide the webapp directory directly:
\n
# Assuming you've checked out and built a copy of element-web in ../element-web\nln -s ../element-web/webapp ./\n
\n
[TODO: add support for fetching develop builds, arbitrary URLs and arbitrary paths]
\n
Building
\n
Native Build
\n
TODO: List native pre-requisites
\n
Optionally, build the native modules,\nwhich include support for searching in encrypted rooms and secure storage. Skipping this step is fine, you just won't have those features.
\n
Then, run
\n
yarn run build\n
\n
This will do a couple of things:
\n
\n
Run the setversion script to set the local package version to match whatever\nversion of Element you installed above.
\n
Run electron-builder to build a package. The package built will match the operating system\nyou're running the build process on.
\n
\n
Docker
\n
Alternatively, you can also build using docker, which will always produce the linux package:
\n
# Run this once to make the docker image\nyarn run docker:setup\n\nyarn run docker:install\n# if you want to build the native modules (this will take a while)\nyarn run docker:build:native\nyarn run docker:build\n
\n
After running, the packages should be in dist/.
\n
Starting
\n
If you'd just like to run the electron app locally for development:
\n
# Install electron - we don't normally need electron itself as it's provided\n# by electron-builder when building packages\nyarn add electron\nyarn start\n
\n
Config
\n
If you'd like the packaged Element to have a configuration file, you can create a\nconfig directory and place config.json in there, then specify this directory\nwith the --cfgdir option to yarn run fetch, eg:
\n
mkdir myconfig\ncp /path/to/my/config.json myconfig/\nyarn run fetch --cfgdir myconfig\n
\n
The config dir for the official Element app is in element.io. If you use this,\nyour app will auto-update itself using builds from element.io.
\n
Profiles
\n
To run multiple instances of the desktop app for different accounts, you can\nlaunch the executable with the --profile argument followed by a unique\nidentifier, e.g element-desktop --profile Work for it to run a separate profile and\nnot interfere with the default one.
\n
Alternatively, a custom location for the profile data can be specified using the\n--profile-dir flag followed by the desired path.
\n
User-specified config.json
\n
\n
%APPDATA%\\$NAME\\config.json on Windows
\n
$XDG_CONFIG_HOME\\$NAME\\config.json or ~/.config/$NAME/config.json on Linux
\n
~/Library/Application Support/$NAME/config.json on macOS
\n
\n
In the paths above, $NAME is typically Element, unless you use --profile $PROFILE in which case it becomes Element-$PROFILE, or it is using one of\nthe above created by a pre-1.7 install, in which case it will be Riot or\nRiot-$PROFILE.
If you run into any bugs or have feedback you'd like to share, please let us know on GitHub.
\n
To help avoid duplicate issues, please view existing issues first (and add a +1) or create a new issue if you can't find it. Please note that this issue tracker is associated with the element-web repo, but is also applied to the code in this repo as well.
Runlet is a cloud-based job manager that offers device synchronization and reliable message delivery in a network of connected devices even after connectivity issues. This repository is where new releases are published, bugs are reported, and features are requested.
\n
Download
\n
All available distributions and versions can be found at releases.
\n
Contributing
\n
There are a couple of ways in which you can contribute to the app, for example:
Runlet is a cloud-based job manager that offers device synchronization and reliable message delivery in a network of connected devices even after connectivity issues. This repository is where new releases are published, bugs are reported, and features are requested.
\n
Download
\n
All available distributions and versions can be found at releases.
\n
Contributing
\n
There are a couple of ways in which you can contribute to the app, for example:
A desktop client for JioSaavn, based on the official JioSaavn web app. Built with Electron.
\n
\n
This is NOT an official product. This project does not attempt to reverse engineer the JioSaavn API or attempt to reimplement any part of the JioSaavn client. Any communication between the user and JioSaavn servers is handled by official JioSaavn Web itself; this is just a native wrapper for JioSaavn Web, like a browser.
\n
Features
\n
\n
\n
Cross platform. (OSX, Windows, Linux)
\n
\n
\n
Native notifications.
\n
\n
\n
Media Shortcuts/ Keybindings for music player
\n
\n
leftArrow for Next song
\n
rightArrow for Previous song
\n
Space for pause/play
\n
\n
\n
\n
A couple of things can be configured:
\n
\n
Proxy settings connect to JioSaavn web
\n
\n
Not working:
\n
\n
Login
\n
\n
\n
\n
Planned features:
\n
\n
Auto-launch on OS startup.
\n
\n
Installation
\n
Download and run the Saavn file from the latest release.
\n
Note: Windows and Linux versions are test release.
\n
How to use in Linux
\n
In order to execute the program in Linux, first you should give it permission to the App:
\n
sudo chmod u+x Saadhn \n./Saadhn
\n
Contributions
\n
Contributions are welcome! For feature requests and bug reports please submit an issue.
\n
Build
\n
To build from the source, run the following commands:
\n
npm install \nnpm run build
\n
## Building Windows build from non-Windows platforms
\n
Wine needs to be installed. On OS X, it is installable via Homebrew: \nbrew install wine
A desktop client for JioSaavn, based on the official JioSaavn web app. Built with Electron.
\n
\n
This is NOT an official product. This project does not attempt to reverse engineer the JioSaavn API or attempt to reimplement any part of the JioSaavn client. Any communication between the user and JioSaavn servers is handled by official JioSaavn Web itself; this is just a native wrapper for JioSaavn Web, like a browser.
\n
Features
\n
\n
\n
Cross platform. (OSX, Windows, Linux)
\n
\n
\n
Native notifications.
\n
\n
\n
Media Shortcuts/ Keybindings for music player
\n
\n
leftArrow for Next song
\n
rightArrow for Previous song
\n
Space for pause/play
\n
\n
\n
\n
A couple of things can be configured:
\n
\n
Proxy settings connect to JioSaavn web
\n
\n
Not working:
\n
\n
Login
\n
\n
\n
\n
Planned features:
\n
\n
Auto-launch on OS startup.
\n
\n
Installation
\n
Download and run the Saavn file from the latest release.
\n
Note: Windows and Linux versions are test release.
\n
How to use in Linux
\n
In order to execute the program in Linux, first you should give it permission to the App:
\n
sudo chmod u+x Saadhn \n./Saadhn
\n
Contributions
\n
Contributions are welcome! For feature requests and bug reports please submit an issue.
\n
Build
\n
To build from the source, run the following commands:
\n
npm install \nnpm run build
\n
## Building Windows build from non-Windows platforms
\n
Wine needs to be installed. On OS X, it is installable via Homebrew: \nbrew install wine
Invoices are renamed by date and timestamp. E.g. Jan-30-2018-9am.PDF
\n
Option to filter invoices by a specific month(s) or year(s)
\n
Supported on Windows & Mac
\n
Lyft Integration
\n
Expenditure stat of your trip depending on your filter you choose
\n
Categorizes Uber and Uber Eats receipts
\n
Outlook integration for Lyft
\n
\n
Why
\n
Ride Receipts is essential for anyone who relies on Uber/Lyft for business travel. Whether you’re self-employed or get reimbursed by your employer for travel, you’ll likely need proper tax invoices for accounting purposes.
\n
This was a major pain point for us every year around tax season. Since the current Uber website does not allow you to download all of your receipts for the year at once, you have to manually download, rename, and organize each of your invoices. So you’re either doing it one by one, or if you have a business profile, you still have to download them one month at a time. Uber’s monthly business travel report is great for keeping track of your trips, but these aren’t actual receipts.
\n
We created Ride Receipts to address this painfully inefficient process, and now we’re sharing it with everyone who could benefit from this time-saving tool.
\n
Solution
\n
Automation! Ride Receipts is an open-source desktop app that automates the process of downloading, renaming, and organizing your Uber/Lyft receipts. Rather than logging into your Uber account to scan through each of your trips and manually download each receipt, Ride Receipts will automatically do it for you.
\n
Your invoices will be named according to the date and time of your trip, and organized by user account, year and month, in neat and tidy folders on your computer.
\n
Requirements
\n
For Uber and Lyft we utilize Gmail API to scan your email only for receipts.\nMake sure your system has latest Chrome Browser installed (v69 or above).
\n
Ride Receipts works on both Mac and PC.
\n
Security
\n
Ride Receipts does not store your login credentials, personal information or any other data. This application operates without a database. It only scans email for receipts with read-only access.
\n
Developer Notes
\n
Build Setup
\n
# install dependencies\nnpm install\n\n# Navigate to renderer directory and copy config example to config.js and set Google Client Id and Outlook Id\ncp config.example.js config.js\n\n# serve with hot reload at localhost:9080\nnpm run dev\n\n# build electron application for production\nnpm run build\n\n# build electron application for cross platform\nnpm run build -mwl (i.e m - macos , w - windows & l - Linux)\n\n\n# lint all JS/Vue component files in `src/`\nnpm run lint\n
Please feel free to give us suggestions or report a bug by creating a new issue via Github or messaging on Twitter: @ridereceipts. You can also email us at hello@ridereceipts.io.
\n
License
\n
License by default is LGPLv3. After purchase please refer COMM-LICENSE is applied
Invoices are renamed by date and timestamp. E.g. Jan-30-2018-9am.PDF
\n
Option to filter invoices by a specific month(s) or year(s)
\n
Supported on Windows & Mac
\n
Lyft Integration
\n
Expenditure stat of your trip depending on your filter you choose
\n
Categorizes Uber and Uber Eats receipts
\n
Outlook integration for Lyft
\n
\n
Why
\n
Ride Receipts is essential for anyone who relies on Uber/Lyft for business travel. Whether you’re self-employed or get reimbursed by your employer for travel, you’ll likely need proper tax invoices for accounting purposes.
\n
This was a major pain point for us every year around tax season. Since the current Uber website does not allow you to download all of your receipts for the year at once, you have to manually download, rename, and organize each of your invoices. So you’re either doing it one by one, or if you have a business profile, you still have to download them one month at a time. Uber’s monthly business travel report is great for keeping track of your trips, but these aren’t actual receipts.
\n
We created Ride Receipts to address this painfully inefficient process, and now we’re sharing it with everyone who could benefit from this time-saving tool.
\n
Solution
\n
Automation! Ride Receipts is an open-source desktop app that automates the process of downloading, renaming, and organizing your Uber/Lyft receipts. Rather than logging into your Uber account to scan through each of your trips and manually download each receipt, Ride Receipts will automatically do it for you.
\n
Your invoices will be named according to the date and time of your trip, and organized by user account, year and month, in neat and tidy folders on your computer.
\n
Requirements
\n
For Uber and Lyft we utilize Gmail API to scan your email only for receipts.\nMake sure your system has latest Chrome Browser installed (v69 or above).
\n
Ride Receipts works on both Mac and PC.
\n
Security
\n
Ride Receipts does not store your login credentials, personal information or any other data. This application operates without a database. It only scans email for receipts with read-only access.
\n
Developer Notes
\n
Build Setup
\n
# install dependencies\nnpm install\n\n# Navigate to renderer directory and copy config example to config.js and set Google Client Id and Outlook Id\ncp config.example.js config.js\n\n# serve with hot reload at localhost:9080\nnpm run dev\n\n# build electron application for production\nnpm run build\n\n# build electron application for cross platform\nnpm run build -mwl (i.e m - macos , w - windows & l - Linux)\n\n\n# lint all JS/Vue component files in `src/`\nnpm run lint\n
Please feel free to give us suggestions or report a bug by creating a new issue via Github or messaging on Twitter: @ridereceipts. You can also email us at hello@ridereceipts.io.
\n
License
\n
License by default is LGPLv3. After purchase please refer COMM-LICENSE is applied
We wanted to make a really simple, but useful application to manage your lessons/activities, so we made it.
\n
🆕 New features
\n
\n
New, responsive UI
\n
Export / import timetables
\n
You can set images as background and even add multiple images for slideshow
\n
\n
📝Current features
\n
\n
Add, edit, delete lessons/activities. You can set a unique color for each lessosn/activity, you can use your own colors, but for the best experience we recommend to use flatuicolors.com
\n
You can even add multiple weeks, so you can change the week that you want to see
\n
You can set the background for static colors and multiple images with changeable transition time\n
We wanted to make a really simple, but useful application to manage your lessons/activities, so we made it.
\n
🆕 New features
\n
\n
New, responsive UI
\n
Export / import timetables
\n
You can set images as background and even add multiple images for slideshow
\n
\n
📝Current features
\n
\n
Add, edit, delete lessons/activities. You can set a unique color for each lessosn/activity, you can use your own colors, but for the best experience we recommend to use flatuicolors.com
\n
You can even add multiple weeks, so you can change the week that you want to see
\n
You can set the background for static colors and multiple images with changeable transition time\n
ScreenCat is an open source screen sharing + remote collaboration application. You can share your desktop with someone else while letting them share your mouse and keyboard remotely. Right now it is not as good as commercial alternatives, mostly because this is a hobby project and not a for-profit project. The big difference is that you can send PRs to make ScreenCat better!
\n
\n
ScreenCat is named after cats, but also for the idea of 'catting' a screen (as in unix cat). It has two C/C++ dependencies, Electron (which includes node.js) and robotjs for creating mouse + keyboard events.
\n
ScreenCat is currently ALPHA STATUS and is intended for developers/early adopters. Check out the Issues to get involved. ScreenCat is a volunteer run project, your contributions and improvements are welcome!
\n
To download the latest build visit the releases page. Builds for your OS may not be available and you may have to build it yourself, sorry.
\n
\n
\n
\n
How it works
\n
The app itself is written in JS, HTML and CSS. The CSS is from tachyons. The app is wrapped up in an electron application using the menubar module.
\n
One really cool feature of ScreenCat is the ability to screenshare with a normal browser. Using our remote control page you can send your invite code to a web user and they can remote control your computer. Currently Google Chrome is recommended. You can also screenshare between 2 ScreenCat.app users.
\n
\n
The screensharing takes advantage of an experimental feature built in to Chromium's WebRTC implementation called chromeMediaSource: 'screen'. This lets you share the host computers entire desktop over a WebRTC video channel. On the remote end, you can render the data in a <video> element.
\n
To initiate the WebRTC connection both peers must swap sdp connection information payloads. After compression, you can get the payloads down to about 1K. This is technically small enough to copy/paste through e.g. SMS, but it's on the larger side. Also you have to do a full round trip, where user A sends their code to user B, and vice versa before a connection can be established.
\n
To simplify the connection process the app uses cat-lobby, a minimal lobby server using HTTP and Server-Sent Events. This simply lets users swap SDP payloads without having to copy/paste large text blocks back and forth.
\n
To hook up the mouse and keyboard, the remote end uses standard mousedown and keydown events and sends them over a WebRTC data channel to the host. On the host side the app must synthesize mouse and keyboard events on the host OS. This is the tricky part, and the only part where a custom native node addon (C++) is required. Luckily I found the robotjs project which while still being relatively new and rough around the edges still got the job done after some modifications.
\n
Currently the app works best between Macs, mostly because that is what the original author used. However, you can build it for Linux or Windows too.
\n
The motivation for making ScreenCat came from a lack of open source + easily hackable screen sharing tools. I collaborate with many remote open source developers and being able to customize the software we use to work together is important to me. ScreenCat will remain free and BSD licensed, and your contributions are welcome! Check out the issues, especially those marked as help wanted.
\n
Building the app
\n
For mac/linux:
\n
npm install # installs electron and all the deps\nnpm start # runs the app in the electron wrapper\nnpm run build # builds the mac app
\n
For windows:
\n
You will need Visual studio C++ installed so you can build the native modules. Here are instructions for cmd.exe:
the electron app UI and main code are app.html, app.js and screen.js
\n
the remote web viewer UI and core are remote.js and remote.html
\n
peer.js and connect.js are used by both the electron app and the web viewer
\n
\n
",
"readmeOriginal": "
ScreenCat
\n
\n
ScreenCat is an open source screen sharing + remote collaboration application. You can share your desktop with someone else while letting them share your mouse and keyboard remotely. Right now it is not as good as commercial alternatives, mostly because this is a hobby project and not a for-profit project. The big difference is that you can send PRs to make ScreenCat better!
\n
\n
ScreenCat is named after cats, but also for the idea of 'catting' a screen (as in unix cat). It has two C/C++ dependencies, Electron (which includes node.js) and robotjs for creating mouse + keyboard events.
\n
ScreenCat is currently ALPHA STATUS and is intended for developers/early adopters. Check out the Issues to get involved. ScreenCat is a volunteer run project, your contributions and improvements are welcome!
\n
To download the latest build visit the releases page. Builds for your OS may not be available and you may have to build it yourself, sorry.
\n
\n
\n
\n
How it works
\n
The app itself is written in JS, HTML and CSS. The CSS is from tachyons. The app is wrapped up in an electron application using the menubar module.
\n
One really cool feature of ScreenCat is the ability to screenshare with a normal browser. Using our remote control page you can send your invite code to a web user and they can remote control your computer. Currently Google Chrome is recommended. You can also screenshare between 2 ScreenCat.app users.
\n
\n
The screensharing takes advantage of an experimental feature built in to Chromium's WebRTC implementation called chromeMediaSource: 'screen'. This lets you share the host computers entire desktop over a WebRTC video channel. On the remote end, you can render the data in a <video> element.
\n
To initiate the WebRTC connection both peers must swap sdp connection information payloads. After compression, you can get the payloads down to about 1K. This is technically small enough to copy/paste through e.g. SMS, but it's on the larger side. Also you have to do a full round trip, where user A sends their code to user B, and vice versa before a connection can be established.
\n
To simplify the connection process the app uses cat-lobby, a minimal lobby server using HTTP and Server-Sent Events. This simply lets users swap SDP payloads without having to copy/paste large text blocks back and forth.
\n
To hook up the mouse and keyboard, the remote end uses standard mousedown and keydown events and sends them over a WebRTC data channel to the host. On the host side the app must synthesize mouse and keyboard events on the host OS. This is the tricky part, and the only part where a custom native node addon (C++) is required. Luckily I found the robotjs project which while still being relatively new and rough around the edges still got the job done after some modifications.
\n
Currently the app works best between Macs, mostly because that is what the original author used. However, you can build it for Linux or Windows too.
\n
The motivation for making ScreenCat came from a lack of open source + easily hackable screen sharing tools. I collaborate with many remote open source developers and being able to customize the software we use to work together is important to me. ScreenCat will remain free and BSD licensed, and your contributions are welcome! Check out the issues, especially those marked as help wanted.
\n
Building the app
\n
For mac/linux:
\n
npm install # installs electron and all the deps\nnpm start # runs the app in the electron wrapper\nnpm run build # builds the mac app
\n
For windows:
\n
You will need Visual studio C++ installed so you can build the native modules. Here are instructions for cmd.exe:
ScreenTray is a macOS application for capturing, annotating and sharing screenshots. Quickly add comments, highlight what matters or blur any sensitive content. Upload screenshots to Google Drive or Dropbox. Copy screenshots to the clipboard and paste them directly into Slack, WhatsApp, Facebook, Twitter, Gmail, Jira, Trello and lots of other apps.
ScreenTray is a macOS application for capturing, annotating and sharing screenshots. Quickly add comments, highlight what matters or blur any sensitive content. Upload screenshots to Google Drive or Dropbox. Copy screenshots to the clipboard and paste them directly into Slack, WhatsApp, Facebook, Twitter, Gmail, Jira, Trello and lots of other apps.
SEOBrowse allows you to conduct accurate international SERP audits in our unique custom-built browser interface. SEOBrowse provides you with a guaranteed clean search environment to research, analysis and report on all aspects of the search results.
\n
Key features include:
\n
\n
Search results for any city, state or country in the world.
\n
True search results guaranteed by a built-in global VPN and a clean search session.
\n
Support for all major search engines (Google, Youtube, Bing, DuckDuckGo, Baidu and Yandex).
\n
Helpful search history, screenshot history and SERP export tooling.
\n
Available for both Windows and Mac.
\n
\n
Google SERP checker
\n
SEOBrowse is a browser build around keyword research. Every search query is clean, proxied through a geo-specific VPN, and runs in a clean browser session giving you trustworthy accurate search results. This matches with what the majority of users see and what automatic rank checkers (ahrefs, semrush, moz) report. Every search has easy access to your specific city, state, country, language and device.
SEOBrowse allows you to conduct accurate international SERP audits in our unique custom-built browser interface. SEOBrowse provides you with a guaranteed clean search environment to research, analysis and report on all aspects of the search results.
\n
Key features include:
\n
\n
Search results for any city, state or country in the world.
\n
True search results guaranteed by a built-in global VPN and a clean search session.
\n
Support for all major search engines (Google, Youtube, Bing, DuckDuckGo, Baidu and Yandex).
\n
Helpful search history, screenshot history and SERP export tooling.
\n
Available for both Windows and Mac.
\n
\n
Google SERP checker
\n
SEOBrowse is a browser build around keyword research. Every search query is clean, proxied through a geo-specific VPN, and runs in a clean browser session giving you trustworthy accurate search results. This matches with what the majority of users see and what automatic rank checkers (ahrefs, semrush, moz) report. Every search has easy access to your specific city, state, country, language and device.
Serina can be downloaded here. Available versions for Linux, Windows (64bits) and Mac OS.
\n
To use, unzip in the desired location and execute Serina.
\n
If you need a different version, please follow the development instructions to make your own build from the source code
\n
📖 Usage
\n
Serina allows you to create translations for each language, you can access the different languages by clicking on their map in the languages list.
\n
Create translation for a language
\n
This page displays the list of languages and allows you to add a new language via a form using the ISO 639-1 language code. Example:\"FR\" or \"EN\".
\n
The display of the languages is available in two versions (card list or list) that can be set on the parameter page. The number of elements in a language is displayed under the name of the language.
\n
Edit translation
\n
This page displays the groups and translations of the first level of the translation and then recursively displays the sub-levels via access to a group allowing access to its content.
\n
Adding a group is done via a modal that allows you to enter the group name. The modification will also be done via a modal which will ask for the new name of the group. Deleting a group will ask for confirmation before deleting.
\n
The addition of a translation is done via a card added to the list of translations. The recording and deletion is done directly with the icons on the map.
\n
Changing a translation triggers a key or value change detection system to know whether to display the save button in order to have a good interface.
\n
Search
\n
A search bar represented by a magnifying glass is integrated in the toolbar. The research focuses on the \"keys\" of translations.\nThe first corresponding element will be selected to highlight it. And if several items match the search, a navigation between the corresponding items is displayed next to the search bar.
\n
Search is close if you navigate or delete a translation.
\n
Parallel edition of two languages
\n
Parallel entry of two languages is done via the \"swap\" (on the right-hand side of the groups and translations of the first level) comprising:\nthe main language (the one selected in the list of languages)\nthe second language that can be chosen from the other available languages.
\n
Then it is enough to validate and the second language is automatically added below each value of the main language. Parallel editing works exactly like simple language editing.
\n
Parameters
\n
The settings allow you to modify the app according to your preferences. A \"About\" section is also present to get details about the application.
\n
Basic parameters
\n
\n
The format of the language list (in card list or list)
\n
The language of the application (EN, ES or FR for the moment)
\n
\n
Advanced parameters
\n
\n
Custom location of translation files (Available in version 0.3)
\n
\n
Others parameters
\n
\n
The theme of the application
\n
Keyboard shortcuts
\n
\n
⁉️ FAQ
\n
Your language is not available in the app ?
\n
You can translate the application and submit your translation in PR. Or create issue.
\n
Your language doesn't have its flag displayed ?
\n
You can open a issue to explain your problem with a screenshot if possible.
\n
🔨 Development
\n
If you want to contribute to Serina, create a new different version of Serina, or compile it from source code, follow these instructions.
\n
Clone/download source code from the github repo. Make sure you have node, npm, yarn, bower already installed in your system:
\n\n
yarn to install all the dependencies.
\n
yarn start to start API on localhost:7777.
\n
grunt serve to start Serina on localhost:9000.
\n
yarn run package to build serina for linux (build will be placed in packages folder).\n
\n
grunt package to make builds for windows, linux and mac os.
\n
grunt package:win32 to make build for windows (64bits).
\n
grunt package:linux to make build for linux.
\n
grunt package:macos to make build for mac os (64bits).
\n
\n
\n
grunt test to run the automated tests.\n
\n
Please, ensure the tests are passing before creating a pull requests. Add tests for your changes.
\n
\n
\n\n
👏Acknowledgments
\n
\n
Electron framework was used for the app development.
Serina can be downloaded here. Available versions for Linux, Windows (64bits) and Mac OS.
\n
To use, unzip in the desired location and execute Serina.
\n
If you need a different version, please follow the development instructions to make your own build from the source code
\n
📖 Usage
\n
Serina allows you to create translations for each language, you can access the different languages by clicking on their map in the languages list.
\n
Create translation for a language
\n
This page displays the list of languages and allows you to add a new language via a form using the ISO 639-1 language code. Example:\"FR\" or \"EN\".
\n
The display of the languages is available in two versions (card list or list) that can be set on the parameter page. The number of elements in a language is displayed under the name of the language.
\n
Edit translation
\n
This page displays the groups and translations of the first level of the translation and then recursively displays the sub-levels via access to a group allowing access to its content.
\n
Adding a group is done via a modal that allows you to enter the group name. The modification will also be done via a modal which will ask for the new name of the group. Deleting a group will ask for confirmation before deleting.
\n
The addition of a translation is done via a card added to the list of translations. The recording and deletion is done directly with the icons on the map.
\n
Changing a translation triggers a key or value change detection system to know whether to display the save button in order to have a good interface.
\n
Search
\n
A search bar represented by a magnifying glass is integrated in the toolbar. The research focuses on the \"keys\" of translations.\nThe first corresponding element will be selected to highlight it. And if several items match the search, a navigation between the corresponding items is displayed next to the search bar.
\n
Search is close if you navigate or delete a translation.
\n
Parallel edition of two languages
\n
Parallel entry of two languages is done via the \"swap\" (on the right-hand side of the groups and translations of the first level) comprising:\nthe main language (the one selected in the list of languages)\nthe second language that can be chosen from the other available languages.
\n
Then it is enough to validate and the second language is automatically added below each value of the main language. Parallel editing works exactly like simple language editing.
\n
Parameters
\n
The settings allow you to modify the app according to your preferences. A \"About\" section is also present to get details about the application.
\n
Basic parameters
\n
\n
The format of the language list (in card list or list)
\n
The language of the application (EN, ES or FR for the moment)
\n
\n
Advanced parameters
\n
\n
Custom location of translation files (Available in version 0.3)
\n
\n
Others parameters
\n
\n
The theme of the application
\n
Keyboard shortcuts
\n
\n
⁉️ FAQ
\n
Your language is not available in the app ?
\n
You can translate the application and submit your translation in PR. Or create issue.
\n
Your language doesn't have its flag displayed ?
\n
You can open a issue to explain your problem with a screenshot if possible.
\n
🔨 Development
\n
If you want to contribute to Serina, create a new different version of Serina, or compile it from source code, follow these instructions.
\n
Clone/download source code from the github repo. Make sure you have node, npm, yarn, bower already installed in your system:
\n\n
yarn to install all the dependencies.
\n
yarn start to start API on localhost:7777.
\n
grunt serve to start Serina on localhost:9000.
\n
yarn run package to build serina for linux (build will be placed in packages folder).\n
\n
grunt package to make builds for windows, linux and mac os.
\n
grunt package:win32 to make build for windows (64bits).
\n
grunt package:linux to make build for linux.
\n
grunt package:macos to make build for mac os (64bits).
\n
\n
\n
grunt test to run the automated tests.\n
\n
Please, ensure the tests are passing before creating a pull requests. Add tests for your changes.
\n
\n
\n\n
👏Acknowledgments
\n
\n
Electron framework was used for the app development.
install: Download the correct version, unpack and rename it to kcptun, then put the file into system dir (such as /usr/local/bin/) on unix like systems. OR you may need to configure system variables on windows.
\n
\n
\n
\n
v2ray-plugin
\n
\n
effect: Use the plugin for traffic obfuscation. You must install it on you system first and enable it on ss server configuration.
install: Download the correct version, unpack and rename it to v2ray-plugin, then put the file into system dir (such as /usr/local/bin/) on unix like systems. OR You may need to configure system variables on windows.
\n
\n
\n
\n
Why?
\n
\n
The official qt-version app - shadowsocks-qt5 has been deprecated, which has an old interface but still working.
This project was heavily inspired by shadowsocks/ShadowsocksX-NG, which uses local Shadowsocks-libev binary to avoid complex integration with native C code. This means it can always use the latest Shadowsocks-libev version.
\n
It also uses Electron to bring the most powerful cross-platform desktop support with great developing experience.
\n
Development
\n
1. Env
\n
\n
Node@^14.18
\n
Ubuntu18.04 or higher version
\n
Mac catalina or other versions (works in most recent versions in theory)
\n
Windows 10 or higher version
\n
\n
2. Prepare
\n
\n
The step is not necessary, there are some buildin ssr/ss executable files provided in bin dir, Only do this when you want to use external bin for test/dev.
\n
\n
\n
Mac developers need to install shadowsocks-libev at first, use command here: brew install shadowsocks-libev. For china users, if brew is not installed, run this in terminal: /bin/zsh -c \"$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)\" to install brew.
\n
Ubuntu developers can install shadowsocks-libev with apt manager.
\n
\n
\nexport HTTP_PROXY=http://127.0.0.1:\">
# for ubuntu developers\n$: sudo apt install shadowsocks-libev\n$: sudo snap install multipass\n# for mac developers\n$: brew install shadowsocks-libev\n\n# proxy env set (if your local machine support)\nexport HTTPS_PROXY=http://127.0.0.1:<port>\nexport HTTP_PROXY=http://127.0.0.1:<port>
\n
3. Run commands in terminal
\n
# [01]clone\n$: git clone https://github.com/nojsja/shadowsocks-electron.git\n$: cd shadowsocks-electron\n\n# for china developers\n$: npm config set electron_custom_dir \"13.4.0\"\n$: npm config set electron_mirror http://npm.taobao.org/mirrors/electron/\n\n# [02]npm\n$: npm i -g yarn\n$: npm i\n\n# [03]run scripts/download.js for env prepare\n$: cd scripts\n$: node download.js\n\n# for ubuntu developers\n$: cp pac/gfwlist.txt ~/.config/shadowsocks-electron/pac/\n# for mac developers\n$: cp pac/gfwlist.txt ~/Library/Application\\ Support/shadowsocks-electron/pac/\n\n# [04]start\n$: npm start
\n
Mention
\n
\n
The repo is cloned from robertying/shadowsocks-electron which is no longer maintained. I create a new repo based on that in order to be found in github search list.
install: Download the correct version, unpack and rename it to kcptun, then put the file into system dir (such as /usr/local/bin/) on unix like systems. OR you may need to configure system variables on windows.
\n
\n
\n
\n
v2ray-plugin
\n
\n
effect: Use the plugin for traffic obfuscation. You must install it on you system first and enable it on ss server configuration.
install: Download the correct version, unpack and rename it to v2ray-plugin, then put the file into system dir (such as /usr/local/bin/) on unix like systems. OR You may need to configure system variables on windows.
\n
\n
\n
\n
Why?
\n
\n
The official qt-version app - shadowsocks-qt5 has been deprecated, which has an old interface but still working.
This project was heavily inspired by shadowsocks/ShadowsocksX-NG, which uses local Shadowsocks-libev binary to avoid complex integration with native C code. This means it can always use the latest Shadowsocks-libev version.
\n
It also uses Electron to bring the most powerful cross-platform desktop support with great developing experience.
\n
Development
\n
1. Env
\n
\n
Node@^14.18
\n
Ubuntu18.04 or higher version
\n
Mac catalina or other versions (works in most recent versions in theory)
\n
Windows 10 or higher version
\n
\n
2. Prepare
\n
\n
The step is not necessary, there are some buildin ssr/ss executable files provided in bin dir, Only do this when you want to use external bin for test/dev.
\n
\n
\n
Mac developers need to install shadowsocks-libev at first, use command here: brew install shadowsocks-libev. For china users, if brew is not installed, run this in terminal: /bin/zsh -c \"$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)\" to install brew.
\n
Ubuntu developers can install shadowsocks-libev with apt manager.
\n
\n
# for ubuntu developers\n$: sudo apt install shadowsocks-libev\n$: sudo snap install multipass\n# for mac developers\n$: brew install shadowsocks-libev\n\n# proxy env set (if your local machine support)\nexport HTTPS_PROXY=http://127.0.0.1:<port>\nexport HTTP_PROXY=http://127.0.0.1:<port>
\n
3. Run commands in terminal
\n
# [01]clone\n$: git clone https://github.com/nojsja/shadowsocks-electron.git\n$: cd shadowsocks-electron\n\n# for china developers\n$: npm config set electron_custom_dir \"13.4.0\"\n$: npm config set electron_mirror http://npm.taobao.org/mirrors/electron/\n\n# [02]npm\n$: npm i -g yarn\n$: npm i\n\n# [03]run scripts/download.js for env prepare\n$: cd scripts\n$: node download.js\n\n# for ubuntu developers\n$: cp pac/gfwlist.txt ~/.config/shadowsocks-electron/pac/\n# for mac developers\n$: cp pac/gfwlist.txt ~/Library/Application\\ Support/shadowsocks-electron/pac/\n\n# [04]start\n$: npm start
\n
Mention
\n
\n
The repo is cloned from robertying/shadowsocks-electron which is no longer maintained. I create a new repo based on that in order to be found in github search list.
Before, be sure to have node and golang installed !
\n
# clone the repository\n$ git clone https://github.com/ShuttleBrowser/Shuttle.git\n\n# change the working directory to shuttle\n$ cd Shuttle\n$ go mod tidy\n\n# install the requirements\n$ cd view\n$ npm install\n\n# Run dev\n$ npm run build && go run ../main.go\n
Before, be sure to have node and golang installed !
\n
# clone the repository\n$ git clone https://github.com/ShuttleBrowser/Shuttle.git\n\n# change the working directory to shuttle\n$ cd Shuttle\n$ go mod tidy\n\n# install the requirements\n$ cd view\n$ npm install\n\n# Run dev\n$ npm run build && go run ../main.go\n
This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software.\nBEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted.\nSee http://www.wassenaar.org/ for more information.
\n
The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms.\nThe form and manner of this distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.
This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software.\nBEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted.\nSee http://www.wassenaar.org/ for more information.
\n
The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms.\nThe form and manner of this distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.
This is the official Silex desktop version, an installable application for Windows, MacOS and linux.
\n
\n
We are looking for someone to create the releases every 2 months, and for testers to test each new version on Windows and MacOS and linux after each release, please apply here
Note: in order to have the \"thumbnails\" in cloud explorer, you may need libvips-dev installed (apt install libvips-dev or dnf install vips-devel) and/or glib2.0-dev installed (apt install glib2.0-dev or dnf install glib-devel)
\n
Release a new version
\n
For developers, here is how to create a new release for the latest version of Silex
\n
$ npm version patch\n$ git push origin master --follow-tags\n
\n
",
"readmeOriginal": "
Silex desktop
\n
This is the official Silex desktop version, an installable application for Windows, MacOS and linux.
\n
\n
We are looking for someone to create the releases every 2 months, and for testers to test each new version on Windows and MacOS and linux after each release, please apply here
Note: in order to have the \"thumbnails\" in cloud explorer, you may need libvips-dev installed (apt install libvips-dev or dnf install vips-devel) and/or glib2.0-dev installed (apt install glib2.0-dev or dnf install glib-devel)
\n
Release a new version
\n
For developers, here is how to create a new release for the latest version of Silex
\n
$ npm version patch\n$ git push origin master --follow-tags\n
This application is a basic function of file finder. The purpose of this application is to see the basic functions and possibilities of Electron through a relatively simple project.
\n
I hope many people can learn the function of Electron easily through the source of this project.
\n
\n
Functions and Features
\n
Top feature: Local System File Explorer (Windows 10 only)
This application is a basic function of file finder. The purpose of this application is to see the basic functions and possibilities of Electron through a relatively simple project.
\n
I hope many people can learn the function of Electron easily through the source of this project.
\n
\n
Functions and Features
\n
Top feature: Local System File Explorer (Windows 10 only)
Clone the repo: git clone https://github.com/Automattic/simplenote-electron.git
\n
cd simplenote-electron
\n
npm install
\n
npm run dev
\n
The dev server will start on http://localhost:4000, and the Electron app will launch automatically.
\n
For all logging from Electron to be printed to the terminal (e.g. console.log statements within app.js), you might need to set env ELECTRON_ENABLE_LOGGING=1.
\n
Sign up for a new account within the app. Use the account for testing purposes only as all note data will be periodically cleared out on the server.
\n\n
Note: Simplenote API features such as sharing and publishing will not work with development builds. Due to a limitation of make installation paths used for build cannot have spaces.
\n
Building
\n
\n
make package-osx
\n
make package-win32
\n
make package-linux
\n
\n
Testing
\n
Unit tests are run with npm test.
\n
End-to-end tests are run with npm run test-e2e.\nNote that the Spectron version corresponds with the version of Electron we are using.\nUse the corresponding API docs for webdriver-io which correspond to the Spectron version.\nAt the time of writing you will want to refer to the webdriver-io v4.13 API docs.
\n
Coding Guidelines
\n
Please adhere to the same guidelines as found in wp-calypso.
Clone the repo: git clone https://github.com/Automattic/simplenote-electron.git
\n
cd simplenote-electron
\n
npm install
\n
npm run dev
\n
The dev server will start on http://localhost:4000, and the Electron app will launch automatically.
\n
For all logging from Electron to be printed to the terminal (e.g. console.log statements within app.js), you might need to set env ELECTRON_ENABLE_LOGGING=1.
\n
Sign up for a new account within the app. Use the account for testing purposes only as all note data will be periodically cleared out on the server.
\n\n
Note: Simplenote API features such as sharing and publishing will not work with development builds. Due to a limitation of make installation paths used for build cannot have spaces.
\n
Building
\n
\n
make package-osx
\n
make package-win32
\n
make package-linux
\n
\n
Testing
\n
Unit tests are run with npm test.
\n
End-to-end tests are run with npm run test-e2e.\nNote that the Spectron version corresponds with the version of Electron we are using.\nUse the corresponding API docs for webdriver-io which correspond to the Spectron version.\nAt the time of writing you will want to refer to the webdriver-io v4.13 API docs.
\n
Coding Guidelines
\n
Please adhere to the same guidelines as found in wp-calypso.
Use a robot to attract more followers. Now as a simple desktop app!
\n
\n
How does it work?
\n
It runs as a desktop application on your computer and will every day follow up to 150 users (configurable). You choose a list of instagram users whose market you want to target. The bot navigates to each of these, finds the last people to have followed them and then follows each of them. Then after 5 days (also configurable), it will unfollow the users. Simple and effective.
\n
The bot will remember every user it has followed, so if you quit the app and open it later, it will still clean up by unfollowing users that it previously followed.
\n
You can find logs and data in your the \"App Data\" folder. See userData. For example on Mac OS:
No viruses or fishy business, guaranteed to not store your password! (See the code for yourself)
\n
Simple, easy to use
\n
Effective: Follow/unfollow is proven very effective. By only doing follow/unfollow, the bot avoids all those awkward situations where a bot comments \"Awesome!\" on a post depicting a tragic events.
\n
Secure: Never stores your username an password
\n
Safe: Runs on your own computer, to reduce the risk of being banned. Instagram is known to crack down on paid Instagram bot services and cloud and VPN IPs
\n
Automatic rate limiting
\n
Uses a normal browser to mimic the behavior of a normal user (does not use private APIs easily detectable by Instagram)
\n
Randomized timed behavior
\n
Simulates human behavior of sleeping at night, and usage in the day time
\n
Change browser signature to avoid being identified
Multiple modes of operation: Unfollow only, Unfollow non-mutual followers, Unfollow unknown followed accounts, Unfollow user specified list of accounts.
NOTE: After installing you may need to bypass \"Untrusted app\" dialogs. This is because Microsoft requires a costly certificate to remove this dialog (I'm not going to pay for that.) Alternatively try to google windows run untrusted app.
\n
A word of warning
\n
Many people are getting Action Blocked message these days with this bot as well as other bots (it seems even people just manually following using the app) Instagram is tightening their rules by not allowing promiscuous behavior like following and liking strangers' photos as much as before, and imposing temp blocks when they think you crossed the limit.
\n
You use this app at your own risk! I have had great success with this app but I am not responsible for any consequences it may have for your Instagram account.
\n
Tips to avoid ban
\n
I advise you to follow these guidelines:
\n
\n
Run the bot on the same internet connection (e.g. WiFi) as you normally use your phone with the Instagram mobile app. It will reduce the chance of being flagged
\n
Use conservative parameters (max follows/unfollows per day 150 and max 20 per hour, maybe even start out lower, and work your way up)
\n
\n
API / programmatic bot
\n
SimpleInstaBot is built on instauto - you can instead use that if you want to program your own headless bot.
\n
How to run on Raspberry PI
\n
# SSH into your PI\nssh pi@ip.of.pi\n\n# Download the Raspberry Pi binary\nwget https://github.com/mifi/SimpleInstaBot/releases/latest/download/SimpleInstaBot-linux-armv7l.tar.bz2\n\n# Extract it\ntar xvf SimpleInstaBot-linux-armv7l.tar.bz2\ncd SimpleInstaBot-linux-armv7l\n\n# run it\nDISPLAY=:0 ./simpleinstabot\n\n# or:\nDISPLAY=:0 ./simpleinstabot --no-sandbox
\n
Troubleshooting
\n
\n
Follow button not found: switch your instagram account into English as stated in the instauto troobleshooting page
\n
\n
FAQ
\n
\n
Q: Can I run it on multiple accounts at the same time?
\n
A: No, currently you would need multiple PC's or multiple VMs for that. See #27
\n
Q: Can I run it on multiple accounts (but not at the same time)?
\n
A: Yes, just log out, and then log in to your other account instead. Followed/liked etc will be remembered.
\n
\n
Donate 🙈
\n
This project is maintained by me alone. The project will always remain free and open source, but if it's useful for you, consider supporting me. :) It will give me extra motivation to improve it.
Use a robot to attract more followers. Now as a simple desktop app!
\n
\n
How does it work?
\n
It runs as a desktop application on your computer and will every day follow up to 150 users (configurable). You choose a list of instagram users whose market you want to target. The bot navigates to each of these, finds the last people to have followed them and then follows each of them. Then after 5 days (also configurable), it will unfollow the users. Simple and effective.
\n
The bot will remember every user it has followed, so if you quit the app and open it later, it will still clean up by unfollowing users that it previously followed.
\n
You can find logs and data in your the \"App Data\" folder. See userData. For example on Mac OS:
No viruses or fishy business, guaranteed to not store your password! (See the code for yourself)
\n
Simple, easy to use
\n
Effective: Follow/unfollow is proven very effective. By only doing follow/unfollow, the bot avoids all those awkward situations where a bot comments \"Awesome!\" on a post depicting a tragic events.
\n
Secure: Never stores your username an password
\n
Safe: Runs on your own computer, to reduce the risk of being banned. Instagram is known to crack down on paid Instagram bot services and cloud and VPN IPs
\n
Automatic rate limiting
\n
Uses a normal browser to mimic the behavior of a normal user (does not use private APIs easily detectable by Instagram)
\n
Randomized timed behavior
\n
Simulates human behavior of sleeping at night, and usage in the day time
\n
Change browser signature to avoid being identified
Multiple modes of operation: Unfollow only, Unfollow non-mutual followers, Unfollow unknown followed accounts, Unfollow user specified list of accounts.
NOTE: After installing you may need to bypass \"Untrusted app\" dialogs. This is because Microsoft requires a costly certificate to remove this dialog (I'm not going to pay for that.) Alternatively try to google windows run untrusted app.
\n
A word of warning
\n
Many people are getting Action Blocked message these days with this bot as well as other bots (it seems even people just manually following using the app) Instagram is tightening their rules by not allowing promiscuous behavior like following and liking strangers' photos as much as before, and imposing temp blocks when they think you crossed the limit.
\n
You use this app at your own risk! I have had great success with this app but I am not responsible for any consequences it may have for your Instagram account.
\n
Tips to avoid ban
\n
I advise you to follow these guidelines:
\n
\n
Run the bot on the same internet connection (e.g. WiFi) as you normally use your phone with the Instagram mobile app. It will reduce the chance of being flagged
\n
Use conservative parameters (max follows/unfollows per day 150 and max 20 per hour, maybe even start out lower, and work your way up)
\n
\n
API / programmatic bot
\n
SimpleInstaBot is built on instauto - you can instead use that if you want to program your own headless bot.
\n
How to run on Raspberry PI
\n
# SSH into your PI\nssh pi@ip.of.pi\n\n# Download the Raspberry Pi binary\nwget https://github.com/mifi/SimpleInstaBot/releases/latest/download/SimpleInstaBot-linux-armv7l.tar.bz2\n\n# Extract it\ntar xvf SimpleInstaBot-linux-armv7l.tar.bz2\ncd SimpleInstaBot-linux-armv7l\n\n# run it\nDISPLAY=:0 ./simpleinstabot\n\n# or:\nDISPLAY=:0 ./simpleinstabot --no-sandbox
\n
Troubleshooting
\n
\n
Follow button not found: switch your instagram account into English as stated in the instauto troobleshooting page
\n
\n
FAQ
\n
\n
Q: Can I run it on multiple accounts at the same time?
\n
A: No, currently you would need multiple PC's or multiple VMs for that. See #27
\n
Q: Can I run it on multiple accounts (but not at the same time)?
\n
A: Yes, just log out, and then log in to your other account instead. Followed/liked etc will be remembered.
\n
\n
Donate 🙈
\n
This project is maintained by me alone. The project will always remain free and open source, but if it's useful for you, consider supporting me. :) It will give me extra motivation to improve it.
This repository is archived. To help us better improve the product and protect our intellectual assets, the development has been moved to Photon, a new core with closed source code base.
\n
Introduction
\n
The source code of the Neutron - the core that powers:
in Mac App Store mode: yarn electron-dev:mac-app-store.
\n
in Microsoft Store mode: yarn electron-dev:appx.
\n
in Snap mode: yarn electron-dev:snap.
\n
in Skywhale (standalone) mode: yarn electron-dev:standalone:skywhale.
\n
in Skywhale (Mac App Store) mode: yarn electron-dev:mac-app-store:skywhale.
\n
\n
\n
\n
Distribution
\n
Release as/for:
\n
\n
template: yarn release:template.
\n
Mac App Store: yarn release:mac-app-store.
\n
APPX (Microsoft Store): yarn release:appx.
\n
standalone: yarn release:standalone.
\n
\n
",
"readmeOriginal": "
Neutron
\n
Archived
\n
This repository is archived. To help us better improve the product and protect our intellectual assets, the development has been moved to Photon, a new core with closed source code base.
\n
Introduction
\n
The source code of the Neutron - the core that powers:
sleek is an open-source (FOSS) todo manager based on the todo.txt syntax. Stripped down to only the most necessary features, and with a clean and simple interface, sleek aims to help you focus on getting things done.
\n
All classic todo.txt attributes are supported and enhanced by additional features. Creating todos is straightforward, and tag-based filtering in tandem with highly customisable grouping and smart full-text search allow for rapid information retrieval. Completed todos can be hidden or archived into separate done.txt files. Easy integration with other todo.txt apps is facilitated by continuously scanning todo.txt files for changes.
\n
sleek is available for Windows, MacOS and Linux, and in several languages. For a detailed list of features, see below.
\n
Screenshots
\n
\n
\n
sleeks state of development
\n
A prioritized backlog of new features and known issues as well as an overview on what is being worked on at the moment can be found here.
sleek is an open-source (FOSS) todo manager based on the todo.txt syntax. Stripped down to only the most necessary features, and with a clean and simple interface, sleek aims to help you focus on getting things done.
\n
All classic todo.txt attributes are supported and enhanced by additional features. Creating todos is straightforward, and tag-based filtering in tandem with highly customisable grouping and smart full-text search allow for rapid information retrieval. Completed todos can be hidden or archived into separate done.txt files. Easy integration with other todo.txt apps is facilitated by continuously scanning todo.txt files for changes.
\n
sleek is available for Windows, MacOS and Linux, and in several languages. For a detailed list of features, see below.
\n
Screenshots
\n
\n
\n
sleeks state of development
\n
A prioritized backlog of new features and known issues as well as an overview on what is being worked on at the moment can be found here.
\nSnailFM is a radio station by the SnailDOS community.\nYou can easily tune into SnailFM with this software.\nSnailFM is a online radiostation, with no copyright music. It has no lyrics, so it's great for background music, or just studying or even coding!\nSnailFM is fast free and secure!\nFor linux installation, follow the guide below.
You can easily build SnailFM. I recommend linux.\nyarn\nyarn start\nthen building can be:\nyarn build (linux only)
\n
Contributing
\n
Feel free to contribute! Fork, commit, PR!
\n
\n
",
"readmeOriginal": "
SnailFM
\n
\nSnailFM is a radio station by the SnailDOS community.\nYou can easily tune into SnailFM with this software.\nSnailFM is a online radiostation, with no copyright music. It has no lyrics, so it's great for background music, or just studying or even coding!\nSnailFM is fast free and secure!\nFor linux installation, follow the guide below.
A free and open source command snippets manager for organize and copy fast.
\n
\n \n
\n
\n \n \n
\n
\n \n
\n
\n Built with Electron & React \n Built for Windows, macOS and Linux\n
\n
Overview
\n
\n \n
\n
It helps you create, organize and store your commands (Excel formulas, Sql Queries, Terminal commands, etc.) with dynamic parameters for quick copy to it. Describe your commands with dynamic parameters also support documentation about your snippets. You can select or specify your dynamic values using with selectbox/inputbox for ready to paste the workspace. You can organize with tags.
\n
Features
\n
\n
ORGANIZE WITH TAGS & FAVOURITES You can organize all commands with tags & favourites system.
\n
DESCRIBE DYNAMIC PARAMETERS You can describe dynamic parameters. Supporting input & selectbox for choosing parameter value.
\n
DOCUMENTATION FOR COMMAND You can describe documentation text for each commands with Markdown Editor.
\n
SEARCH You can quick access your commands
\n
AUTOSAVE Automatically saves any changes you make during work, so you don't have to worry about losing changes.
\n
SYNC You can use any service that provides cloud synchronization, such as iCloud Drive, Google Drive, Dropbox or other similar.
\n
DATABASE We are using Lowdb - Powered by Lodash to store your data. The database files are on your local computer.
\n
LIGHT/DARK THEME We are supporting 2 themes.
\n
And more...
\n
\n
Contribution
\n
Contribution are always welcome and recommended! Here is how:
A free and open source command snippets manager for organize and copy fast.
\n
\n \n
\n
\n \n \n
\n
\n \n
\n
\n Built with Electron & React \n Built for Windows, macOS and Linux\n
\n
Overview
\n
\n \n
\n
It helps you create, organize and store your commands (Excel formulas, Sql Queries, Terminal commands, etc.) with dynamic parameters for quick copy to it. Describe your commands with dynamic parameters also support documentation about your snippets. You can select or specify your dynamic values using with selectbox/inputbox for ready to paste the workspace. You can organize with tags.
\n
Features
\n
\n
ORGANIZE WITH TAGS & FAVOURITES You can organize all commands with tags & favourites system.
\n
DESCRIBE DYNAMIC PARAMETERS You can describe dynamic parameters. Supporting input & selectbox for choosing parameter value.
\n
DOCUMENTATION FOR COMMAND You can describe documentation text for each commands with Markdown Editor.
\n
SEARCH You can quick access your commands
\n
AUTOSAVE Automatically saves any changes you make during work, so you don't have to worry about losing changes.
\n
SYNC You can use any service that provides cloud synchronization, such as iCloud Drive, Google Drive, Dropbox or other similar.
\n
DATABASE We are using Lowdb - Powered by Lodash to store your data. The database files are on your local computer.
\n
LIGHT/DARK THEME We are supporting 2 themes.
\n
And more...
\n
\n
Contribution
\n
Contribution are always welcome and recommended! Here is how:
SnippetStore is an application for developers to store their snippets and quickly retrieve them when needed. SnippetStore mainly focus on storing code therefor its interface is small and simple, perfect for busy developers who doesn't care about small details.
\n
Donate
\n
There are many requests for macOS support and I'm sure many of you guys who are mac users will want\nSnippetStore to be available in homebrew and able to run on macOS too. But in order to do that, I need help from you guys to afford a mac to test & build this project and many more other projects in the future. It would be a huge help if you can buy me a coffee 😄
SnippetStore is an application for developers to store their snippets and quickly retrieve them when needed. SnippetStore mainly focus on storing code therefor its interface is small and simple, perfect for busy developers who doesn't care about small details.
\n
Donate
\n
There are many requests for macOS support and I'm sure many of you guys who are mac users will want\nSnippetStore to be available in homebrew and able to run on macOS too. But in order to do that, I need help from you guys to afford a mac to test & build this project and many more other projects in the future. It would be a huge help if you can buy me a coffee 😄
Social Amnesia aims to make your social media (twitter/reddit) only exist within a time period that you choose. For many people, there is no reason they want to have years old tweets or reddit comments publicly accessible. With Social Amnesia, set the time period you want to keep, whitelist posts and items you want to preserve indefinitely, and let Social Amnesia wipe the rest out of existence.
\n
\n
Sponsor the development of Social Amnesia
\n
You can sponsor me on GitHub to fund the continued development of Social Amnesia! ❤️\nYou can also make a one-time donation directly via:
Send Bitcoin to 36Bq7F2JZdYEWLyB8jPWB1XuLCBCCkLvHn
\n
\n
\n
And please follow me on Twitter to receive updates on the development of Social Amnesia!
\n
How to build/run Social Amnesia
\n
Executables
\n
This is the simplest option. Bundled and easily usable files for Mac, Windows and Linux are available on the releases page.
\n
How to run Social Amnesia from the command line
\n
First, clone this repo.
\n
In order to run Social Amnesia, you will need to set up Reddit and Twitter APIs.
\n
For Reddit, you will want to create an installed app using https://www.reddit.com/prefs/apps. Set your redirect url to be https://google.com. Then you will need to create a redditSecrets.ts file in the src/ directory:
For Twitter, create an app using https://developer.twitter.com/en/apps, enable Sign in with Twitter, set the Callback URL to be https://google.com, and then create a twitterSecrets.ts file in the src/ directory:
Then you can run yarn run electron:serve and start developing!
\n
How to build the executables for Social Amnesia
\n
Simply run yarn run electron:serve once you have completed the steps above. Output is sent to the dist_electron folder.
\n
Sites and Features
\n
Reddit
\n
\n
Delete comments and posts, individually or en masse.
\n
Edits your posts before deleting them. According to the reddit admins this is an effective way to remove content from reddit.
\n
Keep a time range of comments and submissions.
\n
Keep comments or submissions that reach a certain amount of upvotes.
\n
Whitelist specific posts and comments you want to save.
\n
Schedule deletions daily.
\n
\n
Twitter
\n
\n
Delete tweets, retweets, replies and remove \"favorites\" (aka ❤️'s), individually or en masse.
\n
Keep a time range of tweets, retweets, replies and favorites.\n
\n
In the case of favorites, this is done by the time the favorited item was created, NOT the time it was favorited at.
\n
\n
\n
Keep tweets that have reached a certain amount of retweets or favorites.\n
\n
This option ignores retweets, these will be removed no matter what if they are out of the time range.
\n
\n
\n
Whitelist specific tweets and favorites you want to save.
\n
Schedule deletions daily.
\n
\n
Contributing
\n
Contributions are not only welcomed but greatly appreciated. If you have any idea for a new feature, or find a bug, you can open up a new issue and report it. Better yet, fork this project, write up some code, and submit a new pull request.
\n
Don't feel comfortable coding? That's okay! There are plenty of other ways to contribute to this project:
\n
\n
The easiest is to just share it. Post it (ironically?) on your social media. Tell your friends and family. Launch t-shirts at bewildered pedestrians. Drop pamphlets out of air planes. Get creative!
\n
UX people are needed to help make mockups to improve the design of the application.
\n
Do you have a social media account with lots of posts you would like to donate to the cause? Accounts like these can be used to help us bug hunt. Open an issue or tweet @NickGottschlich.
\n
Be a user tester! Just record your experience using this the first time using screen recording software and upload it as an issue. Better yet if you can record yourself talking through your thoughts as you try out the software for the first time!
\n
\n
Limitations
\n
\n
Reddit\n
\n
reddit API currently only indexes ~1k most recent items back (confirmed for comments, not submissions)
\n
\n
\n
Twitter\n
\n
twitter API currently only indexes ~3200 tweets and favorites back
\n
\n
\n
\n
Tech talks / Blog Posts
\n
Note: These talks and posts may be using the user interface from Social Media 1.0, which looks significantly different from the new version!
\n
@NickGottschlich spoke about Social Amnesia at the Austin Python Monthly Meetup on April 10th, 2019.
Social Amnesia aims to make your social media (twitter/reddit) only exist within a time period that you choose. For many people, there is no reason they want to have years old tweets or reddit comments publicly accessible. With Social Amnesia, set the time period you want to keep, whitelist posts and items you want to preserve indefinitely, and let Social Amnesia wipe the rest out of existence.
\n
\n
Sponsor the development of Social Amnesia
\n
You can sponsor me on GitHub to fund the continued development of Social Amnesia! ❤️\nYou can also make a one-time donation directly via:
Send Bitcoin to 36Bq7F2JZdYEWLyB8jPWB1XuLCBCCkLvHn
\n
\n
\n
And please follow me on Twitter to receive updates on the development of Social Amnesia!
\n
How to build/run Social Amnesia
\n
Executables
\n
This is the simplest option. Bundled and easily usable files for Mac, Windows and Linux are available on the releases page.
\n
How to run Social Amnesia from the command line
\n
First, clone this repo.
\n
In order to run Social Amnesia, you will need to set up Reddit and Twitter APIs.
\n
For Reddit, you will want to create an installed app using https://www.reddit.com/prefs/apps. Set your redirect url to be https://google.com. Then you will need to create a redditSecrets.ts file in the src/ directory:
For Twitter, create an app using https://developer.twitter.com/en/apps, enable Sign in with Twitter, set the Callback URL to be https://google.com, and then create a twitterSecrets.ts file in the src/ directory:
Then you can run yarn run electron:serve and start developing!
\n
How to build the executables for Social Amnesia
\n
Simply run yarn run electron:serve once you have completed the steps above. Output is sent to the dist_electron folder.
\n
Sites and Features
\n
Reddit
\n
\n
Delete comments and posts, individually or en masse.
\n
Edits your posts before deleting them. According to the reddit admins this is an effective way to remove content from reddit.
\n
Keep a time range of comments and submissions.
\n
Keep comments or submissions that reach a certain amount of upvotes.
\n
Whitelist specific posts and comments you want to save.
\n
Schedule deletions daily.
\n
\n
Twitter
\n
\n
Delete tweets, retweets, replies and remove \"favorites\" (aka ❤️'s), individually or en masse.
\n
Keep a time range of tweets, retweets, replies and favorites.\n
\n
In the case of favorites, this is done by the time the favorited item was created, NOT the time it was favorited at.
\n
\n
\n
Keep tweets that have reached a certain amount of retweets or favorites.\n
\n
This option ignores retweets, these will be removed no matter what if they are out of the time range.
\n
\n
\n
Whitelist specific tweets and favorites you want to save.
\n
Schedule deletions daily.
\n
\n
Contributing
\n
Contributions are not only welcomed but greatly appreciated. If you have any idea for a new feature, or find a bug, you can open up a new issue and report it. Better yet, fork this project, write up some code, and submit a new pull request.
\n
Don't feel comfortable coding? That's okay! There are plenty of other ways to contribute to this project:
\n
\n
The easiest is to just share it. Post it (ironically?) on your social media. Tell your friends and family. Launch t-shirts at bewildered pedestrians. Drop pamphlets out of air planes. Get creative!
\n
UX people are needed to help make mockups to improve the design of the application.
\n
Do you have a social media account with lots of posts you would like to donate to the cause? Accounts like these can be used to help us bug hunt. Open an issue or tweet @NickGottschlich.
\n
Be a user tester! Just record your experience using this the first time using screen recording software and upload it as an issue. Better yet if you can record yourself talking through your thoughts as you try out the software for the first time!
\n
\n
Limitations
\n
\n
Reddit\n
\n
reddit API currently only indexes ~1k most recent items back (confirmed for comments, not submissions)
\n
\n
\n
Twitter\n
\n
twitter API currently only indexes ~3200 tweets and favorites back
\n
\n
\n
\n
Tech talks / Blog Posts
\n
Note: These talks and posts may be using the user interface from Social Media 1.0, which looks significantly different from the new version!
\n
@NickGottschlich spoke about Social Amnesia at the Austin Python Monthly Meetup on April 10th, 2019.
Socially is an application which combines all of your social media DM's and chats into one single window. The aim of this app is to increase productivity and reduce the need for having multiple browser tabs open.
If you are going to develop this project, change line 6 in the package.json to:
\n
\"main\": \"src/electron.js\",
\n
and in the src/electron.js file, make sure that you set isDev to true (I will be fixing this to use the environment rather than manually):
\n
letisDev=true;
\n
To run this project, you need to run the React server in one terminal:
\n
npm start
\n
And then run the electron app:
\n
npm run electron
\n
This repo contains two scripts (these scripts have been used on MacOS but should work on Linux):
\n
The build script executed by:
\n
./build.sh
\n
will build the React project then copy the src/electron.js and src/preload.js files over into the build folder. From there, electron-builder is ran to compile for all platforms (this may error out on Linux due to MacOS apps not being able to be signed).
\n
Building for MacOS may be problematic as the code was signed by me using a Provisioning profile. You may need to delete some parts of the electron-builder.json file in order to build it properly. (Possibly the provisionProfile field)
\n
The cleanup script executed by:
\n
./cleanup.sh
\n\n
Releases
\n
See the releases page for all releases and to download the binaries.
\n\n
Roadmap
\n
See the open issues for a list of proposed features (and known issues).
\n\n
Contributing
\n
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
\n\n
Fork the Project
\n
Create your Feature Branch (git checkout -b feature/AmazingFeature)
\n
Commit your Changes (git commit -m 'Add some AmazingFeature')
\n
Push to the Branch (git push origin feature/AmazingFeature)
\n
Open a Pull Request
\n\n\n
License
\n
Distributed under the GNU General Public License v3.0 License. See LICENSE for more information.
Socially is an application which combines all of your social media DM's and chats into one single window. The aim of this app is to increase productivity and reduce the need for having multiple browser tabs open.
If you are going to develop this project, change line 6 in the package.json to:
\n
\"main\": \"src/electron.js\",
\n
and in the src/electron.js file, make sure that you set isDev to true (I will be fixing this to use the environment rather than manually):
\n
letisDev=true;
\n
To run this project, you need to run the React server in one terminal:
\n
npm start
\n
And then run the electron app:
\n
npm run electron
\n
This repo contains two scripts (these scripts have been used on MacOS but should work on Linux):
\n
The build script executed by:
\n
./build.sh
\n
will build the React project then copy the src/electron.js and src/preload.js files over into the build folder. From there, electron-builder is ran to compile for all platforms (this may error out on Linux due to MacOS apps not being able to be signed).
\n
Building for MacOS may be problematic as the code was signed by me using a Provisioning profile. You may need to delete some parts of the electron-builder.json file in order to build it properly. (Possibly the provisionProfile field)
\n
The cleanup script executed by:
\n
./cleanup.sh
\n\n
Releases
\n
See the releases page for all releases and to download the binaries.
\n\n
Roadmap
\n
See the open issues for a list of proposed features (and known issues).
\n\n
Contributing
\n
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
\n\n
Fork the Project
\n
Create your Feature Branch (git checkout -b feature/AmazingFeature)
\n
Commit your Changes (git commit -m 'Add some AmazingFeature')
\n
Push to the Branch (git push origin feature/AmazingFeature)
\n
Open a Pull Request
\n\n\n
License
\n
Distributed under the GNU General Public License v3.0 License. See LICENSE for more information.
To redirect the audio to a communication app (like Discord)
\n
You need to install & setup Voicemeeter Banana and Virtual Audio Cable \nI personally followed two excellent videos from a youtuber to setup everything up, it is in French but you can watch it with subtitles or follow another video.
To redirect the audio to a communication app (like Discord)
\n
You need to install & setup Voicemeeter Banana and Virtual Audio Cable \nI personally followed two excellent videos from a youtuber to setup everything up, it is in French but you can watch it with subtitles or follow another video.
Recommended: Download from the Microsoft Store by clicking the link\nabove (Microsoft account not needed).
\n
Alternative: Follow the installation instructions\nto download and run the installer from the latest GitHub release.\n
\n
Note: You will have to dismiss warnings about the download being\npotentially dangerous with this method.
\n
\n
\n
\n
About
\n
SpaceEye is an open source desktop app which sets live, publicly available\nsatellite imagery as your desktop background.
\n
New images are downloaded approximately every 10 minutes to an hour (depending\non the view), giving an up-to-date, high resolution view of the Earth from\nspace.
\n
Currently, the app provides 12 views of the Earth from 5 different geostationary\nweather satellites: Himawari-8, GOES-17 (West), GOES-16 (East), Meteosat-8, and\nMeteosat-11. This list will hopefully be expanded in the future.
VS Code is recommended for development, but not\nrequired. The repo includes configs and recommended extensions.
\n
Setup
\n
git clone https://github.com/KYDronePilot/SpaceEye.git\ncd SpaceEye\nyarn\nyarn run build
\n
Start in dev mode
\n
Opens Chromium dev tools and watches renderer files.
\n
yarn run start-dev
\n
Package the app
\n
Builds and packages app for distribution.
\n
If on macOS, creates DMG and ZIP files, or if on Windows, creates NSIS\nexecutable installer.
\n
yarn run dist
\n
Privacy
\n
The only data collected are server logs when downloading the satellite config\nfile.\nThis config file contains metadata and links to the satellite images provided by\nNOAA and RAMMB.
Recommended: Download from the Microsoft Store by clicking the link\nabove (Microsoft account not needed).
\n
Alternative: Follow the installation instructions\nto download and run the installer from the latest GitHub release.\n
\n
Note: You will have to dismiss warnings about the download being\npotentially dangerous with this method.
\n
\n
\n
\n
About
\n
SpaceEye is an open source desktop app which sets live, publicly available\nsatellite imagery as your desktop background.
\n
New images are downloaded approximately every 10 minutes to an hour (depending\non the view), giving an up-to-date, high resolution view of the Earth from\nspace.
\n
Currently, the app provides 12 views of the Earth from 5 different geostationary\nweather satellites: Himawari-8, GOES-17 (West), GOES-16 (East), Meteosat-8, and\nMeteosat-11. This list will hopefully be expanded in the future.
VS Code is recommended for development, but not\nrequired. The repo includes configs and recommended extensions.
\n
Setup
\n
git clone https://github.com/KYDronePilot/SpaceEye.git\ncd SpaceEye\nyarn\nyarn run build
\n
Start in dev mode
\n
Opens Chromium dev tools and watches renderer files.
\n
yarn run start-dev
\n
Package the app
\n
Builds and packages app for distribution.
\n
If on macOS, creates DMG and ZIP files, or if on Windows, creates NSIS\nexecutable installer.
\n
yarn run dist
\n
Privacy
\n
The only data collected are server logs when downloading the satellite config\nfile.\nThis config file contains metadata and links to the satellite images provided by\nNOAA and RAMMB.
Source Me is a cross platform desktop application which has some essential tools while making a project.
\n
\n
Version: 0.2.1
\n
Features
\n
\n
\n
Material Design Colors by Google\nThe application contains a full stack of material designed colors created by Google. These can be very useful when one needs these colors at one place. It uses react-tooltip to show the hex codes.
\n
\n
\n
Content Delivery Networks Library by CDN\nThese are libraries provided by cdn in one place. You can import the links to your project.
\n
\n
\n
Material Designed Icons by Google\nThese are material designed icons made by Google. It is similar to the colors component.
\n
\n
\n
Epsum Generator from bacon ipsum\nA generator which generates standalone text which can be useful to your HTML mockups.
\n
\n
\n
URL Shortner\nA URL shortener which uses a free is.gd to shorten urls quickly.
\n
\n
\n
Emoji Picker\nIt is a picker which has a curated list of Emojis. Click one of them & you get the unicode!
\n
\n
\n
Image Compressor\nA tool which compresses your images quickly. It uses @xkeshi/image-compressor.
The app can be used locally by following commands:
\n
$ git clone https://github.com/theIYD/source-me.git\n$ cd source-me\n$ npm install\n$ npm run dev
\n
The application has been abandoned and further updates have been stopped.
\n
",
"readmeOriginal": "
\n
Source me
\n
\n
Source Me is a cross platform desktop application which has some essential tools while making a project.
\n
\n
Version: 0.2.1
\n
Features
\n
\n
\n
Material Design Colors by Google\nThe application contains a full stack of material designed colors created by Google. These can be very useful when one needs these colors at one place. It uses react-tooltip to show the hex codes.
\n
\n
\n
Content Delivery Networks Library by CDN\nThese are libraries provided by cdn in one place. You can import the links to your project.
\n
\n
\n
Material Designed Icons by Google\nThese are material designed icons made by Google. It is similar to the colors component.
\n
\n
\n
Epsum Generator from bacon ipsum\nA generator which generates standalone text which can be useful to your HTML mockups.
\n
\n
\n
URL Shortner\nA URL shortener which uses a free is.gd to shorten urls quickly.
\n
\n
\n
Emoji Picker\nIt is a picker which has a curated list of Emojis. Click one of them & you get the unicode!
\n
\n
\n
Image Compressor\nA tool which compresses your images quickly. It uses @xkeshi/image-compressor.
SpotSpot is no longer maintained. It was a fun project, but I simply do not\nuse it any more. A great alternative looks to be\nLofi which is also more feature rich than\nSpotSpot.
\n
Development
\n
git clone git@github.com:will-stone/SpotSpot.git
\n
cd spotspot
\n
yarn
\n
yarn start
\n
To package use yarn run package
\n
",
"readmeOriginal": "
SpotSpot
\n
SpotSpot is no longer maintained. It was a fun project, but I simply do not\nuse it any more. A great alternative looks to be\nLofi which is also more feature rich than\nSpotSpot.
sqlui-native is a simple UI client for most SQL Engines written in Electron. It is compatible with most desktop OS's and support most dialects of RMBDs like MySQL, Microsoft SQL Server, Postgres, SQLite, Cassandra, MongoDB and Redis.\nIt supports multiple Windows, so you can have different sets of queries and connections side by side. The connections and queries are all stored locally, so you can continue where you left off in later visits.
\n
Downloads
\n
Refer to the following link for download information.
You can also drag and drop the file directly into sqlui-native application. At the moment, we only support drag and drop for a single file.
\n
\n
Session Management
\n
This application supports multiple windows / instances. Sessions are used to control which instances it persist the data with.\nAlso these sessions, and the associated connections and queries are persisted locally. So you can continue where you left off in the future.
\n
\n
Dark Mode
\n
Dark mode will be turned on automatically with respect to your OS Preference. You can update settings to prefer Dark Mode or Light Mode if desired.
\n
\n
Query Tabs
\n
Query Tab Orientation
\n
When there is more than 20 tabs, the query tabs will be wrapped vertically.
\n
\n
Reordering Query Tabs
\n
Query tabs can be re-ordered by drag and drop the query tabs bar.
\n
\n
Resizing the sidebar
\n
The left sidebar can be resized by clicking and dragging the small section between the sidebar and the query box.
\n
\n
Command Palette
\n
Similar to VS Code and Sublime Text, sqlui-native comes with a command palette that lets you reach your mostly used command via a key combo CMD + P or Ctrl + P on Windows.
\n
\n
Connection Hints
\n
Sample URI connection string can be accessed by clicking on the Show Connection Hints on New / Edit Connection Page. Then you can click on the sample URI connection to use that sample connection string as a starting place.
\n
\n
Settings
\n
Settings can be accessed via the top right menu icon. It allows you to set up preferred settings for things like Editor and Color Theme, etc...
sqlui-native is a simple UI client for most SQL Engines written in Electron. It is compatible with most desktop OS's and support most dialects of RMBDs like MySQL, Microsoft SQL Server, Postgres, SQLite, Cassandra, MongoDB and Redis.\nIt supports multiple Windows, so you can have different sets of queries and connections side by side. The connections and queries are all stored locally, so you can continue where you left off in later visits.
\n
Downloads
\n
Refer to the following link for download information.
You can also drag and drop the file directly into sqlui-native application. At the moment, we only support drag and drop for a single file.
\n
\n
Session Management
\n
This application supports multiple windows / instances. Sessions are used to control which instances it persist the data with.\nAlso these sessions, and the associated connections and queries are persisted locally. So you can continue where you left off in the future.
\n
\n
Dark Mode
\n
Dark mode will be turned on automatically with respect to your OS Preference. You can update settings to prefer Dark Mode or Light Mode if desired.
\n
\n
Query Tabs
\n
Query Tab Orientation
\n
When there is more than 20 tabs, the query tabs will be wrapped vertically.
\n
\n
Reordering Query Tabs
\n
Query tabs can be re-ordered by drag and drop the query tabs bar.
\n
\n
Resizing the sidebar
\n
The left sidebar can be resized by clicking and dragging the small section between the sidebar and the query box.
\n
\n
Command Palette
\n
Similar to VS Code and Sublime Text, sqlui-native comes with a command palette that lets you reach your mostly used command via a key combo CMD + P or Ctrl + P on Windows.
\n
\n
Connection Hints
\n
Sample URI connection string can be accessed by clicking on the Show Connection Hints on New / Edit Connection Page. Then you can click on the sample URI connection to use that sample connection string as a starting place.
\n
\n
Settings
\n
Settings can be accessed via the top right menu icon. It allows you to set up preferred settings for things like Editor and Color Theme, etc...
Want to ensure that a user journey which involves several steps with different protocols is working properly?\nDependencies messages have become a pain?\nHave you ever wondered how awesome it would be to have a GUI tool to save you from this agonizing pain? \nYou're welcome
Want to ensure that a user journey which involves several steps with different protocols is working properly?\nDependencies messages have become a pain?\nHave you ever wondered how awesome it would be to have a GUI tool to save you from this agonizing pain? \nYou're welcome
This application makes use of the core JS/CSS/HTML code found in the web repo. For issues related to the actual app experience, please post issues in the web repo.
yarn setup\nyarn build:web # Or `yarn dev:web`\nyarn dev\n\n# In another terminal\nyarn start
\n
We use commitlint to validate commit messages.\nBefore making a pull request, make sure to check the output of the following commands:
\n
yarn lint\nyarn test# Make sure to start `yarn dev` before running the tests, and quit any running Standard Notes applications so they don't conflict.
\n
Pull requests should target the develop branch.
\n
Installing dependencies
\n
To determine where to install a dependency:
\n
\n
If it is only required for building, install it in package.json's devDependencies
\n
If it is required at runtime but can be packaged by webpack, install it in package.json's dependencies.
\n
If it must be distributed as a node module (not packaged by webpack), install it in app/package.json's dependencies\n
\n
Also make sure to declare it as an external commonjs dependency in webpack.common.js.
\n
\n
\n
\n
Building
\n
Build for all platforms:
\n
\n
yarn release
\n
\n
Building natively on arm64
\n
Building arm64 releases on amd64 systems is only possible with AppImage, Debian and universal \"dir\" targets.
\n
Building arm64 releases natively on arm64 systems requires some additional preparation:
\n
\n
export npm_config_target_arch=arm64
\n
export npm_config_arch=arm64
\n
\n
A native fpm installation is needed for Debian builds. fpm needs to be available in $PATH, which can be achieved by running
\n
\n
gem install fpm --no-document
\n
\n
and making sure $GEM_HOME/bin is added to $PATH.
\n
Snap releases also require a working snapcraft / snapd installation.
\n
Building can then be done by running:
\n
\n
yarn setup
\n
\n
Followed by
\n
\n
node scripts/build.mjs deb-arm64
\n
\n
Installation
\n
On Linux, download the latest AppImage from the Releases page, and give it executable permission:
\n
chmod u+x standard-notes*.AppImage
\n
",
"readmeOriginal": "
Standard Notes
\n
\n
\n\n\n
\n
\n
This application makes use of the core JS/CSS/HTML code found in the web repo. For issues related to the actual app experience, please post issues in the web repo.
Sync Your Note With Dropbox Account(Use This Account To Start Your Sticky Notes Where You Left Off)
\n
Choose Background And Title Bar Color You Like
\n
Editing Options Like Font,Bold,Size,Italic,List,Align.etc
\n
Add Images To Note From Local Drive
\n
Add Audio To Note From Local Drive
\n
Add Video To Note From Local Drive
\n
Lock The Note
\n
Import Note From A File
\n
Export Note To A File
\n
Undo,Redo Options
\n
Spellcheck
\n
Profiles
\n
Light And Dark Theme
\n
If you like my App please consider buying me a coffee at HERE!
\n
Stable Release
\n
For Linux
\n
\n
Unstable Release
\n
For Development Version Follow the instructions below
\n
if you want to try it install nodejs, git, Vue CLI, pnpm and clone this repository
\n
git clone https://github.com/Playork/StickyNotes
\n
point to source directory
\n
cd /path/to/source/of/StickyNotes
\n
and install dependence by
\n
pnpm install
\n
to try application or develop run application by this command
\n
pnpm start
\n
for daily use or production build application by this command
\n
pnpm run build
\n
Licence
\n
MIT License (MIT)
\n
Copyright (c) 2020 Playork
\n
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\n
",
"readmeOriginal": "
Description
\n
\n
\n
A Open Source Sticky Note Application.
\n
Automatically Save Notes
\n
Sync Your Note With Dropbox Account(Use This Account To Start Your Sticky Notes Where You Left Off)
\n
Choose Background And Title Bar Color You Like
\n
Editing Options Like Font,Bold,Size,Italic,List,Align.etc
\n
Add Images To Note From Local Drive
\n
Add Audio To Note From Local Drive
\n
Add Video To Note From Local Drive
\n
Lock The Note
\n
Import Note From A File
\n
Export Note To A File
\n
Undo,Redo Options
\n
Spellcheck
\n
Profiles
\n
Light And Dark Theme
\n
If you like my App please consider buying me a coffee at HERE!
\n
Stable Release
\n
For Linux
\n
\n
Unstable Release
\n
For Development Version Follow the instructions below
\n
if you want to try it install nodejs, git, Vue CLI, pnpm and clone this repository
\n
git clone https://github.com/Playork/StickyNotes
\n
point to source directory
\n
cd /path/to/source/of/StickyNotes
\n
and install dependence by
\n
pnpm install
\n
to try application or develop run application by this command
\n
pnpm start
\n
for daily use or production build application by this command
\n
pnpm run build
\n
Licence
\n
MIT License (MIT)
\n
Copyright (c) 2020 Playork
\n
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Real time stock alerts and updates through desktop notifications
\n
Visualization of stock prices and key indicators
\n
Stock forecasts and predictions through machine learning
\n
In-built database to store all your monitored stocks
\n
\n
Screenshots
\n
\n\n\n\n\n\n\n\n
\n
\n
Built With
\n
\n
Electron
\n
HTML5
\n
CSS3
\n
Node.js
\n
Bootstrap
\n
Tensorflow JS
\n
\n
Contributing
\n
Prerequisites:
\n
\n
Node.js and NPM
\n
Python 2 (for packaging and distribution)
\n
\n
Configuring development environment
\n
Once you have cloned/downloaded the repository, issue the npm install command in the root directory. This should install all the required packages including Electron.
\n
Once complete, you may issue the npm start command to launch the Electron window and start the app.
Real time stock alerts and updates through desktop notifications
\n
Visualization of stock prices and key indicators
\n
Stock forecasts and predictions through machine learning
\n
In-built database to store all your monitored stocks
\n
\n
Screenshots
\n
\n\n\n\n\n\n\n\n
\n
\n
Built With
\n
\n
Electron
\n
HTML5
\n
CSS3
\n
Node.js
\n
Bootstrap
\n
Tensorflow JS
\n
\n
Contributing
\n
Prerequisites:
\n
\n
Node.js and NPM
\n
Python 2 (for packaging and distribution)
\n
\n
Configuring development environment
\n
Once you have cloned/downloaded the repository, issue the npm install command in the root directory. This should install all the required packages including Electron.
\n
Once complete, you may issue the npm start command to launch the Electron window and start the app.
Soundnode App is an Open-Source project to support Soundcloud for desktop Mac, Windows, and Linux. \nIt's built with Electron, Node.js, Angular.js, and uses the Soundcloud API.
\n
\n
Be aware that Soundnode relies on Soundcloud API which only allows third party apps to play 15 thousand tracks daily. When the rate limit is reached all users are blocked from playing/streaming tracks. The stream will be re-enable one day after (at the same time) streams were blocked.
First, building, testing, and reporting bugs is highly appreciated. Please include the console's output and steps to reproduce the problem in your bug report, if possible.
\n
If you want to develop, you can look at the issues, especially the bugs, and then fix them.\nHere's a list of issues.
Thanks to all contributors that are helping or helped making Soundnode better.
\n
License
\n
GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 license.
\n
",
"readmeOriginal": "
\n
Soundnode App
\n
Soundnode App is an Open-Source project to support Soundcloud for desktop Mac, Windows, and Linux. \nIt's built with Electron, Node.js, Angular.js, and uses the Soundcloud API.
\n
\n
Be aware that Soundnode relies on Soundcloud API which only allows third party apps to play 15 thousand tracks daily. When the rate limit is reached all users are blocked from playing/streaming tracks. The stream will be re-enable one day after (at the same time) streams were blocked.
First, building, testing, and reporting bugs is highly appreciated. Please include the console's output and steps to reproduce the problem in your bug report, if possible.
\n
If you want to develop, you can look at the issues, especially the bugs, and then fix them.\nHere's a list of issues.
StreamBop is a software that allows you to play music on your livestreams, credit currently playing music, avoid legal issues, allow audio mixing, customizability and more..
\n
Downloading
\n
Linux users can use Snap.\n
\n
snap install streambop\n
\n
Windows users can check the releases tab, or:
\n
winget install streambop\n
\n
on windows 11.
\n
\n
",
"readmeOriginal": "
StreamBop
\n
StreamBop is a software that allows you to play music on your livestreams, credit currently playing music, avoid legal issues, allow audio mixing, customizability and more..
If you think Storaji is useful, let me know by putting a star on this project 😉
\n
Screenshots
\n
\n \n
\n
Why
\n
Mainly designed for small-to-medium companies, Storaji is a modern and very intuitive inventory management application built with some of the trendiest web technologies.\nRight off the bat, it's worth pointing out that this is by no means a professional software for inventory management. Be that as it may, it can still prove itself fairly useful as it boasts an interesting set of primary features.
\n
I believe there are many people who needs a simple tool to manage everything from product inventories to orders and of course it's free to use.
Open terminal and cd into the cloned folder, usually cd storaji-ui.
\n
Modify app.ts under src/app/shared/classes/ directory, and change value of api to your local api server, usually api: 'https://localhost:8000/api'.
\n
Run npm install to install dependencies.
\n
Run npm run ng:serve to serve the app as web-based at https://localhost:4200.
\n
Now it's ready to use for development.
\n
\n
When you have make changes and everything works on angular, and wanna check on desktop app.
\n
\n
Run npm start to build the app from source and run the app as desktop app.
\n
\n
For linting and testing
\n
\n
Run npm test to check if the source code is passing from linting and testing.
\n
\n
\n
This is still in beta and it's far from perfect so feedbacks, issues or PRs are greatly appreciated! :)
\n
\n
Note that on Linux you will need additional dependencies to provide the icns2png and gm commands. Ubuntu/Debian users can run: sudo apt install -y icnsutils graphicsmagick.
You will not use this repository for malicious activity.
\n
We / You will not support anyone who is violating this EULA conditions.
\n
Repository is just for learning / personal purposes thus should not be part of any service available on the Internet that is trying to do any malicious activity.
\n
\n
Legal
\n
This is a free and open source app. Use it at your own risk.
\n
",
"readmeOriginal": "
The project is no longer maintained, but you still can use this with your own private server. Check out the development section how to install it.
If you think Storaji is useful, let me know by putting a star on this project 😉
\n
Screenshots
\n
\n \n
\n
Why
\n
Mainly designed for small-to-medium companies, Storaji is a modern and very intuitive inventory management application built with some of the trendiest web technologies.\nRight off the bat, it's worth pointing out that this is by no means a professional software for inventory management. Be that as it may, it can still prove itself fairly useful as it boasts an interesting set of primary features.
\n
I believe there are many people who needs a simple tool to manage everything from product inventories to orders and of course it's free to use.
Open terminal and cd into the cloned folder, usually cd storaji-ui.
\n
Modify app.ts under src/app/shared/classes/ directory, and change value of api to your local api server, usually api: 'https://localhost:8000/api'.
\n
Run npm install to install dependencies.
\n
Run npm run ng:serve to serve the app as web-based at https://localhost:4200.
\n
Now it's ready to use for development.
\n
\n
When you have make changes and everything works on angular, and wanna check on desktop app.
\n
\n
Run npm start to build the app from source and run the app as desktop app.
\n
\n
For linting and testing
\n
\n
Run npm test to check if the source code is passing from linting and testing.
\n
\n
\n
This is still in beta and it's far from perfect so feedbacks, issues or PRs are greatly appreciated! :)
\n
\n
Note that on Linux you will need additional dependencies to provide the icns2png and gm commands. Ubuntu/Debian users can run: sudo apt install -y icnsutils graphicsmagick.
You will not use this repository for malicious activity.
\n
We / You will not support anyone who is violating this EULA conditions.
\n
Repository is just for learning / personal purposes thus should not be part of any service available on the Internet that is trying to do any malicious activity.
\n
\n
Legal
\n
This is a free and open source app. Use it at your own risk.
A cool app to study with markdown.\nTurns your Markdown-Summaries to Flashcard.
\n
\n
Example (Card-Title header-level is choosable):
\n
#Example\n###Use Markdown\n**Bold***Italic* and [link](github.com)\n###Use Tables\n| 1 | first step |\n| ---- | ----------- |\n| 2 | second step |\n| 3 | third step |\n###*Math!!* e.g. What is f(x)?\n$y = \\frac{27}{4}$
# Clone this repository\ngit clone https://github.com/jotron/StudyMD.git\n# Go into the repository\ncd StudyMD\n# Install dependencies\nyarn install\n# Run the app\nyarn start
A cool app to study with markdown.\nTurns your Markdown-Summaries to Flashcard.
\n
\n
Example (Card-Title header-level is choosable):
\n
#Example\n###Use Markdown\n**Bold***Italic* and [link](github.com)\n###Use Tables\n| 1 | first step |\n| ---- | ----------- |\n| 2 | second step |\n| 3 | third step |\n###*Math!!* e.g. What is f(x)?\n$y = \\frac{27}{4}$
# Clone this repository\ngit clone https://github.com/jotron/StudyMD.git\n# Go into the repository\ncd StudyMD\n# Install dependencies\nyarn install\n# Run the app\nyarn start
Subordination is a desktop application for translating and editing subtitles. Currently only SRT format is supported.
\n
Building from source
\n
Subordination is an Electron app. It's written in JavaScript with extensive use of Vue.js, Vuex and highly customised version of Photon. Note that you need to have npm and git installed on you machine. First get the source code:
Now install the dependencies for development and runtime. Note that the webchimera.js package may fail to install. It's a native module and npm will try to compile it from source, but it's not necessary, because Subordination loads its binary version separately. Just ignore all errors related to it.
\n
Also note that Subordination uses a project structure with two package.json files. See more for details.
\n
cd app\nnpm run prepare\ncd ..\nnpm install
\n
Now you can build and launch a debug version:
\n
npm run build-dev\nnpm start
\n
Or you can try to build a full-fledged binary. All the executables are stored inside the installers folder.
\n
npm run build-release\nnpm run dist:osx\nnpm run dist:win
\n
A Linux version
\n
Currently Subordination is available only on Mac and Windows. The author doesn't use Linux on desktop and can't create anything decent for it. But there is no fundamental problem with it. All the components used in Subordinations can be run on Linux as well. If you want to contribute, please let me know, I'd gladly accept your pull requests.
\n
",
"readmeOriginal": "
Subordination
\n
Subordination is a desktop application for translating and editing subtitles. Currently only SRT format is supported.
\n
Building from source
\n
Subordination is an Electron app. It's written in JavaScript with extensive use of Vue.js, Vuex and highly customised version of Photon. Note that you need to have npm and git installed on you machine. First get the source code:
Now install the dependencies for development and runtime. Note that the webchimera.js package may fail to install. It's a native module and npm will try to compile it from source, but it's not necessary, because Subordination loads its binary version separately. Just ignore all errors related to it.
\n
Also note that Subordination uses a project structure with two package.json files. See more for details.
\n
cd app\nnpm run prepare\ncd ..\nnpm install
\n
Now you can build and launch a debug version:
\n
npm run build-dev\nnpm start
\n
Or you can try to build a full-fledged binary. All the executables are stored inside the installers folder.
\n
npm run build-release\nnpm run dist:osx\nnpm run dist:win
\n
A Linux version
\n
Currently Subordination is available only on Mac and Windows. The author doesn't use Linux on desktop and can't create anything decent for it. But there is no fundamental problem with it. All the components used in Subordinations can be run on Linux as well. If you want to contribute, please let me know, I'd gladly accept your pull requests.
First, clone the repo via git and install dependencies:
\n
yarn
\n
Run Development
\n
Start the app in the dev environment. This starts the renderer process in hot-module-replacement mode and starts a webpack dev server that sends hot updates to the renderer process:
First, clone the repo via git and install dependencies:
\n
yarn
\n
Run Development
\n
Start the app in the dev environment. This starts the renderer process in hot-module-replacement mode and starts a webpack dev server that sends hot updates to the renderer process:
We use Yarn as our package manager. We use yarn modern (berry) with\nthe yarn version checked in to version control. To get the yarn CLI,\nwe currently recommend installing it with npm:
\n
npm install -g yarn\n
\n
Bash
\n
Some of our scripts assume a bash-like environment. On Windows, we recommend\nusing Git Bash, which is included with Git for Windows. On macOS, the\ndefault shell should work fine.
\n
Native Modules
\n
Streamlabs Desktop uses several native C++ modules. These are NPM modules\nthat live in separate repositories, and are automatically installed as prebuilt\nbinaries by Yarn. If you are not doing any development on these native modules,\nno additional action is required to install native modules.
\n
Installation
\n
Install all node modules via yarn:
\n
yarn install\n
\n
Then, compile assets with webpack:
\n
yarn compile\n
\n
Alternatively, you can watch for changes to app files:
\n
yarn watch\n
\n
Starting
\n
You can start the app by running:
\n
yarn start\n
\n
Environment Variables
\n
These variables can be used in development to force certain behavior.
\n
SLOBS_FORCE_AUTO_UPDATE: Force the auto-updater to run in development. Normally\nthis would only run in production.
\n
SLOBS_CACHE_DIR: Force a different location for the user data cache directory.
\n
SLOBS_DISABLE_MAIN_LOGGING: Disable javascript logging in the main process.
\n
SLOBS_REPORT_TO_SENTRY: Report errors to sentry in the dev environment
\n
SLOBS_PRODUCTION_DEBUG: Forces dev tools to open when the app starts
\n
Development
\n
You can open dev tools by clicking the </> button on the sidebar.\nIn the development environment, the titlebar of the main window will\nlight up red when an exception occurs in any window.
\n
Our app is comprised of several windows, which are essential separate\ncopies of the same Javascript app, which are running different pieces\nof the code and communicating via Electron IPC.
\n
worker - This is a persistent invisible window that runs our entire\nservices layer.
\n
main - This is the main window of the application. It communicates\nwith the worker window to perform actions.
\n
child - This window is always running in the background, and appears\nto show windows like Source Properties. It stays always running because\nElectron windows can take several seconds to initialize, so we keep it\nready in the background.
\n
There are potentially many other JS runtime processes that can be running\ndepending on use, for features like Apps, embedded webviews, one-off windows\nlike projectors, pop-outs etc.
\n
Sync / Async
\n
Given the heavy reliance on interprocess communication in our application,\nwe strongly recommend using asynchronous IPC whenever possible. When\naccessing a service, calling it as an action will call it asynchronously.
\n
For example the following (synchronous):
\n
StreamingService.toggleStreaming()\n
\n
Can be rewritten as (asynchronous):
\n
StreamingService.actions.toggleStreaming()\n
\n
The return type of the latter will automatically be void as actions\nare unable to return values. In general, receiving information from\nservices is best done via views. views are executed in-window, and\nbacked by our vuex data store, which is replicated across windows.
\n
Vue / React
\n
We are in the process of migrating from Vue to React. There are many components\nof both frameworks in our codebase currently. All new components should be\nwritten in React, and major non-trivial changes to existing Vue components\nshould be accompanied with a rewrite to React.
\n
We exclusively use functional components in React, relying on the hooks API\nfor things like component state and lifecycle.
\n
Contributing
\n
We accept outside contributions, and do our best to respond to Pull Requests.\nWe ask that all contributors sign a Contributor License Agreement before merging\ncode. We do not guarantee that all external Pull Requests will be merged, but\nwe deeply appreciate any and all changes submitted. Thank you for your interest\nand contribution.
\n
Translations
\n
At this time, we are not able to accept translations submitted to GitHub, as we\nuse a professional translation team that manages translations elsewhere.
\n
Packaging/Distribution
\n
For Windows:
\n
yarn package\n
\n
For macOS:
\n
yarn package:mac\n
\n
Note that both of these commands require code signing certificates to be\npresent in the environment, and in the case of macOS, a valid Apple developer\naccount for notarization of the app package.
\n
There are some environment variables that can be passed to skip these steps:
\n
SLOBS_NO_SIGN Do not attempt to codesign the app package
\n
SLOBS_NO_NOTARIZE Do not attempt to notarize the macOS package
\n
❤ OBS Developers
\n
At its core, Streamlabs Desktop is powered by the OBS\nproject. We want to thank all of the developers over at the OBS project for\ntheir years of tireless hard work, without which Streamlabs Desktop wouldn't exist today.
\n
",
"readmeOriginal": "
Streamlabs Desktop
\n
\n
Simple, powerful, and efficient live streaming software built on Electron and OBS.
\n
\n
This application currently only supports OSX 10.14+ and 64-bit Windows.
\n
Dependencies
\n
Node.js
\n
Node is required for installing npm packages and for running\nvarious scripts. We recommend the latest LTS release.
We use Yarn as our package manager. We use yarn modern (berry) with\nthe yarn version checked in to version control. To get the yarn CLI,\nwe currently recommend installing it with npm:
\n
npm install -g yarn\n
\n
Bash
\n
Some of our scripts assume a bash-like environment. On Windows, we recommend\nusing Git Bash, which is included with Git for Windows. On macOS, the\ndefault shell should work fine.
\n
Native Modules
\n
Streamlabs Desktop uses several native C++ modules. These are NPM modules\nthat live in separate repositories, and are automatically installed as prebuilt\nbinaries by Yarn. If you are not doing any development on these native modules,\nno additional action is required to install native modules.
\n
Installation
\n
Install all node modules via yarn:
\n
yarn install\n
\n
Then, compile assets with webpack:
\n
yarn compile\n
\n
Alternatively, you can watch for changes to app files:
\n
yarn watch\n
\n
Starting
\n
You can start the app by running:
\n
yarn start\n
\n
Environment Variables
\n
These variables can be used in development to force certain behavior.
\n
SLOBS_FORCE_AUTO_UPDATE: Force the auto-updater to run in development. Normally\nthis would only run in production.
\n
SLOBS_CACHE_DIR: Force a different location for the user data cache directory.
\n
SLOBS_DISABLE_MAIN_LOGGING: Disable javascript logging in the main process.
\n
SLOBS_REPORT_TO_SENTRY: Report errors to sentry in the dev environment
\n
SLOBS_PRODUCTION_DEBUG: Forces dev tools to open when the app starts
\n
Development
\n
You can open dev tools by clicking the </> button on the sidebar.\nIn the development environment, the titlebar of the main window will\nlight up red when an exception occurs in any window.
\n
Our app is comprised of several windows, which are essential separate\ncopies of the same Javascript app, which are running different pieces\nof the code and communicating via Electron IPC.
\n
worker - This is a persistent invisible window that runs our entire\nservices layer.
\n
main - This is the main window of the application. It communicates\nwith the worker window to perform actions.
\n
child - This window is always running in the background, and appears\nto show windows like Source Properties. It stays always running because\nElectron windows can take several seconds to initialize, so we keep it\nready in the background.
\n
There are potentially many other JS runtime processes that can be running\ndepending on use, for features like Apps, embedded webviews, one-off windows\nlike projectors, pop-outs etc.
\n
Sync / Async
\n
Given the heavy reliance on interprocess communication in our application,\nwe strongly recommend using asynchronous IPC whenever possible. When\naccessing a service, calling it as an action will call it asynchronously.
\n
For example the following (synchronous):
\n
StreamingService.toggleStreaming()\n
\n
Can be rewritten as (asynchronous):
\n
StreamingService.actions.toggleStreaming()\n
\n
The return type of the latter will automatically be void as actions\nare unable to return values. In general, receiving information from\nservices is best done via views. views are executed in-window, and\nbacked by our vuex data store, which is replicated across windows.
\n
Vue / React
\n
We are in the process of migrating from Vue to React. There are many components\nof both frameworks in our codebase currently. All new components should be\nwritten in React, and major non-trivial changes to existing Vue components\nshould be accompanied with a rewrite to React.
\n
We exclusively use functional components in React, relying on the hooks API\nfor things like component state and lifecycle.
\n
Contributing
\n
We accept outside contributions, and do our best to respond to Pull Requests.\nWe ask that all contributors sign a Contributor License Agreement before merging\ncode. We do not guarantee that all external Pull Requests will be merged, but\nwe deeply appreciate any and all changes submitted. Thank you for your interest\nand contribution.
\n
Translations
\n
At this time, we are not able to accept translations submitted to GitHub, as we\nuse a professional translation team that manages translations elsewhere.
\n
Packaging/Distribution
\n
For Windows:
\n
yarn package\n
\n
For macOS:
\n
yarn package:mac\n
\n
Note that both of these commands require code signing certificates to be\npresent in the environment, and in the case of macOS, a valid Apple developer\naccount for notarization of the app package.
\n
There are some environment variables that can be passed to skip these steps:
\n
SLOBS_NO_SIGN Do not attempt to codesign the app package
\n
SLOBS_NO_NOTARIZE Do not attempt to notarize the macOS package
\n
❤ OBS Developers
\n
At its core, Streamlabs Desktop is powered by the OBS\nproject. We want to thank all of the developers over at the OBS project for\ntheir years of tireless hard work, without which Streamlabs Desktop wouldn't exist today.
If you have found any bugs or just want to see some new features in Switch, feel free to open an issue. I'm open to any suggestions and bug reports would be really helpful. Switch is under development and some bugs may occur. Also, please don't hesitate to open a pull request.
\n
Running
\n
Before running Switch in development mode, please ensure you have Node.js installed on your machine.
If you have found any bugs or just want to see some new features in Switch, feel free to open an issue. I'm open to any suggestions and bug reports would be really helpful. Switch is under development and some bugs may occur. Also, please don't hesitate to open a pull request.
\n
Running
\n
Before running Switch in development mode, please ensure you have Node.js installed on your machine.
Keep organized and focused! Plan and categorize your tasks using sub tasks, projects and tags and color code them as needed.
\n
Use timeboxing and track your time. Create time sheets and work summaries in a breeze to easily export them to your company's time tracking system.
\n
Helps you to establish healthy & productive habits:\n
\n
A break reminder reminds to you, when it's time to step away.
\n
The anti-procrastination feature helps you gain perspective, when you really need to.
\n
Need some extra focus? A pomodoro timer is also always at hand.
\n
Collect personal metrics to see, which of your work routines need adjustments.
\n
\n
\n
Integrate with Jira, GitHub, GitLab and OpenProject. Auto import tasks assigned to you, plan the details locally, automatically create worklogs and get notified right away, when something changes.
\n
Attach context information to tasks and projects. Create notes, attach files or create project level bookmarks for links, files and even commands.
\n
Super Productivity respects your privacy and does NOT collect any data and there are no user accounts or registration. You decide where you store your data!
There is another article on how I personally might use the app - and still another one on how I implement the 'eat the frog' prioritizing scheme in the app .
S: Open schedule dialog for currently focused task
\n
Backspace: Delete currently focused task
\n
ArrowRight: Open additional info panel for currently focused task
\n
Ctrl+Shift+ArrowUp: Move currently focused task up in list
\n
Ctrl+Shift+ArrowDown: Move currently focused task down in list
\n
\n
Short-Syntax
\n
Can be used when adding a task.
\n
\n
# <tag-name>: add a tag to the task \n(\"task-description #tag1\")
\n
<number>m or <number>h: set time-estimate for the task \n(\"task-description 10m\" or \"task-description 5h\")
\n
+ <project-name>: add the task to an existing project \n(\"task-description +Important Project\")
\n
\n\n
🌐 Web Version
\n
Check out the web version eventhough it is a bit limited: Time tracking only works if the app is open and for idle time tracking to work, the chrome extension has to be installed.
\n
If you want the Jira integration and idle time tracking to work, you have to also download and install the Super Productivity Chrome Extension.
Due to certification issues it's recommended to download the app from the Microsoft Store:
\n
\n
Linux
\n
# stable\nsudo snap install superproductivity\n\n# edge channel releases\n sudo snap install --channel=edge superproductivity\n\n # it is also recommended to disable updates to the app while it is running:\n sudo snap set core experimental.refresh-app-awareness=true\n
Spread the word: More users means more people testing and contributing to the app which in turn means better stability and possibly more and better features. You can vote for Super Productivity on Slant, Product Hunt, Softpedia or on AlternativeTo, you can tweet about it, share it on LinkedIn, reddit or any of your favorite social media platforms. Every little bit helps!
Translations, Icons, etc.: You don't have to be programmer to help. Some of the icons really need improvement and many of the translations could use some love.
cd super-productivity\nnpm i -g @angular/cli\nnpm i\n
\n
Run the dev server
\n
ng serve\n
\n
Afterwards you can open http://localhost:4200 in your browser. For most adjustments this should be enough and also enables you to use the redux dev tools.
\n
If you want to run the app standalone do the following:
\n
ng serve\n\n# in a new console tab\nnpm start\n
\n
Packaging the app
\n
Packaging the app is done via electron-builder. To start packaging run npm run dist. If you want to add new platforms and experiment with the build options the easiest way to do so is manipulating the build property in the package.json, but you can also use the command line interface of electron builder.
\n
Run as Docker Container
\n
docker run -d -p 80:80 johannesjo/super-productivity:latest\n
\n
Custom themes (desktop only)
\n
In addition to color coding your projects and tags and to the dark and light theme you can also load completely custom css to restyle everything. To load a custom theme you simply need put them into a new file named styles.css directly in the user data folder.
If using the integrated WebDAV Syncing is not working out for you, you can also try to sync all app files, which are located in the user data folder.
\n
Automatic Backups
\n
For the desktop version automatic backups are stored per default in the backup sub folder of the user data folder. Once you located a backup you can restore it on the settings page under Sync & Export/Import/Export/Import from file.
\n
User Data Folder
\n
Where user data is stored differs from os to os. The most common locations are:\nMac OS: ~/Library/Application Support/superProductivity/\nWindows: C:\\Users\\<YOUR_USER_NAME>\\AppData\\Roaming\\superProductivity/ or %APPDATA%\\superProductivity\nLinux: ~/.config/superProductivity/
\n
The path should be shown when you go to the \"Automatic Backups` section on the configuration page (minus the \"backup\" sub folder). You can also see it printed out when you start the app from the command line.
\n
For web browsers data is simply stored for the current user inside the browser storage.
\n
Using a custom folder to save user data
\n
You can specify a custom folder for saving your data by starting the application with the --user-data-dir parameter like so:
Keep organized and focused! Plan and categorize your tasks using sub tasks, projects and tags and color code them as needed.
\n
Use timeboxing and track your time. Create time sheets and work summaries in a breeze to easily export them to your company's time tracking system.
\n
Helps you to establish healthy & productive habits:\n
\n
A break reminder reminds to you, when it's time to step away.
\n
The anti-procrastination feature helps you gain perspective, when you really need to.
\n
Need some extra focus? A pomodoro timer is also always at hand.
\n
Collect personal metrics to see, which of your work routines need adjustments.
\n
\n
\n
Integrate with Jira, GitHub, GitLab and OpenProject. Auto import tasks assigned to you, plan the details locally, automatically create worklogs and get notified right away, when something changes.
\n
Attach context information to tasks and projects. Create notes, attach files or create project level bookmarks for links, files and even commands.
\n
Super Productivity respects your privacy and does NOT collect any data and there are no user accounts or registration. You decide where you store your data!
There is another article on how I personally might use the app - and still another one on how I implement the 'eat the frog' prioritizing scheme in the app .
S: Open schedule dialog for currently focused task
\n
Backspace: Delete currently focused task
\n
ArrowRight: Open additional info panel for currently focused task
\n
Ctrl+Shift+ArrowUp: Move currently focused task up in list
\n
Ctrl+Shift+ArrowDown: Move currently focused task down in list
\n
\n
Short-Syntax
\n
Can be used when adding a task.
\n
\n
# <tag-name>: add a tag to the task \n(\"task-description #tag1\")
\n
<number>m or <number>h: set time-estimate for the task \n(\"task-description 10m\" or \"task-description 5h\")
\n
+ <project-name>: add the task to an existing project \n(\"task-description +Important Project\")
\n
\n\n
🌐 Web Version
\n
Check out the web version eventhough it is a bit limited: Time tracking only works if the app is open and for idle time tracking to work, the chrome extension has to be installed.
\n
If you want the Jira integration and idle time tracking to work, you have to also download and install the Super Productivity Chrome Extension.
Due to certification issues it's recommended to download the app from the Microsoft Store:
\n
\n
Linux
\n
# stable\nsudo snap install superproductivity\n\n# edge channel releases\n sudo snap install --channel=edge superproductivity\n\n # it is also recommended to disable updates to the app while it is running:\n sudo snap set core experimental.refresh-app-awareness=true\n
Spread the word: More users means more people testing and contributing to the app which in turn means better stability and possibly more and better features. You can vote for Super Productivity on Slant, Product Hunt, Softpedia or on AlternativeTo, you can tweet about it, share it on LinkedIn, reddit or any of your favorite social media platforms. Every little bit helps!
Translations, Icons, etc.: You don't have to be programmer to help. Some of the icons really need improvement and many of the translations could use some love.
cd super-productivity\nnpm i -g @angular/cli\nnpm i\n
\n
Run the dev server
\n
ng serve\n
\n
Afterwards you can open http://localhost:4200 in your browser. For most adjustments this should be enough and also enables you to use the redux dev tools.
\n
If you want to run the app standalone do the following:
\n
ng serve\n\n# in a new console tab\nnpm start\n
\n
Packaging the app
\n
Packaging the app is done via electron-builder. To start packaging run npm run dist. If you want to add new platforms and experiment with the build options the easiest way to do so is manipulating the build property in the package.json, but you can also use the command line interface of electron builder.
\n
Run as Docker Container
\n
docker run -d -p 80:80 johannesjo/super-productivity:latest\n
\n
Custom themes (desktop only)
\n
In addition to color coding your projects and tags and to the dark and light theme you can also load completely custom css to restyle everything. To load a custom theme you simply need put them into a new file named styles.css directly in the user data folder.
If using the integrated WebDAV Syncing is not working out for you, you can also try to sync all app files, which are located in the user data folder.
\n
Automatic Backups
\n
For the desktop version automatic backups are stored per default in the backup sub folder of the user data folder. Once you located a backup you can restore it on the settings page under Sync & Export/Import/Export/Import from file.
\n
User Data Folder
\n
Where user data is stored differs from os to os. The most common locations are:\nMac OS: ~/Library/Application Support/superProductivity/\nWindows: C:\\Users\\<YOUR_USER_NAME>\\AppData\\Roaming\\superProductivity/ or %APPDATA%\\superProductivity\nLinux: ~/.config/superProductivity/
\n
The path should be shown when you go to the \"Automatic Backups` section on the configuration page (minus the \"backup\" sub folder). You can also see it printed out when you start the app from the command line.
\n
For web browsers data is simply stored for the current user inside the browser storage.
\n
Using a custom folder to save user data
\n
You can specify a custom folder for saving your data by starting the application with the --user-data-dir parameter like so:
SwitchHosts stores data at ~/.SwitchHosts (Or folder .SwitchHosts under the current user's home\npath on Windows), the ~/.SwitchHosts/data folder contains data, while the ~/.SwitchHosts/config\nfolder contains various configuration information.
Run npm run make, if everything goes well, the packaged files will be in the ./dist folder.
\n
This command may take several minutes to finish when you run it the first time, as it needs time\nto download dependent files. You can download the dependencies\nmanually here,\nor Taobao mirror, then save the files to ~/.electron\n. You can check the Electron Docs for more infomation.
\n
\n
# build\nnpm run build\n\n# make\nnpm run make # the packed files will be in ./dist
\n
Copyright
\n
SwitchHosts is a free and open source software, it is released under the Apache License.
SwitchHosts stores data at ~/.SwitchHosts (Or folder .SwitchHosts under the current user's home\npath on Windows), the ~/.SwitchHosts/data folder contains data, while the ~/.SwitchHosts/config\nfolder contains various configuration information.
Run npm run make, if everything goes well, the packaged files will be in the ./dist folder.
\n
This command may take several minutes to finish when you run it the first time, as it needs time\nto download dependent files. You can download the dependencies\nmanually here,\nor Taobao mirror, then save the files to ~/.electron\n. You can check the Electron Docs for more infomation.
\n
\n
# build\nnpm run build\n\n# make\nnpm run make # the packed files will be in ./dist
\n
Copyright
\n
SwitchHosts is a free and open source software, it is released under the Apache License.
Simple, beautiful timetable application to track your school schedule. You can add tasks, change theme with available dark mode and choose language.\nMade by me and KDani-99. We used this bootstrap to make it https://github.com/maximegris/angular-electron.
\n
To use it, just download the latest version from the releases and run it.\nAvailable for Windows, Mac, Android and iOS.
If you think something is broken, open an issue ticket.
\n
",
"readmeOriginal": "
About
\n
Simple, beautiful timetable application to track your school schedule. You can add tasks, change theme with available dark mode and choose language.\nMade by me and KDani-99. We used this bootstrap to make it https://github.com/maximegris/angular-electron.
\n
To use it, just download the latest version from the releases and run it.\nAvailable for Windows, Mac, Android and iOS.
Syng is a free, open source, Chinese-To-English and English-To-Chinese Dictionary app that makes it easy to lookup words and phrases quickly. Currently Syng works on macOS, Windows, and Linux systems.
\n
Name
\n
Syng is a stylized spelling of cíyīng, the Pinyin for 词应. 词应 has been shorted from 词典应用, literally translating to Dictionary App.
\n
Features
\n
\n
Search\n
\n
Syng allows you to search by Pinyin, English, and Chinese characters (both traditional and simplified)
\n
\n
\n
Study\n
\n
Syng makes it easy to study Chinese by creating flash cards out of your saved words and searches.
\n
Syng also tests you on your knowledge and progress of your Chinese to measure your language development.
\n
\n
\n
Bookmarks\n
\n
Syng allows you to save words and searches to your bookmarks, so that you can reference them later, and even create custom vocab lists.
\n
\n
\n
Reader\n
\n
Syng lets you read Chinese text from your clipboard or from the web with an easy to use popup dictionary.
\n
\n
\n
Offline Support\n
\n
No internet connection required for most features
\n
\n
\n
Cross-Platform\n
\n
Mac OS X
\n
Windows
\n
Linux
\n
\n
\n
Prettify Pinyin\n
\n
Convert pinyin with tone numbers with tone marks
\n
\n
\n
Convert Characters\n
\n
Convert between traditional and simplified characters
\n
\n
\n
Pinyinify\n
\n
Convert 汉字 into hànzì. Turn characters into pinyin
\n
\n
\n
Character Stroke Animations\n
\n
View character stroke order animations to study writing characters
\n
\n
\n
\n
What's new?
\n
These are few feature additions and visual changes in v1.5.0. For a full list of changes, see the changelog.
To install Syng on Linux, you can you use the pre-built installation script by copy and pasting the code below into terminal. It's good to be cautious about what you are putting in your terminal, you can read the 64-bit install script here and the 32-bit install script here.
\n
For 64-bit systems:
\n
wget -O- https://bit.ly/2weiJxU | bash\n
\n
For 32-bit systems:
\n
wget -O- https://bit.ly/2OLXtay | bash\n
\n
Alternatively, if you aren't comfortable running the pre-built installation script, you can install manually by downloading the 64-bit candidate here and the 32-bit candidate here and then following the installation instructions provided.
\n
macOS
\n
To install Syng on macOS, simply download the .dmg file from here and then drag and drop the Syng app into your Applications folder.
\n
Windows
\n
To install Syng on Windows, you can download the 64-bit installer from here and the 32-bit installer from here and use it to install Syng.
Syng is a free, open source, Chinese-To-English and English-To-Chinese Dictionary app that makes it easy to lookup words and phrases quickly. Currently Syng works on macOS, Windows, and Linux systems.
\n
Name
\n
Syng is a stylized spelling of cíyīng, the Pinyin for 词应. 词应 has been shorted from 词典应用, literally translating to Dictionary App.
\n
Features
\n
\n
Search\n
\n
Syng allows you to search by Pinyin, English, and Chinese characters (both traditional and simplified)
\n
\n
\n
Study\n
\n
Syng makes it easy to study Chinese by creating flash cards out of your saved words and searches.
\n
Syng also tests you on your knowledge and progress of your Chinese to measure your language development.
\n
\n
\n
Bookmarks\n
\n
Syng allows you to save words and searches to your bookmarks, so that you can reference them later, and even create custom vocab lists.
\n
\n
\n
Reader\n
\n
Syng lets you read Chinese text from your clipboard or from the web with an easy to use popup dictionary.
\n
\n
\n
Offline Support\n
\n
No internet connection required for most features
\n
\n
\n
Cross-Platform\n
\n
Mac OS X
\n
Windows
\n
Linux
\n
\n
\n
Prettify Pinyin\n
\n
Convert pinyin with tone numbers with tone marks
\n
\n
\n
Convert Characters\n
\n
Convert between traditional and simplified characters
\n
\n
\n
Pinyinify\n
\n
Convert 汉字 into hànzì. Turn characters into pinyin
\n
\n
\n
Character Stroke Animations\n
\n
View character stroke order animations to study writing characters
\n
\n
\n
\n
What's new?
\n
These are few feature additions and visual changes in v1.5.0. For a full list of changes, see the changelog.
To install Syng on Linux, you can you use the pre-built installation script by copy and pasting the code below into terminal. It's good to be cautious about what you are putting in your terminal, you can read the 64-bit install script here and the 32-bit install script here.
\n
For 64-bit systems:
\n
wget -O- https://bit.ly/2weiJxU | bash\n
\n
For 32-bit systems:
\n
wget -O- https://bit.ly/2OLXtay | bash\n
\n
Alternatively, if you aren't comfortable running the pre-built installation script, you can install manually by downloading the 64-bit candidate here and the 32-bit candidate here and then following the installation instructions provided.
\n
macOS
\n
To install Syng on macOS, simply download the .dmg file from here and then drag and drop the Syng app into your Applications folder.
\n
Windows
\n
To install Syng on Windows, you can download the 64-bit installer from here and the 32-bit installer from here and use it to install Syng.
SymphonyElectron is a desktop client of the Symphony Communication Platform built for macOS, Windows 10, Windows 7\nand Linux (experimental)\n. We've built this using the popular electron framework to support cross platform desktop apps loaded in a chromium container.
Commit your changes (git commit -am 'Add some fooBar')
\n
Push to the branch (git push origin feature/fooBar)
\n
Create a new Pull Request
\n\n
NOTE: Commits and pull requests to FINOS repositories will only be accepted from those contributors with an active, executed Individual Contributor License Agreement (ICLA) with FINOS OR who are covered under an existing and active Corporate Contribution License Agreement (CCLA) executed with FINOS. Commits from individuals not covered under an ICLA or CCLA will be flagged and blocked by the FINOS Clabot tool. Please note that some CCLAs require individuals/employees to be explicitly named on the CCLA.
\n
Need an ICLA? Unsure if you are covered under an existing CCLA? Email help@finos.org
\n
Project Goals:
\n
Our goal is to improve the performance and development agility of Symphony's desktop wrapper and build a path to support other wrappers by:
\n\n
Standardizing the JS to native interfaces
\n
Standardizing the app to app interfaces (current embedding API)
\n
Provide an open and free reference implementation that anyone can contribute to, modify, and make derivative works.
The code in this repository is distributed under the Apache License, Version 2.0.
\n
Copyright 2021 Symphony LLC
\n
",
"readmeOriginal": "
\n\n\n
\n
SymphonyElectron
\n
About:
\n
SymphonyElectron is a desktop client of the Symphony Communication Platform built for macOS, Windows 10, Windows 7\nand Linux (experimental)\n. We've built this using the popular electron framework to support cross platform desktop apps loaded in a chromium container.
Commit your changes (git commit -am 'Add some fooBar')
\n
Push to the branch (git push origin feature/fooBar)
\n
Create a new Pull Request
\n\n
NOTE: Commits and pull requests to FINOS repositories will only be accepted from those contributors with an active, executed Individual Contributor License Agreement (ICLA) with FINOS OR who are covered under an existing and active Corporate Contribution License Agreement (CCLA) executed with FINOS. Commits from individuals not covered under an ICLA or CCLA will be flagged and blocked by the FINOS Clabot tool. Please note that some CCLAs require individuals/employees to be explicitly named on the CCLA.
\n
Need an ICLA? Unsure if you are covered under an existing CCLA? Email help@finos.org
\n
Project Goals:
\n
Our goal is to improve the performance and development agility of Symphony's desktop wrapper and build a path to support other wrappers by:
\n\n
Standardizing the JS to native interfaces
\n
Standardizing the app to app interfaces (current embedding API)
\n
Provide an open and free reference implementation that anyone can contribute to, modify, and make derivative works.
No matter the frameworks you use and the code you write, the most important is the model that you define to create your system. System Designer helps you to design this model and to generate the classes and components to build your system.
\n
What is a system ?
\n
With System Designer you create in fact a system and not an application. But what is a system ?
\n
A system:
\n
\n
is defined by a model,
\n
is composed by components and
\n
reacts to events with actions that we call behaviors.
\n
\n
\n
What can I do with System Designer ?
\n
Design your system with ease
\n
If you look at the different JavaScript frameworks on the market, you will notice that they all have their own way to define a model, generally only with code.
\n
System Designer uses UML, a standard, to define your model. So you probably already know how to design in System Designer even if you have never run it.
\n
The definition of the model is stored on a JSON format called MSON. With MSON you can define types, classes, one to one / one to many relationships and multi inheritance between classes.
\n
Code the behavior of your system
\n
Once you have created your model, System Designer generates the skeletons of all your methods. You only have then to add your code to implement them.
\n
System Designer provides you helpers to manage your components. You can easily navigate through components to create your application.
\n
Create components graphically
\n
There is no need to code to instantiate a component. Create a component in System Designer is like creating a document in a NoSQL Database.
\n
In fact, System Designer acts as an ODM (Object-Document Mapper) to manage your components as NoSQL Documents.
\n
Run your system
\n
You can run your system directly from System Designer and then export it to HTML, JSON, JavaScript, a Node.js module or a Graphviz file (* macOS, Windows, Linux and PWA version only).
\n
Because you have defined a model for your application, a Dynamic Type Check is done on every action of your system. All warnings are send and shown in System Designer.
\n
Debug your system
\n
System Designer can load the model of any system that runs on the browser or on Node.js. You can see the schemas, models, components and methods of the running system and you can edit them.
\n
All modifications to the model done inside System Designer will be send to the running system. There is no need to reload to see your modifications.
\n
Design on the go
\n
System Designer can be used on Windows, macOS, Linux, iOS, iPad, Android or any browsers. You can also install it in your project: System Designer requires no backend to work, it is a full web application.
\n
System Designer has a GitHub module to synchronize your work between all these apps. You can begin your design on your Mac and then continue it on your iPad.
# build for ios\nnpx cordova build ios\n\n# build for android\nnpx cordova build android
\n
Development
\n
Web
\n
To start System Designer in development mode for web:
\n
npm run dev
\n
Once server started, go to http://localhost:9001/. All the modifications to the source code of System Designer will rebuild the solution and refresh the page.
\n
Mobile devices
\n
To start System Designer in development mode for mobile devices:
\n
npm run dev-cordova
\n
Once server started, go to http://localhost:9001/. All the modifications to the source code of System Designer will rebuild the solution and refresh the page.
Licensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at
\n
http://www.apache.org/licenses/LICENSE-2.0\n
\n
Unless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.
\n
Do not use System Designer if you do not believe in Equality and Diversity.
\n
System Designer is not for people of hate.
\n
",
"readmeOriginal": "
System Designer
\n
\n
\n
What is System Designer ?
\n
No matter the frameworks you use and the code you write, the most important is the model that you define to create your system. System Designer helps you to design this model and to generate the classes and components to build your system.
\n
What is a system ?
\n
With System Designer you create in fact a system and not an application. But what is a system ?
\n
A system:
\n
\n
is defined by a model,
\n
is composed by components and
\n
reacts to events with actions that we call behaviors.
\n
\n
\n
What can I do with System Designer ?
\n
Design your system with ease
\n
If you look at the different JavaScript frameworks on the market, you will notice that they all have their own way to define a model, generally only with code.
\n
System Designer uses UML, a standard, to define your model. So you probably already know how to design in System Designer even if you have never run it.
\n
The definition of the model is stored on a JSON format called MSON. With MSON you can define types, classes, one to one / one to many relationships and multi inheritance between classes.
\n
Code the behavior of your system
\n
Once you have created your model, System Designer generates the skeletons of all your methods. You only have then to add your code to implement them.
\n
System Designer provides you helpers to manage your components. You can easily navigate through components to create your application.
\n
Create components graphically
\n
There is no need to code to instantiate a component. Create a component in System Designer is like creating a document in a NoSQL Database.
\n
In fact, System Designer acts as an ODM (Object-Document Mapper) to manage your components as NoSQL Documents.
\n
Run your system
\n
You can run your system directly from System Designer and then export it to HTML, JSON, JavaScript, a Node.js module or a Graphviz file (* macOS, Windows, Linux and PWA version only).
\n
Because you have defined a model for your application, a Dynamic Type Check is done on every action of your system. All warnings are send and shown in System Designer.
\n
Debug your system
\n
System Designer can load the model of any system that runs on the browser or on Node.js. You can see the schemas, models, components and methods of the running system and you can edit them.
\n
All modifications to the model done inside System Designer will be send to the running system. There is no need to reload to see your modifications.
\n
Design on the go
\n
System Designer can be used on Windows, macOS, Linux, iOS, iPad, Android or any browsers. You can also install it in your project: System Designer requires no backend to work, it is a full web application.
\n
System Designer has a GitHub module to synchronize your work between all these apps. You can begin your design on your Mac and then continue it on your iPad.
# build for ios\nnpx cordova build ios\n\n# build for android\nnpx cordova build android
\n
Development
\n
Web
\n
To start System Designer in development mode for web:
\n
npm run dev
\n
Once server started, go to http://localhost:9001/. All the modifications to the source code of System Designer will rebuild the solution and refresh the page.
\n
Mobile devices
\n
To start System Designer in development mode for mobile devices:
\n
npm run dev-cordova
\n
Once server started, go to http://localhost:9001/. All the modifications to the source code of System Designer will rebuild the solution and refresh the page.
Licensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at
\n
http://www.apache.org/licenses/LICENSE-2.0\n
\n
Unless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.
\n
Do not use System Designer if you do not believe in Equality and Diversity.
If you have any question or a bug report please open a Issue
\n
Team LF
\n
Hi! \nI am looking for designer to my project for future development! \nThe main goal of this project is easy project management and time control. \nNow available only desktop version, server side and mobile version coming soon.
\n
If you can create beautiful interface or you are interested with you are welcome! \nWrite PM or to email hello@handscream.com.
\n
TODO
\n
[-] Optimize list \n[-] Show completed tasks in table \n[-] Add \"Notes\" component \n[-] Add diagram creator\n[-] Create backend
\n
How to add a new translation
\n\n
\n
Translate one of the existing files in locale folder
# install dependencies\nnpm install\n\n# add config file task_view.app.conf.ts and export let notarizeConfig\n# notarizeConfig has next property [appBundleId: sting, appPath: string, appleId: string, appleIdPassword: string] \n# all property is required for app notarize in MacOS \n\n# serve with hot reload at localhost:9080\nnpm run dev\n\n# build electron application for production\nnpm run build\n\n# run unit & end-to-end tests\nnpm test\n\n\n# lint all JS/Vue component files in `src/`\nnpm run lint\n
\n
Windows build
\n
\n
Required software
\n
\n
\n
install NodeJS >= 10.16.3
\n
install Python 2.7.1.
\n
npm install --vs2015 -g windows-build-tools
\n
npm run build
\n
\n
Clear cache MAC OS
\n
\n
Remove dir /Users/{user}/Library/Application Support/{yourElectronApp}/Cache
\n
\n
This project was generated with electron-vue using vue-cli. Documentation about the original structure can be found here.
\n
",
"readmeOriginal": "
TaskView
\n
Telegram\nDocs\nService for daily planning, aimed at achieving results. For personal affairs, work tasks and teamwork. www.handscream.com
If you have any question or a bug report please open a Issue
\n
Team LF
\n
Hi! \nI am looking for designer to my project for future development! \nThe main goal of this project is easy project management and time control. \nNow available only desktop version, server side and mobile version coming soon.
\n
If you can create beautiful interface or you are interested with you are welcome! \nWrite PM or to email hello@handscream.com.
\n
TODO
\n
[-] Optimize list \n[-] Show completed tasks in table \n[-] Add \"Notes\" component \n[-] Add diagram creator\n[-] Create backend
\n
How to add a new translation
\n\n
\n
Translate one of the existing files in locale folder
# install dependencies\nnpm install\n\n# add config file task_view.app.conf.ts and export let notarizeConfig\n# notarizeConfig has next property [appBundleId: sting, appPath: string, appleId: string, appleIdPassword: string] \n# all property is required for app notarize in MacOS \n\n# serve with hot reload at localhost:9080\nnpm run dev\n\n# build electron application for production\nnpm run build\n\n# run unit & end-to-end tests\nnpm test\n\n\n# lint all JS/Vue component files in `src/`\nnpm run lint\n
\n
Windows build
\n
\n
Required software
\n
\n
\n
install NodeJS >= 10.16.3
\n
install Python 2.7.1.
\n
npm install --vs2015 -g windows-build-tools
\n
npm run build
\n
\n
Clear cache MAC OS
\n
\n
Remove dir /Users/{user}/Library/Application Support/{yourElectronApp}/Cache
\n
\n
This project was generated with electron-vue using vue-cli. Documentation about the original structure can be found here.
TagSpaces is a free, no vendor lock-in, open source application for organizing, annotating and managing local files with the help of tags. It features advanced note taking functionalities and some capabilities of to-do apps. The application is available for Windows, Linux, Mac OS and Android. We provide a web clipper extension for Firefox, Edge and Chrome for easy collecting of online content in the form of local files.
\n
\n
More information about can be found from the following sources:
Documentation for our latest generated documentation
\n
Video Introduction - This is a short video presenting the main concepts of the application. It is made from a pretty old application version but it is still valid for the most of the use cases.
You can find the latest release of TagSpaces in the Github release section
\n
A full list of the changes is available in the changelog
\n
Main Features
\n
\n
File and folder management - TagSpaces provides a convenient user interface for browsing, viewing and man files and folders.
\n
File tagging - The application supports two ways for tagging files. The default one embeds the tags directly in the name of the file, the other one uses a so called sidecar files for persisting the tags.
\n
Searching - The search functionality supports fuzzy functionality and can filter your locations for files and folders containing one or more tags
\n
Browser for local content - TagSpaces can be used just as browser for your local photos or navigation thought your local ebook library
\n
Media player - It supports playing for common audio and video files types and has integrated basic media player functionalities.
\n
No-Cloud: TagSpaces is running completely offline and serverless on your laptop, desktop or tablet and does not require an internet connection and any kind of online registration or service provider.
\n
Note Taking - you can create and edit notes in plain text, markdown and html file formats
\n
To-Do Management - with the help of the build in HTML editor you are able to create simple todo lists in every HTML file.
\n
Cross-platform: TagSpaces runs on Windows, Linux, Mac and Android
\n
Web Clipper for saving web pages and screenshots from your browsers is also available as extension for Firefox and Chrome.
\n
\n
Infos for developers
\n
The core of TagSpaces starting from version 3 is built with react.js and the great material-ui framework.
\n
The native Windows, Linux and Mac OS versions of TagSpaces are built with Electron. Electron is an app runtime based on Chromium and node.js. In order to combine it with react we have used the electron-react-boilerplate.
\n
Repository Directory Structure
\n
./app................ contains the application core\n./app/locales........ contains the language files needed for the application internationalization\n./app/node_modules... contains the TagSpaces extension modules\n./cordova............ contains the code needed for running the Android version\n./dll................ contains the files needed for live reload in development mode\n./internals.......... contains files needed for supporting Flow and Eslint\n./node_modules....... after yarn install, you will find here the external dependencies of the application\n./resources.......... contains images and other files needed for the application building\n./scripts............ contains js script needed for the yarn/npm tasks\n./test............... contains unit and e2e tests of the app\n./web................ contains assets needed for the web version of the app\n
\n
How to run TagSpaces from the source code?
\n
In order to run TagSpaces on your Windows, Mac OS or Linux from the source code published here, you will need the following prerequisites:
Go to the folder where the code was cloned to and select the branch you want to test. Use the master branch for the last officially released version or the branch develop for a kind of a nightly build, containing the changes we are preparing for the next release of the application.
\n
Switch to the folder where you have cloned the repository:
\n
$ cd tagspaces\n
\n
Change to the branch with the name develop:
\n
$ git checkout develop\n
\n
and install the project dependencies:
\n
$ yarn install\n
\n
The last command will automatically build the application with webpack. Now it is time to install all the TagSpaces extensions:
\n
$ yarn install-ext-node\n
\n
Starting from v4 of the application, a web service is running locally as a separate process. The web service is responsible for the search index creation and the generation of the thumbnails for most of the images formats. A key is required in order for the main application to communicate with the web server. It should be defined in the .env file located in app folder. This is an example for an .env file.
\n
KEY=a_custom_key\n
\n
Having a custom key, ensures that another instance of TagSpaces will not communicate with the web service of the initial instance, since it is always running on the same port.
\n
Now you are ready and can build and start (bs) the application with:
\n
$ yarn bs\n
\n
If you want to try the development mode, you can start it by:
\n
$ yarn dev\n
\n
This will start a development server in background, which watches for changes in background and refreshes the application automatically once you have done some changes in the source code.
\n
Package for Windows, Linux and macOS
\n
Building of the packages can be accomplished with the integrated yarn scripts:
The commands will create packages for Windows, Linux, Mac OS and Mac OS with the M1 processor respectively. Do not forget to run the yarn build script before packaging.
\n
Package the Android
\n
Building of the packages for Android can be accomplished with the integrated yarn scripts:
TagSpaces can be easily extended with the help of extensions. Currently we use the extensions for supporting the opening and editing of different file types in the application. More information about this topic can be found on the extension page of our website.
\n
Contribute
\n
TagSpaces is an open source software, and as such, the code is publicly available on GitHub, and forking is particularly recommended! Still, contribution must be done following some guidelines.\nContributor License Agreement
\n
The CLA is an agreement commonly used in major open source project, which aims at protecting all parties implied by a contribution: the contributor, the main code author, and above all, the community. The CLA model we have chosen basically tells the following: the contribution’s copyright is shared between the contributor and the main author. This means each party can do whatever she want in term of relicensing with this contributed piece of code. This is important, because, if in the future, the author wants to change the license in something more in favor of the community, a singular contributor cannot block the process.
\n
The Contributor License Agreement can be signed online on the following CLA form.
\n
Localisation
\n
TagSpaces is currently available in more than 20 languages. You can help the translation of this application in your language by joining the translation teams on Transifex.
\n
Ideas and Suggestion
\n
If you have ideas or suggestions on how we can improve our application, you can check the following Trello board. Here you will find numerous ideas already proposed by other users. If you want to post something new, please follow this link
\n
Support and Bugs
\n
If you are having troubles using TagSpaces or have found a bug please open a ticket on GitHub.
\n
Known issues
\n
\n
TagSpaces is not suitable for searching in locations containing more than 100000 files.
This project is dual-licensed under the AGPL (GNU Affero General Public License) Version 3 for FOSS projects and under a commercial license for independent software vendors and resellers. If you want to modify this application under different conditions, feel free to contact us.
\n
",
"readmeOriginal": "
\n
\n
TagSpaces is a free, no vendor lock-in, open source application for organizing, annotating and managing local files with the help of tags. It features advanced note taking functionalities and some capabilities of to-do apps. The application is available for Windows, Linux, Mac OS and Android. We provide a web clipper extension for Firefox, Edge and Chrome for easy collecting of online content in the form of local files.
\n
\n
More information about can be found from the following sources:
Documentation for our latest generated documentation
\n
Video Introduction - This is a short video presenting the main concepts of the application. It is made from a pretty old application version but it is still valid for the most of the use cases.
You can find the latest release of TagSpaces in the Github release section
\n
A full list of the changes is available in the changelog
\n
Main Features
\n
\n
File and folder management - TagSpaces provides a convenient user interface for browsing, viewing and man files and folders.
\n
File tagging - The application supports two ways for tagging files. The default one embeds the tags directly in the name of the file, the other one uses a so called sidecar files for persisting the tags.
\n
Searching - The search functionality supports fuzzy functionality and can filter your locations for files and folders containing one or more tags
\n
Browser for local content - TagSpaces can be used just as browser for your local photos or navigation thought your local ebook library
\n
Media player - It supports playing for common audio and video files types and has integrated basic media player functionalities.
\n
No-Cloud: TagSpaces is running completely offline and serverless on your laptop, desktop or tablet and does not require an internet connection and any kind of online registration or service provider.
\n
Note Taking - you can create and edit notes in plain text, markdown and html file formats
\n
To-Do Management - with the help of the build in HTML editor you are able to create simple todo lists in every HTML file.
\n
Cross-platform: TagSpaces runs on Windows, Linux, Mac and Android
\n
Web Clipper for saving web pages and screenshots from your browsers is also available as extension for Firefox and Chrome.
\n
\n
Infos for developers
\n
The core of TagSpaces starting from version 3 is built with react.js and the great material-ui framework.
\n
The native Windows, Linux and Mac OS versions of TagSpaces are built with Electron. Electron is an app runtime based on Chromium and node.js. In order to combine it with react we have used the electron-react-boilerplate.
\n
Repository Directory Structure
\n
./app................ contains the application core\n./app/locales........ contains the language files needed for the application internationalization\n./app/node_modules... contains the TagSpaces extension modules\n./cordova............ contains the code needed for running the Android version\n./dll................ contains the files needed for live reload in development mode\n./internals.......... contains files needed for supporting Flow and Eslint\n./node_modules....... after yarn install, you will find here the external dependencies of the application\n./resources.......... contains images and other files needed for the application building\n./scripts............ contains js script needed for the yarn/npm tasks\n./test............... contains unit and e2e tests of the app\n./web................ contains assets needed for the web version of the app\n
\n
How to run TagSpaces from the source code?
\n
In order to run TagSpaces on your Windows, Mac OS or Linux from the source code published here, you will need the following prerequisites:
Go to the folder where the code was cloned to and select the branch you want to test. Use the master branch for the last officially released version or the branch develop for a kind of a nightly build, containing the changes we are preparing for the next release of the application.
\n
Switch to the folder where you have cloned the repository:
\n
$ cd tagspaces\n
\n
Change to the branch with the name develop:
\n
$ git checkout develop\n
\n
and install the project dependencies:
\n
$ yarn install\n
\n
The last command will automatically build the application with webpack. Now it is time to install all the TagSpaces extensions:
\n
$ yarn install-ext-node\n
\n
Starting from v4 of the application, a web service is running locally as a separate process. The web service is responsible for the search index creation and the generation of the thumbnails for most of the images formats. A key is required in order for the main application to communicate with the web server. It should be defined in the .env file located in app folder. This is an example for an .env file.
\n
KEY=a_custom_key\n
\n
Having a custom key, ensures that another instance of TagSpaces will not communicate with the web service of the initial instance, since it is always running on the same port.
\n
Now you are ready and can build and start (bs) the application with:
\n
$ yarn bs\n
\n
If you want to try the development mode, you can start it by:
\n
$ yarn dev\n
\n
This will start a development server in background, which watches for changes in background and refreshes the application automatically once you have done some changes in the source code.
\n
Package for Windows, Linux and macOS
\n
Building of the packages can be accomplished with the integrated yarn scripts:
The commands will create packages for Windows, Linux, Mac OS and Mac OS with the M1 processor respectively. Do not forget to run the yarn build script before packaging.
\n
Package the Android
\n
Building of the packages for Android can be accomplished with the integrated yarn scripts:
TagSpaces can be easily extended with the help of extensions. Currently we use the extensions for supporting the opening and editing of different file types in the application. More information about this topic can be found on the extension page of our website.
\n
Contribute
\n
TagSpaces is an open source software, and as such, the code is publicly available on GitHub, and forking is particularly recommended! Still, contribution must be done following some guidelines.\nContributor License Agreement
\n
The CLA is an agreement commonly used in major open source project, which aims at protecting all parties implied by a contribution: the contributor, the main code author, and above all, the community. The CLA model we have chosen basically tells the following: the contribution’s copyright is shared between the contributor and the main author. This means each party can do whatever she want in term of relicensing with this contributed piece of code. This is important, because, if in the future, the author wants to change the license in something more in favor of the community, a singular contributor cannot block the process.
\n
The Contributor License Agreement can be signed online on the following CLA form.
\n
Localisation
\n
TagSpaces is currently available in more than 20 languages. You can help the translation of this application in your language by joining the translation teams on Transifex.
\n
Ideas and Suggestion
\n
If you have ideas or suggestions on how we can improve our application, you can check the following Trello board. Here you will find numerous ideas already proposed by other users. If you want to post something new, please follow this link
\n
Support and Bugs
\n
If you are having troubles using TagSpaces or have found a bug please open a ticket on GitHub.
\n
Known issues
\n
\n
TagSpaces is not suitable for searching in locations containing more than 100000 files.
This project is dual-licensed under the AGPL (GNU Affero General Public License) Version 3 for FOSS projects and under a commercial license for independent software vendors and resellers. If you want to modify this application under different conditions, feel free to contact us.
Do you keep opening terminals to run your scripts/commands/tasks etc,. If you have to do that everyday for same project (Example running scripts from package.json for multiple projects), Ten Hands makes it easier to organize all your tasks in one place.\nYou can organize tasks into projects and run them whenever you want with a click of a button.
\n
UI
\n
Please visit website to see intro video.
\n
\n\n
\n
Dark
\n
Light
\n
\n\n\n
\n
\n
\n
\n\n
\n
Downloads
\n
Downloads are available in releases section if you just want to download and run.
\n
If you want to get latest updates, you can click on \"Azure Pipelines\" badge above to download latest builds from CI. These may have small bugs. But, please create an issue if you find any.
\n
Installing browser version
\n
This project can be run in browser instead of desktop version. Before installing browser version, check what additional features the desktop version has currently.
\n\n
Drag & Drop package.json to add project.
\n
Link to open project directory in file explorer.
\n\n
To run in browser.
\n\n
Install ten-hands-cli tool from npm.
\n\n
npm install --global ten-hands-cli\n\n (or)\n\n yarn global add ten-hands-cli\n
\n\n
Start app
\n\n
ten-hands start\n
\n\n
Your teminal will show you the localhost address with port where Ten Hands is running. Copy and open it in browser.
\n\n
Configuration
\n
A config.json is supported which is placed at ~/.ten-hands/ path.
\n
\n
Check Configration at Wiki for configuration options.
\n
\n
You have to restart the app when you change configuration.
Do you keep opening terminals to run your scripts/commands/tasks etc,. If you have to do that everyday for same project (Example running scripts from package.json for multiple projects), Ten Hands makes it easier to organize all your tasks in one place.\nYou can organize tasks into projects and run them whenever you want with a click of a button.
\n
UI
\n
Please visit website to see intro video.
\n
\n\n
\n
Dark
\n
Light
\n
\n\n\n
\n
\n
\n
\n\n
\n
Downloads
\n
Downloads are available in releases section if you just want to download and run.
\n
If you want to get latest updates, you can click on \"Azure Pipelines\" badge above to download latest builds from CI. These may have small bugs. But, please create an issue if you find any.
\n
Installing browser version
\n
This project can be run in browser instead of desktop version. Before installing browser version, check what additional features the desktop version has currently.
\n\n
Drag & Drop package.json to add project.
\n
Link to open project directory in file explorer.
\n\n
To run in browser.
\n\n
Install ten-hands-cli tool from npm.
\n\n
npm install --global ten-hands-cli\n\n (or)\n\n yarn global add ten-hands-cli\n
\n\n
Start app
\n\n
ten-hands start\n
\n\n
Your teminal will show you the localhost address with port where Ten Hands is running. Copy and open it in browser.
\n\n
Configuration
\n
A config.json is supported which is placed at ~/.ten-hands/ path.
\n
\n
Check Configration at Wiki for configuration options.
\n
\n
You have to restart the app when you change configuration.
File inspector with interactive javascript console.
\n
Notice: MacOS version is not compatible with Apple Silicon (ARM)
\n
\n
The idea is to have something similar to other file system managers, e.g. TotalCommander. But this app is intended for Developers as it allows to run various JS scripts against files and directories.
\n
\n
There are multiple script Snippets installed with the app. They will give you some functionality right away, without having to write your own first. Then you can of course write and save your own.
This app is intended to be cross-platform, currently developed and tested on Windows 10, MacOS and Ubuntu 18.04 LTS.
\n
App is using Electron and React as it was originally meant for me to improve my skill with Electron and learn properly React.
\n
How to Use
\n
Execute script
\n\n
On the main Files view, click the code button. Either in the files row on the right or at the bottom near the current directory.
\n
\n\n
Now you have console open for you with current directory preselected for use by script.
\n
If you used the button inside the files row, then you have also the file/s preselected, but this is not yet fully implemented.
\n\n
\n
Inside the top box is Javascript editor, here you can write code that will be executed.
\n
If you hit the question mark button, you will see current API reference for global variables and functions.
\n
Execute the code by hitting execute button. WARNING: be sure that you are in the correct directory and have correct selected files before you execute the script. I will NOT be responsible for any damage that you cause to yor own PC.
\n
Inside the middle box you will see result and any console.log that you used with your script. Here you will also see error.
\n\n
Save script
\n\n
\n\n
When you have already open console with written script, click the save button.
\n
Go to the Snippets view and click new snippet button to open the console. Write your script and then save with the save button.
\n\n
\n\n
Script API reference
\n\n
Open the console using any of the previously mentioned ways.
Or use the contact form inside the app's About view.
\n\n
\n\n
Included script Snippets
\n
Simple Example
\n
This is just a basic script example that does almost nothing, but demonstrate that execution works.
\n
Rename Files
\n
Rename files to a new name and append with number if there are more than one.
\n
Rename Files (part of name)
\n
Rename files to a new name by changing part of name with provided new part.
\n
Rename Host Sql
\n
Script for renaming host inside Sql query. E.g. rename host of WP website when migrating from Dev to Prod. Should work on large Sql files.
\n
TinyPNG Compress/Resize/Crop Images
\n
Two scripts for images (PNG & JPG), one can compress them, the other can resize or crop. Crop is intelligent in determining area of interest. You need TinyPNG API key for them to work.
\n
Roadmap
\n
\n
\n
Import/Export code
\n
\n
\n
Localization - However I know only limited number of languages
\n
\n
\n
More files explorer like actions - LOW PRIORITY
\n
\n
\n
More script capabilities - an ongoing process/dependant on requests
\n
\n
\n
Simple GUI for snippets - TBD
\n
\n
\n
",
"readmeOriginal": "
FileCtor
\n
File inspector with interactive javascript console.
\n
Notice: MacOS version is not compatible with Apple Silicon (ARM)
\n
\n
The idea is to have something similar to other file system managers, e.g. TotalCommander. But this app is intended for Developers as it allows to run various JS scripts against files and directories.
\n
\n
There are multiple script Snippets installed with the app. They will give you some functionality right away, without having to write your own first. Then you can of course write and save your own.
This app is intended to be cross-platform, currently developed and tested on Windows 10, MacOS and Ubuntu 18.04 LTS.
\n
App is using Electron and React as it was originally meant for me to improve my skill with Electron and learn properly React.
\n
How to Use
\n
Execute script
\n\n
On the main Files view, click the code button. Either in the files row on the right or at the bottom near the current directory.
\n
\n\n
Now you have console open for you with current directory preselected for use by script.
\n
If you used the button inside the files row, then you have also the file/s preselected, but this is not yet fully implemented.
\n\n
\n
Inside the top box is Javascript editor, here you can write code that will be executed.
\n
If you hit the question mark button, you will see current API reference for global variables and functions.
\n
Execute the code by hitting execute button. WARNING: be sure that you are in the correct directory and have correct selected files before you execute the script. I will NOT be responsible for any damage that you cause to yor own PC.
\n
Inside the middle box you will see result and any console.log that you used with your script. Here you will also see error.
\n\n
Save script
\n\n
\n\n
When you have already open console with written script, click the save button.
\n
Go to the Snippets view and click new snippet button to open the console. Write your script and then save with the save button.
\n\n
\n\n
Script API reference
\n\n
Open the console using any of the previously mentioned ways.
Or use the contact form inside the app's About view.
\n\n
\n\n
Included script Snippets
\n
Simple Example
\n
This is just a basic script example that does almost nothing, but demonstrate that execution works.
\n
Rename Files
\n
Rename files to a new name and append with number if there are more than one.
\n
Rename Files (part of name)
\n
Rename files to a new name by changing part of name with provided new part.
\n
Rename Host Sql
\n
Script for renaming host inside Sql query. E.g. rename host of WP website when migrating from Dev to Prod. Should work on large Sql files.
\n
TinyPNG Compress/Resize/Crop Images
\n
Two scripts for images (PNG & JPG), one can compress them, the other can resize or crop. Crop is intelligent in determining area of interest. You need TinyPNG API key for them to work.
\n
Roadmap
\n
\n
\n
Import/Export code
\n
\n
\n
Localization - However I know only limited number of languages
\n
\n
\n
More files explorer like actions - LOW PRIORITY
\n
\n
\n
More script capabilities - an ongoing process/dependant on requests
Building is done with yarn. Install it here if you havent already.
\n
git clone https://github.com/njbrown/texturelab.git\n\ncd texturelab\n\n# if you want to pull down assets (textures and node icons)\ngit submodule update --init\n\nyarn install\nyarn electron:serve\n
\n
Feedback
\n
Got ideas, suggestions or feedback? Reach out to me on twitter
Building is done with yarn. Install it here if you havent already.
\n
git clone https://github.com/njbrown/texturelab.git\n\ncd texturelab\n\n# if you want to pull down assets (textures and node icons)\ngit submodule update --init\n\nyarn install\nyarn electron:serve\n
\n
Feedback
\n
Got ideas, suggestions or feedback? Reach out to me on twitter
Input TeX code to get a live preview. Press ENTER or click the green checkmark to copy the result to the clipboard and use it in another application. ESCAPE or clicking the close button will discard the output. Custom macros can be created in the settings.
Download options for Windows and Linux can be found in the latest release. If you are using macOS, you will have to run this app from source. Listed below are the different kinds of files available to run or install texpaste.
\n
\n\n
\n
File
\n
Platform
\n
Type
\n
\n\n\n
\n
texpaste_(version)_linux.AppImage
\n
Linux
\n
Standalone app
\n
\n
\n
texpaste_(version)_linux.deb
\n
Linux
\n
Installable package for Debian
\n
\n
\n
texpaste_(version)_linux.tar.gz
\n
Linux
\n
Archive containing executable and program files
\n
\n
\n
texpaste_(version)_win.zip
\n
Windows
\n
Archive containing executable and program files
\n
\n
\n
texpaste_(version)_win_portable.exe
\n
Windows
\n
Standalone app (slow startup)
\n
\n
\n
texpaste_(version)_win_setup.exe
\n
Windows
\n
Installation wizard
\n
\n\n
\n
⚠️Windows users will be presented with a security warning on first launch. This is because I cannot afford a certificate to sign my code. You can circumvent the warning by clicking on \"More info\" and \"Run anyway\".
\n
Development
\n
To build or run this app directly from the source code, you will need Node.js with npm v7 or later. Clone or download the repository and use the following commands.
\n
\n\n
\n
Command
\n
Description
\n
\n\n\n
\n
npm install
\n
Installs the required dependencies.
\n
\n
\n
npm start
\n
Launches the application.
\n
\n
\n
npm run pack
\n
Packages the application (output is located in the \"dist\" folder).
\n
\n
\n
npm run dist
\n
Packages while also creating an installer.
\n
\n\n
\n
Upcoming features
\n
Autocomplete. Feel free to suggest something or file a bug report on the issue tracker.
\n
",
"readmeOriginal": "
\n
\n
Input TeX code to get a live preview. Press ENTER or click the green checkmark to copy the result to the clipboard and use it in another application. ESCAPE or clicking the close button will discard the output. Custom macros can be created in the settings.
Download options for Windows and Linux can be found in the latest release. If you are using macOS, you will have to run this app from source. Listed below are the different kinds of files available to run or install texpaste.
\n
\n\n
\n
File
\n
Platform
\n
Type
\n
\n\n\n
\n
texpaste_(version)_linux.AppImage
\n
Linux
\n
Standalone app
\n
\n
\n
texpaste_(version)_linux.deb
\n
Linux
\n
Installable package for Debian
\n
\n
\n
texpaste_(version)_linux.tar.gz
\n
Linux
\n
Archive containing executable and program files
\n
\n
\n
texpaste_(version)_win.zip
\n
Windows
\n
Archive containing executable and program files
\n
\n
\n
texpaste_(version)_win_portable.exe
\n
Windows
\n
Standalone app (slow startup)
\n
\n
\n
texpaste_(version)_win_setup.exe
\n
Windows
\n
Installation wizard
\n
\n\n
\n
⚠️Windows users will be presented with a security warning on first launch. This is because I cannot afford a certificate to sign my code. You can circumvent the warning by clicking on \"More info\" and \"Run anyway\".
\n
Development
\n
To build or run this app directly from the source code, you will need Node.js with npm v7 or later. Clone or download the repository and use the following commands.
\n
\n\n
\n
Command
\n
Description
\n
\n\n\n
\n
npm install
\n
Installs the required dependencies.
\n
\n
\n
npm start
\n
Launches the application.
\n
\n
\n
npm run pack
\n
Packages the application (output is located in the \"dist\" folder).
\n
\n
\n
npm run dist
\n
Packages while also creating an installer.
\n
\n\n
\n
Upcoming features
\n
Autocomplete. Feel free to suggest something or file a bug report on the issue tracker.
Thorium Reader is an easy to use EPUB reading application for Windows 10/10S, MacOS and Linux. After importing e-books from a directory or OPDS feed, you'll be able to read on any screen size, customize layout settings, navigate via the table of contents or page list, set bookmarks ... A great care is taken to ensure the accessibility of the application for visual impaired people using NVDA, JAWS or Narrator.
\n
Free application. No ads. No private data flowing anywhere.
\n
This project is in constant evolution, corrections and new features will be added soon and your support is welcome for that. The application is based on the open-source Readium Desktop toolkit.
Optionally: C++ compiler for native NodeJS modules, should work out of the box in Linux and MacOS. On Windows, Visual Studio can be installed, or simply call npm install -g windows-build-tools.
\n\n
Technologies
\n
\n
typescript
\n
electron
\n
reactjs
\n
redux
\n
saga
\n
i18next
\n
\n
Quick start
\n
Install dependencies
\n
\n
npm install (or npm ci): initialize local node_modules packages from dependencies declared in package.json (this will also automatically call a long-running compilation stage in npm run postinstall)
\n
in case of failure to NPM \"install\" because of \"Divina player\" SHA integrity mismatch, please try running the following command in your shell: node scripts/package-lock-patch.js && cat package-lock.json | grep -i divina-player-js (this converts SSH GitHub references to HTTPS ones)
\n
in case of NPM / Node GYP failing to compile native libs in Windows under Visual Studio 2019's command line tools: npm config set msvs_version 2019 --global and npm config set msbuild_path \"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\MSBuild\\Current\\Bin\\MSBuild.exe\" (adjust with your own path, for example Enterprise or Professional instead of Community)
\n
\n
Start application in development environment
\n
(with hot-reload dev server, web inspectors / debuggers)
\n
\n
npm run start:dev (or npm run start:dev:quick to bypass TypeScript checks / launch the app faster)
\n
\n
Start application in production environment
\n
\n
npm start (or npm run start)
\n
\n
Build installers
\n
\n
npm run package:win or npm run package:mac or npm run package:linux
[args]\n\nCommands:\n thorium opds import opds feed\n thorium import import epub or lpcl file\n thorium read searches already-imported publications with the\n provided TITLE, and opens the reader with the\n first match\n thorium [path] import and read an epub or lcpl file [default]\n thorium completion generate bash completion script\n\nPositionals:\n path path of your publication, it can be an absolute, relative path [string]\n\nOptions:\n --version Show version number [boolean]\n --help Show help [boolean]\">
thorium <cmd> [args]\n\nCommands:\n thorium opds <title> <url> import opds feed\n thorium import <path> import epub or lpcl file\n thorium read <title> searches already-imported publications with the\n provided TITLE, and opens the reader with the\n first match\n thorium [path] import and read an epub or lcpl file [default]\n thorium completion generate bash completion script\n\nPositionals:\n path path of your publication, it can be an absolute, relative path [string]\n\nOptions:\n --version Show version number [boolean]\n --help Show help [boolean]\n
\n
",
"readmeOriginal": "
Thorium Reader
\n
Thorium Reader is an easy to use EPUB reading application for Windows 10/10S, MacOS and Linux. After importing e-books from a directory or OPDS feed, you'll be able to read on any screen size, customize layout settings, navigate via the table of contents or page list, set bookmarks ... A great care is taken to ensure the accessibility of the application for visual impaired people using NVDA, JAWS or Narrator.
\n
Free application. No ads. No private data flowing anywhere.
\n
This project is in constant evolution, corrections and new features will be added soon and your support is welcome for that. The application is based on the open-source Readium Desktop toolkit.
Optionally: C++ compiler for native NodeJS modules, should work out of the box in Linux and MacOS. On Windows, Visual Studio can be installed, or simply call npm install -g windows-build-tools.
\n\n
Technologies
\n
\n
typescript
\n
electron
\n
reactjs
\n
redux
\n
saga
\n
i18next
\n
\n
Quick start
\n
Install dependencies
\n
\n
npm install (or npm ci): initialize local node_modules packages from dependencies declared in package.json (this will also automatically call a long-running compilation stage in npm run postinstall)
\n
in case of failure to NPM \"install\" because of \"Divina player\" SHA integrity mismatch, please try running the following command in your shell: node scripts/package-lock-patch.js && cat package-lock.json | grep -i divina-player-js (this converts SSH GitHub references to HTTPS ones)
\n
in case of NPM / Node GYP failing to compile native libs in Windows under Visual Studio 2019's command line tools: npm config set msvs_version 2019 --global and npm config set msbuild_path \"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\MSBuild\\Current\\Bin\\MSBuild.exe\" (adjust with your own path, for example Enterprise or Professional instead of Community)
\n
\n
Start application in development environment
\n
(with hot-reload dev server, web inspectors / debuggers)
\n
\n
npm run start:dev (or npm run start:dev:quick to bypass TypeScript checks / launch the app faster)
\n
\n
Start application in production environment
\n
\n
npm start (or npm run start)
\n
\n
Build installers
\n
\n
npm run package:win or npm run package:mac or npm run package:linux
thorium <cmd> [args]\n\nCommands:\n thorium opds <title> <url> import opds feed\n thorium import <path> import epub or lpcl file\n thorium read <title> searches already-imported publications with the\n provided TITLE, and opens the reader with the\n first match\n thorium [path] import and read an epub or lcpl file [default]\n thorium completion generate bash completion script\n\nPositionals:\n path path of your publication, it can be an absolute, relative path [string]\n\nOptions:\n --version Show version number [boolean]\n --help Show help [boolean]\n
ThisMyPC provides a neat web interface that can be used for browsing your desktop drives from any device in your browser itself. With the help of NodeJs, the file details are displayed in JSON format that can then be easily displayed in web browsers.
\n
\n
\n
The source code is open so that you can download the source code and set it up with ease if you would like to have your own exclusive environment.
\n
\n
\n
App Screenshots
\n
\n\n
\n
Desktop App Login
\n
Desktop App Open
\n
Web App computer hard drives
\n
Web App computer hard drives Open
\n
\n\n\n
\n
\n
\n
\n
\n
\n\n
\n
Folder Structure
\n
.\n├── .github/ISSUE_TEMPLATE\n├── doc # All Api doc and gif files\n├── thisMyPCApp # Electron JS app folder\n├── thisMyPCServer # Node JS MongoDB and Express JS server folder\n├── thisMyPCWeb # Angular website folder\n├── .gitignore\n├── .gitlab-ci.yml\n├── CODE_OF_CONDUCT.md\n├── LICENSE\n└── README.md\n
\n
What (This my pc) ?
\n
The concept behind thismypc app was to transfer your computer folder and file information through a nodeJS server to the web end as JSON data.
\n
Why (This my pc) ?
\n
\n
The app's responsive web interface helps you to browse file in any resolution device.
\n
You can use source code for your own projects.
\n
It works well in low bandwidth environments.
\n
\n
How to (Wiki) ?
\n
All usage instruction and information update on Github Wiki.
ThisMyPC provides a neat web interface that can be used for browsing your desktop drives from any device in your browser itself. With the help of NodeJs, the file details are displayed in JSON format that can then be easily displayed in web browsers.
\n
\n
\n
The source code is open so that you can download the source code and set it up with ease if you would like to have your own exclusive environment.
\n
\n
\n
App Screenshots
\n
\n\n
\n
Desktop App Login
\n
Desktop App Open
\n
Web App computer hard drives
\n
Web App computer hard drives Open
\n
\n\n\n
\n
\n
\n
\n
\n
\n\n
\n
Folder Structure
\n
.\n├── .github/ISSUE_TEMPLATE\n├── doc # All Api doc and gif files\n├── thisMyPCApp # Electron JS app folder\n├── thisMyPCServer # Node JS MongoDB and Express JS server folder\n├── thisMyPCWeb # Angular website folder\n├── .gitignore\n├── .gitlab-ci.yml\n├── CODE_OF_CONDUCT.md\n├── LICENSE\n└── README.md\n
\n
What (This my pc) ?
\n
The concept behind thismypc app was to transfer your computer folder and file information through a nodeJS server to the web end as JSON data.
\n
Why (This my pc) ?
\n
\n
The app's responsive web interface helps you to browse file in any resolution device.
\n
You can use source code for your own projects.
\n
It works well in low bandwidth environments.
\n
\n
How to (Wiki) ?
\n
All usage instruction and information update on Github Wiki.
\nWhat is the best theme for you? Just change the theme settings on your computer!
\n
FAQ
\n
What is Threema?\nThreema is a swiss-made 🇨🇭 communication app like WhatsApp, with end-to-end encryption 🔐. Source code of Threema is also avaliable here. \nWhy this software? \nI created this application because I wanted a real desktop app for Threema, just like WhatsApp, Telegram or Signal.\nAlso, I added some features to suit my needs. You can request features by opening an issue.\nSome features:
\n \n Windows\n Download the exe file, then run it. Select run anyways on SmartScreen step (code-signing is so expansive...). If you are running the setup file, you need to follow the steps to install Threema For Desktop. You are done!\n \n \n macOS\n Download the dmg file, then it. Drop the Threema For Desktop.app file into Applications folder. Run the .APP file by following theses steps: Finder > Applications > Right click on Threema For Desktop.app > Open > Open. After that, you will be able to launch Threema For Desktop from Launchpad or Spotlight, but you'll need to do this again everytime you update the app (That's because Apple's code signing is verry expansive...).\n \n \n Linux\n Install AppImage Launcher from here. This will allow you to install Threema For Desktop like another software. Then download AppImage file from releases page. Finally, double click the file. It's done.\n \n \n
\n\nSome badges, if you want\n\n\n\n\n\n\n\n\n\n\n\n
",
"readmeOriginal": "
Threema For Desktop
\n
Unofficial desktop app for Threema
\n
\nWhat is the best theme for you? Just change the theme settings on your computer!
\n
FAQ
\n
What is Threema?\nThreema is a swiss-made 🇨🇭 communication app like WhatsApp, with end-to-end encryption 🔐. Source code of Threema is also avaliable here. \nWhy this software? \nI created this application because I wanted a real desktop app for Threema, just like WhatsApp, Telegram or Signal.\nAlso, I added some features to suit my needs. You can request features by opening an issue.\nSome features:
\n \n Windows\n Download the exe file, then run it. Select run anyways on SmartScreen step (code-signing is so expansive...). If you are running the setup file, you need to follow the steps to install Threema For Desktop. You are done!\n \n \n macOS\n Download the dmg file, then it. Drop the Threema For Desktop.app file into Applications folder. Run the .APP file by following theses steps: Finder > Applications > Right click on Threema For Desktop.app > Open > Open. After that, you will be able to launch Threema For Desktop from Launchpad or Spotlight, but you'll need to do this again everytime you update the app (That's because Apple's code signing is verry expansive...).\n \n \n Linux\n Install AppImage Launcher from here. This will allow you to install Threema For Desktop like another software. Then download AppImage file from releases page. Finally, double click the file. It's done.\n \n \n
\n\nSome badges, if you want\n\n\n\n\n\n\n\n\n\n\n\n
Bit stands at the intersection between product and\nengineering. It helps you take complex product\nrequirements, and break them down into independent, and\nreusable pieces called \"components\". It allows you to\ncreate components and compose them with each other.\nComponents are described by names and APIs, and contain\nsource code implementation. They can be of different kinds\nlike apps, pages, UI components, backend services and even\ncontent. You can think of almost anything in components.
git clone https://github.com/wurde/custom-elements\ncd custom-elements\n\n# Start the development server (open localhost:3000)\nbit start\n\n# Or run the app in production mode\nbit run comic\n\n# Generate a dependencies graph\nbit graph\n\n# Print a list of other commands\nbit help
\n
License
\n
This project is FREE to use, reuse, remix, and resell.\nThis is made possible by the MIT license.
Bit stands at the intersection between product and\nengineering. It helps you take complex product\nrequirements, and break them down into independent, and\nreusable pieces called \"components\". It allows you to\ncreate components and compose them with each other.\nComponents are described by names and APIs, and contain\nsource code implementation. They can be of different kinds\nlike apps, pages, UI components, backend services and even\ncontent. You can think of almost anything in components.
git clone https://github.com/wurde/custom-elements\ncd custom-elements\n\n# Start the development server (open localhost:3000)\nbit start\n\n# Or run the app in production mode\nbit run comic\n\n# Generate a dependencies graph\nbit graph\n\n# Print a list of other commands\nbit help
\n
License
\n
This project is FREE to use, reuse, remix, and resell.\nThis is made possible by the MIT license.
Automatically track applications usage and working time.
\n
\n
With Tockler you can go back in time and see what you were working on. You can get information on what apps were used - exactly at what time - and what title the application had at that moment. This is enough to determine how much you did something.
\n
\n
Track how you spent your time on a computer.
\n
\n
Tockler tracks active applications usage and computer state. It records active application titles. It tracks idle, offline, and online state. You can see this data with a nice interactive timeline chart.
\n
\n
Analyze your computer usage
\n
\n
See you total online time today, yesterday, or any other day. In monthly calendar views and with charts.
Tockler needs YOUR support. Currently, every expense is coming from my pocket. It would be awesome if this project would keep itself alive from donations.\n
Automatically track applications usage and working time.
\n
\n
With Tockler you can go back in time and see what you were working on. You can get information on what apps were used - exactly at what time - and what title the application had at that moment. This is enough to determine how much you did something.
\n
\n
Track how you spent your time on a computer.
\n
\n
Tockler tracks active applications usage and computer state. It records active application titles. It tracks idle, offline, and online state. You can see this data with a nice interactive timeline chart.
\n
\n
Analyze your computer usage
\n
\n
See you total online time today, yesterday, or any other day. In monthly calendar views and with charts.
Tockler needs YOUR support. Currently, every expense is coming from my pocket. It would be awesome if this project would keep itself alive from donations.\n
This project is a Web application that allow the user to have a list of tasks to do. This Web application has been made with React*, Nodejs and Electronjs for desktop version (Windows, MacOS, Linux). Mobile version (iOS, Android) can use PWA by adding the website to home screen and use it just like a native app.
This project is a Web application that allow the user to have a list of tasks to do. This Web application has been made with React*, Nodejs and Electronjs for desktop version (Windows, MacOS, Linux). Mobile version (iOS, Android) can use PWA by adding the website to home screen and use it just like a native app.
So you want to contribute? Yay! Great! Fun!\nI love seeing new PRs for todometer. That being said, not every pull request will be merged. The general guidelines I'll follow are:
\n
\n
Does it make developing todometer easier?
\n
Does it help other platforms (Windows, Mac, Linux) work better?
\n
Does it fix a bug?
\n
Does it break anything?
\n
Does it stick to the original goal of todometer (a simple, meter-based to-do list)
\n
Does it reduce the build size?
\n
Is it necessary?
\n
\n
Regarding that last point, I don't expect all pull requests to be absolutely necessary. New features are good. That being said, if the new features make the app unnecessarily complex in some way without bringing value to the users, it won't be merged.
\n
Please don't be hurt if your PR isn't merged. You're lovely for working on it. If you are thinking about working on something, feel free to make an issue beforehand so that you can make sure it'll be worth your time!
\n
",
"readmeOriginal": "
todometer
\n
A simple, meter-based to-do list built with Electron and React.
So you want to contribute? Yay! Great! Fun!\nI love seeing new PRs for todometer. That being said, not every pull request will be merged. The general guidelines I'll follow are:
\n
\n
Does it make developing todometer easier?
\n
Does it help other platforms (Windows, Mac, Linux) work better?
\n
Does it fix a bug?
\n
Does it break anything?
\n
Does it stick to the original goal of todometer (a simple, meter-based to-do list)
\n
Does it reduce the build size?
\n
Is it necessary?
\n
\n
Regarding that last point, I don't expect all pull requests to be absolutely necessary. New features are good. That being said, if the new features make the app unnecessarily complex in some way without bringing value to the users, it won't be merged.
\n
Please don't be hurt if your PR isn't merged. You're lovely for working on it. If you are thinking about working on something, feel free to make an issue beforehand so that you can make sure it'll be worth your time!
Project Tofino is a browser interaction experiment.
\n
The kinds of things we use browsers for on PCs and mobile devices are different\nthan they were when the current \"tabs across the top\" browsers were designed.\nWe believe we can do a lot better by focusing on the tasks and activities users\nengage browsers for. Project Tofino is one of our explorations.
\n
This project is extremely immature. It's currently at the \"OK, lets throw some\nstuff together to see what happens\" stage. Please adjust your expectations\naccordingly. The tools we're using are not a statement on the set of\ntechnologies we'll use to build a final product if these ideas pan out. We're\nlooking for the quickest way to build the experiments we want, not a long-term\ntechnical strategy.
\n
If you like a wild ride and you've got another browser for real work, we'd love\nto have your comments on what works and what doesn't. But right now the \"what\nworks\" list is a lot shorter than the \"what doesn't\" list, so maybe check back\nin a few weeks when there's more to look at.
npm start - Runs the build in production mode. Should be similar to a\npackaged build.
\n
npm run dev - Runs the build in development mode with hot module\nreloading.
\n
npm run package - Creates a distributable package.
\n
npm run clobber - Destroys a handful of temporary files (electron build,\nnode modules, configurations) to clean up invalid states. If running into\nstrange issues, try this command, followed by an npm install.
\n
\n
Even though the user agent and content services are reused between multiple\nbrowser instances, they don't outlive their parent process by default when it\nexits, to ease development. To have them kept alive even when there are no more\nclients left, npm run serve will start these services standalone for finer\nlifetime control.
\n
Testing
\n
Currently runs linting, unit and webdriver tests with mocha.
\n
npm test\n
\n
Contributing
\n
Please note that this project is released with a Contributor Code of Conduct.\nBy participating in this project you agree to abide by its terms.
This project is very new, so we'll probably revise these guidelines. Please\ncomment on a bug before putting significant effort in if you'd like to\ncontribute.
\n
The code uses examples from many different places, but the foundation was\nstarted from a set of posts from Paul Frazee:
This software is licensed under the Apache License Version 2.\nSee LICENSE for details.
\n
",
"readmeOriginal": "
Project Tofino
\n
\n\n
\n
Project Tofino is a browser interaction experiment.
\n
The kinds of things we use browsers for on PCs and mobile devices are different\nthan they were when the current \"tabs across the top\" browsers were designed.\nWe believe we can do a lot better by focusing on the tasks and activities users\nengage browsers for. Project Tofino is one of our explorations.
\n
This project is extremely immature. It's currently at the \"OK, lets throw some\nstuff together to see what happens\" stage. Please adjust your expectations\naccordingly. The tools we're using are not a statement on the set of\ntechnologies we'll use to build a final product if these ideas pan out. We're\nlooking for the quickest way to build the experiments we want, not a long-term\ntechnical strategy.
\n
If you like a wild ride and you've got another browser for real work, we'd love\nto have your comments on what works and what doesn't. But right now the \"what\nworks\" list is a lot shorter than the \"what doesn't\" list, so maybe check back\nin a few weeks when there's more to look at.
npm start - Runs the build in production mode. Should be similar to a\npackaged build.
\n
npm run dev - Runs the build in development mode with hot module\nreloading.
\n
npm run package - Creates a distributable package.
\n
npm run clobber - Destroys a handful of temporary files (electron build,\nnode modules, configurations) to clean up invalid states. If running into\nstrange issues, try this command, followed by an npm install.
\n
\n
Even though the user agent and content services are reused between multiple\nbrowser instances, they don't outlive their parent process by default when it\nexits, to ease development. To have them kept alive even when there are no more\nclients left, npm run serve will start these services standalone for finer\nlifetime control.
\n
Testing
\n
Currently runs linting, unit and webdriver tests with mocha.
\n
npm test\n
\n
Contributing
\n
Please note that this project is released with a Contributor Code of Conduct.\nBy participating in this project you agree to abide by its terms.
This project is very new, so we'll probably revise these guidelines. Please\ncomment on a bug before putting significant effort in if you'd like to\ncontribute.
\n
The code uses examples from many different places, but the foundation was\nstarted from a set of posts from Paul Frazee:
Trackabi is a platform for time tracking & employee leave management with many extras such as user activity monitoring, reports, invoicing, access roles, project estimates, or even turning Git commits into timesheet entries. Plus, we offer to play the time tracking game instead of just tracking time. We use gamification to make time tracking fun. As in video games, you can create achievements for your team based on different goals with badges, entertaining congratulation messages, & Karma points.
\n
\n
Key Features
\n
\n
Desktop Timer Application for Windows, Linux, & macOS: The app can track time based on user activity. It can automatically launch and stop the timer, differentiate work and leisure activities, and provides excellent daily reports.
\n
Gamification of time tracking: achievements and karma points for higher motivation and increased engagement.
\n
Highly Customizable Timesheets: Timesheets can be edited like spreadsheets in Excel and offer many customization options (data to display, mandatory fields, additional custom fields, etc.).
\n
Timesheets Locking: You can lock a specific period in timesheets to disallow your employees to add, modify, or delete their time entries at locked dates.
\n
Employee Leave Management Integrated with Timesheets: Personal day-off calendar for every employee and a common leave schedule with the request/approval process. - Employee leaves can be within timesheets to make it easier for managers to ensure the data is complete.
\n
Customizable Time Reports: Time reports can be generated from a timesheet based on user settings and shared through external links or exported to Excel or PDF.
\n
Invoicing & Payments: Invoices can be created from reports or independently and sent to clients by email. The system allows entering client payments and tracking totals and overdue invoices.
\n
Project Plans & Estimates: Project plans with a breakdown by milestones, tasks, and subtasks allow bottom-up time and budget estimating. Estimated amounts can be matched against real live data from employee timesheets.
\n
User Access Roles: The system supports advanced user access roles based on editable privileges. Plus, every user may access many company accounts — join a company as an employee and create his company account utilizing the same username.
\n
Client Access: Clients can be invited to access saved time reports, invoices, and timesheets related to their projects. It helps a client to keep an eye on the time spent by his contractor and control expenses.
\n
Git Commits Import: Import of commits from Git and converting them into time entries is an excellent feature for software developers. The Git commits with comments can be converted into timesheet entries.
\n
Informative Dashboards: A bird-eye view dashboard shows time worked summaries, employee absence days, and alerts about missing time reports (less time than expected).
\n
Company Data Insights: Detailed overview of every employee's daily activity showing time worked, time added to a timesheet, applications used, idle time, etc.
Trackabi is a platform for time tracking & employee leave management with many extras such as user activity monitoring, reports, invoicing, access roles, project estimates, or even turning Git commits into timesheet entries. Plus, we offer to play the time tracking game instead of just tracking time. We use gamification to make time tracking fun. As in video games, you can create achievements for your team based on different goals with badges, entertaining congratulation messages, & Karma points.
\n
\n
Key Features
\n
\n
Desktop Timer Application for Windows, Linux, & macOS: The app can track time based on user activity. It can automatically launch and stop the timer, differentiate work and leisure activities, and provides excellent daily reports.
\n
Gamification of time tracking: achievements and karma points for higher motivation and increased engagement.
\n
Highly Customizable Timesheets: Timesheets can be edited like spreadsheets in Excel and offer many customization options (data to display, mandatory fields, additional custom fields, etc.).
\n
Timesheets Locking: You can lock a specific period in timesheets to disallow your employees to add, modify, or delete their time entries at locked dates.
\n
Employee Leave Management Integrated with Timesheets: Personal day-off calendar for every employee and a common leave schedule with the request/approval process. - Employee leaves can be within timesheets to make it easier for managers to ensure the data is complete.
\n
Customizable Time Reports: Time reports can be generated from a timesheet based on user settings and shared through external links or exported to Excel or PDF.
\n
Invoicing & Payments: Invoices can be created from reports or independently and sent to clients by email. The system allows entering client payments and tracking totals and overdue invoices.
\n
Project Plans & Estimates: Project plans with a breakdown by milestones, tasks, and subtasks allow bottom-up time and budget estimating. Estimated amounts can be matched against real live data from employee timesheets.
\n
User Access Roles: The system supports advanced user access roles based on editable privileges. Plus, every user may access many company accounts — join a company as an employee and create his company account utilizing the same username.
\n
Client Access: Clients can be invited to access saved time reports, invoices, and timesheets related to their projects. It helps a client to keep an eye on the time spent by his contractor and control expenses.
\n
Git Commits Import: Import of commits from Git and converting them into time entries is an excellent feature for software developers. The Git commits with comments can be converted into timesheet entries.
\n
Informative Dashboards: A bird-eye view dashboard shows time worked summaries, employee absence days, and alerts about missing time reports (less time than expected).
\n
Company Data Insights: Detailed overview of every employee's daily activity showing time worked, time added to a timesheet, applications used, idle time, etc.
Instead of npm install you may also install with yarn.
\n
Running Transee
\n
In order to run this project 2 scripts will need to be executed dev:react and dev:electron, run each one in a different terminal and always run dev:react before dev:electron, or dev to run them in order automatically
\n
npm run dev:react
\n
npm run dev:electron
\n
or
\n
npm run dev
\n
Packaging
\n
To generate a project package run package
\n
npm run package
\n
",
"readmeOriginal": "
\n
\n
Transee
\n
Simple and useful tool for quick translation - reference to Google Translate
Instead of npm install you may also install with yarn.
\n
Running Transee
\n
In order to run this project 2 scripts will need to be executed dev:react and dev:electron, run each one in a different terminal and always run dev:react before dev:electron, or dev to run them in order automatically
Trilium is provided as either desktop application (Linux and Windows) or web application hosted on your server (Linux). Mac OS desktop build is available, but it is unsupported.
\n
\n
If you want to use Trilium on the desktop, download binary release for your platform from latest release, unzip the package and run trilium executable.
\n
If you want to install Trilium on server, follow this page.\n
\n
Currently only recent Chrome and Firefox are supported (tested) browsers.
You can donate using GitHub Sponsors, PayPal or Bitcoin (bitcoin:bc1qv3svjn40v89mnkre5vyvs2xw6y8phaltl385d2).
\n
License
\n
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Trilium is provided as either desktop application (Linux and Windows) or web application hosted on your server (Linux). Mac OS desktop build is available, but it is unsupported.
\n
\n
If you want to use Trilium on the desktop, download binary release for your platform from latest release, unzip the package and run trilium executable.
\n
If you want to install Trilium on server, follow this page.\n
\n
Currently only recent Chrome and Firefox are supported (tested) browsers.
You can donate using GitHub Sponsors, PayPal or Bitcoin (bitcoin:bc1qv3svjn40v89mnkre5vyvs2xw6y8phaltl385d2).
\n
License
\n
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
P.S. This app saves the previosuly entered information in the systems %APPDATA% directory so that the whole information is not typed again.\nNOTHING is collected by me. Also, this app establishes connection to the internet to check for the updates.
\n
",
"readmeOriginal": "
TriCo-electron-app
\n
\n\n\n\n
\n
This App Converts your correctly formatted Excel Spreadsheet to a specified table/collection in specified Database in MYSQL/MongoDB.
\n
Do checkout the upcoming features in CHANGELOG.md
\n
Features
\n\n
Dump your excel/csv sheet into your preferred your DB.
\n
Batch Files support
\n
Do not want to dump the whole file? You can also try selecting a range of columns and rows.
\n
Automaticaly add id as primary key (MySQL)
\n
Scared of loosing your DB? Safe mode backs up the db before processing.
\n
Dump the excel sheet into a .sql instead (MySQL)
\n
History Maintainance.
\n\n
\n
\n
Excel Formats Supported
\n
Supported Excel formats are XLS/XLSX/CSV
\n
Spreadsheet Format
\n
Please have a look at the sample Excel sheets provided to have a clear view of the File. Microsoft Sample Sheet
P.S. This app saves the previosuly entered information in the systems %APPDATA% directory so that the whole information is not typed again.\nNOTHING is collected by me. Also, this app establishes connection to the internet to check for the updates.
Bring order to your research — use the power of Tropy to organize and describe\nyour research photos so you can quickly find your sources whenever you need them.
\n
Visit tropy.org to learn more or follow\n@tropy on Twitter for important announcements.\nTo get started, download the latest version of Tropy for your platform, check\nout the user's manual and join the discussion on the\nforums.
\n
If you are interested to work on Tropy or create your own builds, please\nfind more details below. Happy hacking!
\n
Install from Source
\n
Install the latest version of Node.js (at least the\nversion that ships with the current Electron\nrelease) and all requirements needed to use\nnode-gyp on your platform.
\n
Finally, clone this repository and\ninstall all of Tropy's dependencies:
\n
$ npm install\n$ npm run rebuild -- --force\n
\n
To test that everything is set up correctly, run:
\n
$ npm test\n
\n
Creating Builds
\n
To create a dev-build for your current platform run npm run build at the\nroot of the repository. This will create a dev-build of Tropy in the dist\nfolder.
\n
Running in Dev-Mode
\n
Alternatively, you can start Tropy in dev-mode directly from the root of the\nrepository, by running npm start.
\n
",
"readmeOriginal": "
Tropy
\n
\n
\n
Bring order to your research — use the power of Tropy to organize and describe\nyour research photos so you can quickly find your sources whenever you need them.
\n
Visit tropy.org to learn more or follow\n@tropy on Twitter for important announcements.\nTo get started, download the latest version of Tropy for your platform, check\nout the user's manual and join the discussion on the\nforums.
\n
If you are interested to work on Tropy or create your own builds, please\nfind more details below. Happy hacking!
\n
Install from Source
\n
Install the latest version of Node.js (at least the\nversion that ships with the current Electron\nrelease) and all requirements needed to use\nnode-gyp on your platform.
\n
Finally, clone this repository and\ninstall all of Tropy's dependencies:
\n
$ npm install\n$ npm run rebuild -- --force\n
\n
To test that everything is set up correctly, run:
\n
$ npm test\n
\n
Creating Builds
\n
To create a dev-build for your current platform run npm run build at the\nroot of the repository. This will create a dev-build of Tropy in the dist\nfolder.
\n
Running in Dev-Mode
\n
Alternatively, you can start Tropy in dev-mode directly from the root of the\nrepository, by running npm start.
This repository is archived. To help us better improve the product and protect our intellectual assets, Translatium's development has been moved to a closed source universal code base that runs across macOS, Windows, Linux, Android, iOS and iPadOS.
\n
Introduction
\n
\n\n
\n
macOS
\n
Linux
\n
Windows
\n
\n\n\n
\n
\n
\n
\n
\n\n
\n
The legacy code of Translatium for desktop (version 20 and earlier).
\n
master branch only includes the source code of Translatium 9+. For older versions, check out the legacy- branches.
\n\n
Development
\n
# First, clone the project:\ngit clone https://github.com/quanglam2807/translatium.git\ncd translatium\n\n# set API keys\nexport REACT_APP_OCR_SPACE_API_KEY=...\n\n# install the dependencies\nyarn\n\n# Run development mode of Translatium\nyarn electron-dev\n\n# Build for production\nyarn dist\n
\n
",
"readmeOriginal": "
Translatium
\n
Archived
\n
This repository is archived. To help us better improve the product and protect our intellectual assets, Translatium's development has been moved to a closed source universal code base that runs across macOS, Windows, Linux, Android, iOS and iPadOS.
\n
Introduction
\n
\n\n
\n
macOS
\n
Linux
\n
Windows
\n
\n\n\n
\n
\n
\n
\n
\n\n
\n
The legacy code of Translatium for desktop (version 20 and earlier).
\n
master branch only includes the source code of Translatium 9+. For older versions, check out the legacy- branches.
\n\n
Development
\n
# First, clone the project:\ngit clone https://github.com/quanglam2807/translatium.git\ncd translatium\n\n# set API keys\nexport REACT_APP_OCR_SPACE_API_KEY=...\n\n# install the dependencies\nyarn\n\n# Run development mode of Translatium\nyarn electron-dev\n\n# Build for production\nyarn dist\n
While ttth supports a growing list of pre-configured services, you can as well add custom urls yourself (using the CUSTOM URL type).\nPlease see the supported services for more details.
\n
ui
\n
ttth comes with several themes. This readme is only featuring the default theme.
ttth is using sentry to collect error reports. This helps heavily finding bugs which might occur only in some specific use-cases. Please see the sentry privacy policy for more details.
\n
ttth is not tracking it's users (i.e. using Google Analytics or similar)
\n
All data is stored locally only.
\n
Sessions will persist using the partition:persist attribute for electrons webview.
\n
\n
You are always welcome to check and even improve the code.
While ttth supports a growing list of pre-configured services, you can as well add custom urls yourself (using the CUSTOM URL type).\nPlease see the supported services for more details.
\n
ui
\n
ttth comes with several themes. This readme is only featuring the default theme.
ttth is using sentry to collect error reports. This helps heavily finding bugs which might occur only in some specific use-cases. Please see the sentry privacy policy for more details.
\n
ttth is not tracking it's users (i.e. using Google Analytics or similar)
\n
All data is stored locally only.
\n
Sessions will persist using the partition:persist attribute for electrons webview.
\n
\n
You are always welcome to check and even improve the code.
Head to the releases page and download the appropriate installer for your system.
\n
Snapcraft
\n
Ubuntu Linux users can directly install through Snapcraftsnap install tusk
\n
Homebrew
\n
Macos users can directly install through Homebrew Caskbrew cask install tusk
\n
Note
\n
The version available on Homebrew Cask may not be the latest, since unlike Snapcraft, it is not offically maintained. If that is the case, please consider downloading directly from the Github releases page.
\n
Features
\n
Visit the project homepage to view all features in detail.
\n
\n
Auto Night Mode - Press Cmd/CtrlAltN to allow Tusk to adjust to your environment.
\n
Black Theme - Activate it by pressing Cmd/CtrlAltE.
\n
Compact Mode - Downsize the window to enter the mode.
\n
Custom Shortcut Keys - Navigate to ~/.tusk.json or press Cmd/Ctrl. to modify any shortcut key. To reset delete ~/.tusk.json & restart the app.
\n
Dark Theme - Activate it by pressing Cmd/CtrlD.
\n
Drag & Drop Files - Attach files by dragging them to the app window.
\n
Export Notes as Markdown - Press Cmd/CtrlO to save your notes as Markdown files.
\n
Export Notes as HTML - Press Cmd/CtrlShiftH to save your notes as HTML files.
\n
Export Notes as PDF - Press Cmd/CtrlShiftE to save your notes as PDF files.
\n
Focus Mode - Activate it by pressing Cmd/CtrlK.
\n
Global Shortcut Keys - Enable them by using the File > Enable Global Shortcut Keys option.
\n
Note Navigation - Navigate your notes by pressing Cmd/CtrlTab / Cmd/CtrlShiftTab or jump directly to one by using Cmd/Ctrl1 - 9.
\n
Note Printing - Press Cmd/CtrlAltP to print your notes.
\n
Scalable Interface - Adjust the zooming factor by pressing Cmd/CtrlShift= or Cmd/Ctrl-.
\n
Sepia Theme - Activate it by pressing Cmd/CtrlG.
\n
Update Notifications - Customize the apps update checking frequency.
\n
Yinxiang Support - Login to Yinxiang by using the File > Switch to Yinxiang option.
\n
\n
Keyboard Shortcuts
\n
Local Shortcut Keys
\n
70+ local keyboard shortcuts. Toggle anything in a flash.
\n\nView all the available local keyboard shortcuts.\n \n
\n\n
\n
Description
\n
Keys
\n
\n\n\n
\n
Activate Auto Night Mode
\n
Cmd/CtrlAltN
\n
\n
\n
Add Link
\n
Cmd/CtrlShiftK
\n
\n
\n
Add Shortcut
\n
Cmd/CtrlAltS
\n
\n
\n
Align Center
\n
Cmd/CtrlAltM
\n
\n
\n
Align Left
\n
Cmd/CtrlAltL
\n
\n
\n
Align Right
\n
Cmd/CtrlAltR
\n
\n
\n
Attach File
\n
Cmd/CtrlShiftF
\n
\n
\n
Bold Text
\n
Cmd/CtrlB
\n
\n
\n
Bulleted List
\n
Cmd/CtrlShift.
\n
\n
\n
Change Font Size
\n
Cmd/CtrlAlt1 - 6
\n
\n
\n
Code Block
\n
Cmd/CtrlShiftL
\n
\n
\n
Decrease Indentation
\n
Cmd/CtrlShiftM
\n
\n
\n
Delete Note
\n
Delete
\n
\n
\n
Edit Shortcut Keys
\n
Cmd/Ctrl.
\n
\n
\n
Export Note as HTML
\n
Cmd/CtrlShiftH
\n
\n
\n
Export Note as Markdown
\n
Cmd/CtrlO
\n
\n
\n
Export Note as PDF
\n
Cmd/CtrlShiftE
\n
\n
\n
Increase Indentation
\n
Cmd/CtrlAltK
\n
\n
\n
Insert Date Stamp
\n
Cmd/CtrlShift;
\n
\n
\n
Insert Date-Time Stamp
\n
Cmd/Ctrl;
\n
\n
\n
Insert from Drive
\n
Cmd/CtrlShiftD
\n
\n
\n
Insert Horizontal Rule
\n
Cmd/CtrlShift-
\n
\n
\n
Italic Text
\n
Cmd/CtrlI
\n
\n
\n
Jump to Note
\n
Cmd/Ctrl1 - 9
\n
\n
\n
Make Text Larger
\n
Cmd/CtrlShift=
\n
\n
\n
Make Text Smaller
\n
Cmd/Ctrl-
\n
\n
\n
Navigate to Next Note
\n
Cmd/CtrlTab
\n
\n
\n
Navigate to Previews Note
\n
Cmd/CtrlShiftTab
\n
\n
\n
New Note
\n
Cmd/CtrlN
\n
\n
\n
New Notebook
\n
Cmd/CtrlShiftN
\n
\n
\n
New Tag
\n
Cmd/CtrlShiftT
\n
\n
\n
Numbered List
\n
Cmd/CtrlShiftO
\n
\n
\n
Print Note
\n
Cmd/CtrlAltP
\n
\n
\n
Remove Formatting
\n
Cmd/CtrlShiftSpace
\n
\n
\n
Reset Zoom Level
\n
Cmd/Ctrl0
\n
\n
\n
Return to Notes
\n
Esc
\n
\n
\n
Save Note
\n
Cmd/CtrlS
\n
\n
\n
Search Notes
\n
Cmd/CtrlF
\n
\n
\n
Set Always on Top
\n
Cmd/CtrlShiftP
\n
\n
\n
Set Reminder
\n
Cmd/CtrlE
\n
\n
\n
Strikethrough Text
\n
Cmd/CtrlT
\n
\n
\n
Subscript Text
\n
Cmd/CtrlShift]
\n
\n
\n
Superscript Text
\n
Cmd/CtrlShift[
\n
\n
\n
Toggle Black Theme
\n
Cmd/CtrlAltE
\n
\n
\n
Toggle Checkbox
\n
Cmd/CtrlShiftB
\n
\n
\n
Toggle Dark Theme
\n
Cmd/CtrlD
\n
\n
\n
Toggle Focus Mode
\n
Cmd/CtrlK
\n
\n
\n
Toggle Notebooks
\n
AltShiftN
\n
\n
\n
Toggle Sepia Theme
\n
Cmd/CtrlG
\n
\n
\n
Toggle Settings
\n
Cmd/Ctrl,
\n
\n
\n
Toggle Shortcuts
\n
Cmd/CtrlShiftS
\n
\n
\n
Toggle Sidebar
\n
Cmd/Ctrl\\
\n
\n
\n
Toggle Tags
\n
AltShiftT
\n
\n
\n
Toggle Window Menu
\n
Alt
\n
\n
\n
Underline Text
\n
Cmd/CtrlU
\n
\n\n
\n \n\n
Global Shortcut Keys
\n
Access Tusk at any moment from anywhere within your operating system. All global shortcuts can be customized to match your own preference through the configuration file ~/.tusk.json.
\n\nView all the available global keyboard shortcuts.\n \n
Head to the releases page and download the appropriate installer for your system.
\n
Snapcraft
\n
Ubuntu Linux users can directly install through Snapcraftsnap install tusk
\n
Homebrew
\n
Macos users can directly install through Homebrew Caskbrew cask install tusk
\n
Note
\n
The version available on Homebrew Cask may not be the latest, since unlike Snapcraft, it is not offically maintained. If that is the case, please consider downloading directly from the Github releases page.
\n
Features
\n
Visit the project homepage to view all features in detail.
\n
\n
Auto Night Mode - Press Cmd/CtrlAltN to allow Tusk to adjust to your environment.
\n
Black Theme - Activate it by pressing Cmd/CtrlAltE.
\n
Compact Mode - Downsize the window to enter the mode.
\n
Custom Shortcut Keys - Navigate to ~/.tusk.json or press Cmd/Ctrl. to modify any shortcut key. To reset delete ~/.tusk.json & restart the app.
\n
Dark Theme - Activate it by pressing Cmd/CtrlD.
\n
Drag & Drop Files - Attach files by dragging them to the app window.
\n
Export Notes as Markdown - Press Cmd/CtrlO to save your notes as Markdown files.
\n
Export Notes as HTML - Press Cmd/CtrlShiftH to save your notes as HTML files.
\n
Export Notes as PDF - Press Cmd/CtrlShiftE to save your notes as PDF files.
\n
Focus Mode - Activate it by pressing Cmd/CtrlK.
\n
Global Shortcut Keys - Enable them by using the File > Enable Global Shortcut Keys option.
\n
Note Navigation - Navigate your notes by pressing Cmd/CtrlTab / Cmd/CtrlShiftTab or jump directly to one by using Cmd/Ctrl1 - 9.
\n
Note Printing - Press Cmd/CtrlAltP to print your notes.
\n
Scalable Interface - Adjust the zooming factor by pressing Cmd/CtrlShift= or Cmd/Ctrl-.
\n
Sepia Theme - Activate it by pressing Cmd/CtrlG.
\n
Update Notifications - Customize the apps update checking frequency.
\n
Yinxiang Support - Login to Yinxiang by using the File > Switch to Yinxiang option.
\n
\n
Keyboard Shortcuts
\n
Local Shortcut Keys
\n
70+ local keyboard shortcuts. Toggle anything in a flash.
\n\nView all the available local keyboard shortcuts.\n \n
\n\n
\n
Description
\n
Keys
\n
\n\n\n
\n
Activate Auto Night Mode
\n
Cmd/CtrlAltN
\n
\n
\n
Add Link
\n
Cmd/CtrlShiftK
\n
\n
\n
Add Shortcut
\n
Cmd/CtrlAltS
\n
\n
\n
Align Center
\n
Cmd/CtrlAltM
\n
\n
\n
Align Left
\n
Cmd/CtrlAltL
\n
\n
\n
Align Right
\n
Cmd/CtrlAltR
\n
\n
\n
Attach File
\n
Cmd/CtrlShiftF
\n
\n
\n
Bold Text
\n
Cmd/CtrlB
\n
\n
\n
Bulleted List
\n
Cmd/CtrlShift.
\n
\n
\n
Change Font Size
\n
Cmd/CtrlAlt1 - 6
\n
\n
\n
Code Block
\n
Cmd/CtrlShiftL
\n
\n
\n
Decrease Indentation
\n
Cmd/CtrlShiftM
\n
\n
\n
Delete Note
\n
Delete
\n
\n
\n
Edit Shortcut Keys
\n
Cmd/Ctrl.
\n
\n
\n
Export Note as HTML
\n
Cmd/CtrlShiftH
\n
\n
\n
Export Note as Markdown
\n
Cmd/CtrlO
\n
\n
\n
Export Note as PDF
\n
Cmd/CtrlShiftE
\n
\n
\n
Increase Indentation
\n
Cmd/CtrlAltK
\n
\n
\n
Insert Date Stamp
\n
Cmd/CtrlShift;
\n
\n
\n
Insert Date-Time Stamp
\n
Cmd/Ctrl;
\n
\n
\n
Insert from Drive
\n
Cmd/CtrlShiftD
\n
\n
\n
Insert Horizontal Rule
\n
Cmd/CtrlShift-
\n
\n
\n
Italic Text
\n
Cmd/CtrlI
\n
\n
\n
Jump to Note
\n
Cmd/Ctrl1 - 9
\n
\n
\n
Make Text Larger
\n
Cmd/CtrlShift=
\n
\n
\n
Make Text Smaller
\n
Cmd/Ctrl-
\n
\n
\n
Navigate to Next Note
\n
Cmd/CtrlTab
\n
\n
\n
Navigate to Previews Note
\n
Cmd/CtrlShiftTab
\n
\n
\n
New Note
\n
Cmd/CtrlN
\n
\n
\n
New Notebook
\n
Cmd/CtrlShiftN
\n
\n
\n
New Tag
\n
Cmd/CtrlShiftT
\n
\n
\n
Numbered List
\n
Cmd/CtrlShiftO
\n
\n
\n
Print Note
\n
Cmd/CtrlAltP
\n
\n
\n
Remove Formatting
\n
Cmd/CtrlShiftSpace
\n
\n
\n
Reset Zoom Level
\n
Cmd/Ctrl0
\n
\n
\n
Return to Notes
\n
Esc
\n
\n
\n
Save Note
\n
Cmd/CtrlS
\n
\n
\n
Search Notes
\n
Cmd/CtrlF
\n
\n
\n
Set Always on Top
\n
Cmd/CtrlShiftP
\n
\n
\n
Set Reminder
\n
Cmd/CtrlE
\n
\n
\n
Strikethrough Text
\n
Cmd/CtrlT
\n
\n
\n
Subscript Text
\n
Cmd/CtrlShift]
\n
\n
\n
Superscript Text
\n
Cmd/CtrlShift[
\n
\n
\n
Toggle Black Theme
\n
Cmd/CtrlAltE
\n
\n
\n
Toggle Checkbox
\n
Cmd/CtrlShiftB
\n
\n
\n
Toggle Dark Theme
\n
Cmd/CtrlD
\n
\n
\n
Toggle Focus Mode
\n
Cmd/CtrlK
\n
\n
\n
Toggle Notebooks
\n
AltShiftN
\n
\n
\n
Toggle Sepia Theme
\n
Cmd/CtrlG
\n
\n
\n
Toggle Settings
\n
Cmd/Ctrl,
\n
\n
\n
Toggle Shortcuts
\n
Cmd/CtrlShiftS
\n
\n
\n
Toggle Sidebar
\n
Cmd/Ctrl\\
\n
\n
\n
Toggle Tags
\n
AltShiftT
\n
\n
\n
Toggle Window Menu
\n
Alt
\n
\n
\n
Underline Text
\n
Cmd/CtrlU
\n
\n\n
\n \n\n
Global Shortcut Keys
\n
Access Tusk at any moment from anywhere within your operating system. All global shortcuts can be customized to match your own preference through the configuration file ~/.tusk.json.
\n\nView all the available global keyboard shortcuts.\n \n
Cross Platform Tizen Log Viewer T.Viewer를 소개합니다. 타이젠의 dlog 메시지를 보다 쉽고 편하게 확인 할 수 있는 데스크탑 어플리케이션입니다. 사용중 불편 사항, 개선 의견, 버그 신고는 이슈를 생성해 주세요. 소스 코드는 MIT 라이센스로 모두에게 공개되어 있습니다.
Cross Platform Tizen Log Viewer T.Viewer를 소개합니다. 타이젠의 dlog 메시지를 보다 쉽고 편하게 확인 할 수 있는 데스크탑 어플리케이션입니다. 사용중 불편 사항, 개선 의견, 버그 신고는 이슈를 생성해 주세요. 소스 코드는 MIT 라이센스로 모두에게 공개되어 있습니다.
Twinkle Tray lets you easily manage the brightness levels of multiple monitors. Even though Windows 10 is capable of adjusting the backlight on most monitors, it typically doesn't support external monitors. Windows 10 also lacks any ability to manage the brightness of multiple monitors. This app inserts a new icon into your system tray, where you can click to have instant access to the brightness levels of all compatible monitors.
\n
\n
Features:
\n
\n
Adds brightness sliders to the system tray, similar to the built-in Windows 10 volume panel.
\n
Normalize backlight across different monitors.
\n
Can automatically change monitor brightness depending on the time of day.
\n
Seamlessly blends in with Windows 10. Uses your Personalization settings to match your taskbar.
Download from the Releases page and run the installer EXE.
\n
Once installation has finished, you should see the Twinkle Tray icon in your system tray.
\n
Click the icon to bring up the Adjust Brightness panel.
\n
Click away to hide the panel.
\n
Right-click the system tray icon to quit.
\n
\n
Compatibility
\n
Twinkle Tray uses DDC/CI and WMI to communicate with your monitors. Most monitors offer DDC/CI compatibility, but it may be off by default. Make sure you have the appropriate option(s) enabled on your monitor so that it can work with Twinkle Tray. Refer to your monitor's user manual for more information.
\n
Known issues:
\n
\n
The AMD Radeon Control Panel can interfere with Twinkle Tray. Ensure \"Custom Colors\" is not enabled.
\n
VGA may not be compatible.
\n
USB/Thunderbolt/Surface docks with HDMI or DisplayPort may not be compatible.
\n
\n
If some of your monitors are not being detected, please see this page for troubleshooting steps.
\n
Command Line Arguments
\n
Twinkle Tray (v1.13.0+) supports requesting brightness changes from the command line. Twinkle Tray must already be running. One monitor argument and one brightness argument are required. Multiple arguments will override each other.
\n
For example: \"%LocalAppData%\\Programs\\twinkle-tray\\Twinkle Tray.exe\" --MonitorNum=1 --Offset=-30 will adjust monitor number 1 by -30 brightness.
\n
Supported args:
\n
\n
--MonitorNum Select monitor by number. Starts at 1. Example: --MonitorNum=2
\n
--MonitorID Select monitor by internal ID. Partial or whole matches accepted. Example: --MonitorID=\"UID2353\"
\n
--All Flag to select all monitors.
\n
--Set Set brightness percentage. Example: --Set=95
--Overlay Flag to show new brightness levels in the overlay Example: --Overlay
\n
\n
This feature is not available on the Windows Store version of Twinkle Tray.
\n
Localization
\n
Thanks to several contributors, Twinkle Tray is localized for multiple languages. If you'd like to create or update a localization, see this page for details. Special thanks to Weblate for allowing free use of their service.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\n
",
"readmeOriginal": "
\n \n
\n
Twinkle Tray
\n
\n
Twinkle Tray lets you easily manage the brightness levels of multiple monitors. Even though Windows 10 is capable of adjusting the backlight on most monitors, it typically doesn't support external monitors. Windows 10 also lacks any ability to manage the brightness of multiple monitors. This app inserts a new icon into your system tray, where you can click to have instant access to the brightness levels of all compatible monitors.
\n
\n
Features:
\n
\n
Adds brightness sliders to the system tray, similar to the built-in Windows 10 volume panel.
\n
Normalize backlight across different monitors.
\n
Can automatically change monitor brightness depending on the time of day.
\n
Seamlessly blends in with Windows 10. Uses your Personalization settings to match your taskbar.
Download from the Releases page and run the installer EXE.
\n
Once installation has finished, you should see the Twinkle Tray icon in your system tray.
\n
Click the icon to bring up the Adjust Brightness panel.
\n
Click away to hide the panel.
\n
Right-click the system tray icon to quit.
\n
\n
Compatibility
\n
Twinkle Tray uses DDC/CI and WMI to communicate with your monitors. Most monitors offer DDC/CI compatibility, but it may be off by default. Make sure you have the appropriate option(s) enabled on your monitor so that it can work with Twinkle Tray. Refer to your monitor's user manual for more information.
\n
Known issues:
\n
\n
The AMD Radeon Control Panel can interfere with Twinkle Tray. Ensure \"Custom Colors\" is not enabled.
\n
VGA may not be compatible.
\n
USB/Thunderbolt/Surface docks with HDMI or DisplayPort may not be compatible.
\n
\n
If some of your monitors are not being detected, please see this page for troubleshooting steps.
\n
Command Line Arguments
\n
Twinkle Tray (v1.13.0+) supports requesting brightness changes from the command line. Twinkle Tray must already be running. One monitor argument and one brightness argument are required. Multiple arguments will override each other.
\n
For example: \"%LocalAppData%\\Programs\\twinkle-tray\\Twinkle Tray.exe\" --MonitorNum=1 --Offset=-30 will adjust monitor number 1 by -30 brightness.
\n
Supported args:
\n
\n
--MonitorNum Select monitor by number. Starts at 1. Example: --MonitorNum=2
\n
--MonitorID Select monitor by internal ID. Partial or whole matches accepted. Example: --MonitorID=\"UID2353\"
\n
--All Flag to select all monitors.
\n
--Set Set brightness percentage. Example: --Set=95
--Overlay Flag to show new brightness levels in the overlay Example: --Overlay
\n
\n
This feature is not available on the Windows Store version of Twinkle Tray.
\n
Localization
\n
Thanks to several contributors, Twinkle Tray is localized for multiple languages. If you'd like to create or update a localization, see this page for details. Special thanks to Weblate for allowing free use of their service.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/tutti-quanti-shelf\n# Go into the repository\ncd tutti-quanti-shelf\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting tutti-quanti-shelf-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Tutti Quanti Shelf.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/tutti-quanti-shelf\n# Go into the repository\ncd tutti-quanti-shelf\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting tutti-quanti-shelf-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Tutti Quanti Shelf.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
Bug reports and pull requests are welcome on GitHub at https://github.com/chrisenytc/ubauth. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
Bug reports and pull requests are welcome on GitHub at https://github.com/chrisenytc/ubauth. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
Unfx Proxy Checker - Powerful proxy checker with huge features and beautiful design. \nUnfx Proxy Parser - Nextgen proxy parser with deep links crawler. \nUnfx Proxy To Country - Sort your proxy list from ip:port format by countries.
Unfx Proxy Checker - Powerful proxy checker with huge features and beautiful design. \nUnfx Proxy Parser - Nextgen proxy parser with deep links crawler. \nUnfx Proxy To Country - Sort your proxy list from ip:port format by countries.
Note: because the executables are not signed Windows and macOS will probably prevent you from executing the installer or the program itself.
\n
\n
Installing via chocolatey repository
\n
\n
Open a powershell with administration rights (Right click on your start button and click Windows PowerShell (Admin)
\n
Type choco install ueli
\n
Accept the upcoming prompt by entering y or run above command with -y switch
\n
Run the application
\n
\n
Features
\n
Application Search
\n
This plugin is searching for applications on your computer. You can specify the folders where your applications are installed and which file extension should be used to recognize an application.
\n
\n
Browser bookmarks
\n
This plugin enables you to search your browser bookmarks.
\n
Currently supported browsers:
\n
\n
Google Chrome
\n
Chromium
\n
Firefox
\n
Brave
\n
Vivaldi
\n
SideKick
\n
Microsoft Edge
\n
Yandex Browser
\n
\n
\n
Calculator
\n
This Plugin lets you quickly do simple calculations.
\n
\n
Color Converter
\n
This plugin enables you to quickly convert colors into different formats.
\n
\n
Commandline
\n
This plugin enables you to quickly execute commandline commands.
\n
\n
Control panel (Windows only)
\n
This plugin enables you to quickly find control panel items.
\n
\n
Currency Converter
\n
This plugin enables you to quickly convert currencies. The latest conversion rates are provided by https://exchangeratesapi.io/.
\n
\n
Dictionary
\n
This plugin enables you to quickly look up the definition and synonyms of words. It uses an unofficial Google Dictionary API (https://dictionaryapi.dev/)
\n
\n
Email
\n
This plugin enables you to quickly start writing an email by typing in an email address.
\n
\n
Everything (Windows only)
\n
This feature enables you to use Everything Search to find files and folders on your local file system.
Specify the file path to es.exe in ueli's settings.
\n\n
\n
mdfind (macOS only)
\n
This plugin enables you to use the native macOS search to find files and folders on your local file system.
\n
\n
File Browser
\n
This plugin enables you to browse through your local file system. To start you have to enter a valid absolute filepath.
\n
\n
Operating System Commands
\n
Operating system commands are simple commands to control your operating system e.g. to shutdown or restart your computer.
\n
\n
Operating System Settings
\n
This plugin enables you to quickly find operating system settings.
\n
\n
Shortcuts
\n
This plugin enables you to quickly open files or websites by setting up your own shortcuts.
\n
\n
Simple Folder Search
\n
This plugin enables you to quickly search for files or folders.
\n
\n
Translation
\n
This plugin enables you to quickly translate words or short sentences. It uses an unofficial API for Linguee and may be unstable.
\n
\n
UWP (Windows only)
\n
This plugin enables you to find preinstalled UWP apps.
\n
\n
URL
\n
This plugin enables you to quickly open websites by typing in a URL.
\n
\n
Web Search
\n
This plugin enables you to quickly search the internet with your favorite web search engine by setting up your own web search engines.
\n
\n
Workflow
\n
This plugin enables you to quickly execute multiple things at once.
\n
\n
Keyboard shortcuts
\n
\n\n
\n
Keyboard shortcut
\n
Description
\n
\n\n\n
\n
AltSpace Bar
\n
Open search box (Default value, can be adjusted in settings)
\n
\n
\n
Enter
\n
Execute selected search result
\n
\n
\n
ShiftEnter
\n
Execute selected program as admin (Windows only)
\n
\n
\n
Tab
\n
Autocomplete file path
\n
\n
\n
Ctrlo
\n
Open the selected program or file at it's location (Windows)
\n
\n
\n
Cmdo
\n
Open the selected program or file at it's location (macOS)
\n
\n
\n
↑
\n
Scroll up
\n
\n
\n
↓
\n
Scroll down
\n
\n
\n
Ctrl or Cmdp
\n
Scroll up
\n
\n
\n
Ctrl or Cmdn
\n
Scroll down
\n
\n
\n
Ctrli
\n
Open settings (Windows)
\n
\n
\n
Cmd,
\n
Open settings (macOS)
\n
\n
\n
Shift↑
\n
Browse user input history up
\n
\n
\n
Shift↓
\n
Browse user input history down
\n
\n
\n
Ctrll
\n
Set focus on user input
\n
\n\n
\n
Supported Languages
\n
\n
English
\n
Chinese (简体中文)
\n
Czech (Česky)
\n
German (Deutsch)
\n
Hindi (हिन्दी)
\n
Italian (Italiano)
\n
Japanese (日本語)
\n
Korean (한국어)
\n
Portuguese (Português)
\n
Russian (Русский)
\n
Spanish (Español)
\n
Turkish (Türkçe)
\n
\n
Settings
\n
\n
To open the settings simply search for \"Settings\" or press Ctrl+i on Windows or Cmd+, on macOS. Here you can start configuring the app to your needs by enabling/disabling features or changing the settings.
\n
Updating
\n
The check if any updates are available open the settings. Under \"General Settings\" you can check if an update is available or not.
\n
On Windows you can directly update the app. On macOS you have to manually download the newest release and replace the existing app.
\n
Privacy
\n
For better search results ueli is keeping track of the applications, files and folders you are executing. If you don't want ueli to track your executions simply open the settings and click on the \"three-dot\" menu on the top right and choose \"Clear execution log\" and disable the option \"Log execution\".
\n
Known bugs
\n
\n
(#37) Window starts to move while typing when custom scaling in Windows is set.
\n
(#92) If you see an error that says spawn powershell.exe ENOENT check if powershell is installed (should be installed in all recent Versions of Windows by default) and check if powershell is in the PATH variable.
\n
(#278) If you're on macOS Catalina you might miss some system apps (for example: Books or QuickTime Player). Try adding /System/Applications to your application search settings.
Note: because the executables are not signed Windows and macOS will probably prevent you from executing the installer or the program itself.
\n
\n
Installing via chocolatey repository
\n
\n
Open a powershell with administration rights (Right click on your start button and click Windows PowerShell (Admin)
\n
Type choco install ueli
\n
Accept the upcoming prompt by entering y or run above command with -y switch
\n
Run the application
\n
\n
Features
\n
Application Search
\n
This plugin is searching for applications on your computer. You can specify the folders where your applications are installed and which file extension should be used to recognize an application.
\n
\n
Browser bookmarks
\n
This plugin enables you to search your browser bookmarks.
\n
Currently supported browsers:
\n
\n
Google Chrome
\n
Chromium
\n
Firefox
\n
Brave
\n
Vivaldi
\n
SideKick
\n
Microsoft Edge
\n
Yandex Browser
\n
\n
\n
Calculator
\n
This Plugin lets you quickly do simple calculations.
\n
\n
Color Converter
\n
This plugin enables you to quickly convert colors into different formats.
\n
\n
Commandline
\n
This plugin enables you to quickly execute commandline commands.
\n
\n
Control panel (Windows only)
\n
This plugin enables you to quickly find control panel items.
\n
\n
Currency Converter
\n
This plugin enables you to quickly convert currencies. The latest conversion rates are provided by https://exchangeratesapi.io/.
\n
\n
Dictionary
\n
This plugin enables you to quickly look up the definition and synonyms of words. It uses an unofficial Google Dictionary API (https://dictionaryapi.dev/)
\n
\n
Email
\n
This plugin enables you to quickly start writing an email by typing in an email address.
\n
\n
Everything (Windows only)
\n
This feature enables you to use Everything Search to find files and folders on your local file system.
Specify the file path to es.exe in ueli's settings.
\n\n
\n
mdfind (macOS only)
\n
This plugin enables you to use the native macOS search to find files and folders on your local file system.
\n
\n
File Browser
\n
This plugin enables you to browse through your local file system. To start you have to enter a valid absolute filepath.
\n
\n
Operating System Commands
\n
Operating system commands are simple commands to control your operating system e.g. to shutdown or restart your computer.
\n
\n
Operating System Settings
\n
This plugin enables you to quickly find operating system settings.
\n
\n
Shortcuts
\n
This plugin enables you to quickly open files or websites by setting up your own shortcuts.
\n
\n
Simple Folder Search
\n
This plugin enables you to quickly search for files or folders.
\n
\n
Translation
\n
This plugin enables you to quickly translate words or short sentences. It uses an unofficial API for Linguee and may be unstable.
\n
\n
UWP (Windows only)
\n
This plugin enables you to find preinstalled UWP apps.
\n
\n
URL
\n
This plugin enables you to quickly open websites by typing in a URL.
\n
\n
Web Search
\n
This plugin enables you to quickly search the internet with your favorite web search engine by setting up your own web search engines.
\n
\n
Workflow
\n
This plugin enables you to quickly execute multiple things at once.
\n
\n
Keyboard shortcuts
\n
\n\n
\n
Keyboard shortcut
\n
Description
\n
\n\n\n
\n
AltSpace Bar
\n
Open search box (Default value, can be adjusted in settings)
\n
\n
\n
Enter
\n
Execute selected search result
\n
\n
\n
ShiftEnter
\n
Execute selected program as admin (Windows only)
\n
\n
\n
Tab
\n
Autocomplete file path
\n
\n
\n
Ctrlo
\n
Open the selected program or file at it's location (Windows)
\n
\n
\n
Cmdo
\n
Open the selected program or file at it's location (macOS)
\n
\n
\n
↑
\n
Scroll up
\n
\n
\n
↓
\n
Scroll down
\n
\n
\n
Ctrl or Cmdp
\n
Scroll up
\n
\n
\n
Ctrl or Cmdn
\n
Scroll down
\n
\n
\n
Ctrli
\n
Open settings (Windows)
\n
\n
\n
Cmd,
\n
Open settings (macOS)
\n
\n
\n
Shift↑
\n
Browse user input history up
\n
\n
\n
Shift↓
\n
Browse user input history down
\n
\n
\n
Ctrll
\n
Set focus on user input
\n
\n\n
\n
Supported Languages
\n
\n
English
\n
Chinese (简体中文)
\n
Czech (Česky)
\n
German (Deutsch)
\n
Hindi (हिन्दी)
\n
Italian (Italiano)
\n
Japanese (日本語)
\n
Korean (한국어)
\n
Portuguese (Português)
\n
Russian (Русский)
\n
Spanish (Español)
\n
Turkish (Türkçe)
\n
\n
Settings
\n
\n
To open the settings simply search for \"Settings\" or press Ctrl+i on Windows or Cmd+, on macOS. Here you can start configuring the app to your needs by enabling/disabling features or changing the settings.
\n
Updating
\n
The check if any updates are available open the settings. Under \"General Settings\" you can check if an update is available or not.
\n
On Windows you can directly update the app. On macOS you have to manually download the newest release and replace the existing app.
\n
Privacy
\n
For better search results ueli is keeping track of the applications, files and folders you are executing. If you don't want ueli to track your executions simply open the settings and click on the \"three-dot\" menu on the top right and choose \"Clear execution log\" and disable the option \"Log execution\".
\n
Known bugs
\n
\n
(#37) Window starts to move while typing when custom scaling in Windows is set.
\n
(#92) If you see an error that says spawn powershell.exe ENOENT check if powershell is installed (should be installed in all recent Versions of Windows by default) and check if powershell is in the PATH variable.
\n
(#278) If you're on macOS Catalina you might miss some system apps (for example: Books or QuickTime Player). Try adding /System/Applications to your application search settings.
Simply install the file and the program will automatically detect the path to C: \"Riot Games\", if you have any problem visit the following link https://urgl.me/Support.html
Simply install the file and the program will automatically detect the path to C: \"Riot Games\", if you have any problem visit the following link https://urgl.me/Support.html
Unicopedia Plus is a developer-oriented set of Unicode, Unihan & emoji utilities wrapped into one single app, built with Electron.
\n
This desktop application works on macOS, Linux and Windows operating systems.
\n
\n
Utilities
\n
The following utilities are currently available:
\n
\n
CJK Font Variants
\n
JavaScript Runner
\n
Regex Properties
\n
Emoji Data Finder\n
\n
Find by Name
\n
Match Sequence
\n
Filter Text
\n
\n
\n
Emoji Picture Book
\n
Emoji References
\n
Unicode Data Finder\n
\n
Find by Name
\n
Match Character
\n
List by Block
\n
\n
\n
Unicode Foldings
\n
Unicode Inspector
\n
Unicode Normalizer
\n
Unicode References
\n
Unicode Segmenter
\n
Unihan Data Finder\n
\n
Find by Tag Value
\n
Match Character
\n
View by Grid
\n
\n
\n
Unihan Inspector
\n
Unihan Radical-Strokes
\n
Unihan References
\n
Unihan Variants
\n
\n
CJK Font Variants
\n
\n
The CJK Font Variants utility displays simultaneously any string of CJK (Chinese/Japanese/Korean) characters in five different typefaces belonging to the open-source set of Source Han Sans Fonts:
\n
\n
\n\n
\n
Language
\n
Tag
\n
Code
\n
Typeface
\n
\n\n\n
\n
Japanese
\n
ja
\n
JP
\n
Source Han Sans
\n
\n
\n
Korean
\n
ko
\n
KR
\n
Source Han Sans K
\n
\n
\n
Simplified Chinese
\n
zh-Hans
\n
SC
\n
Source Han Sans SC
\n
\n
\n
Traditional Chinese (Taiwan)
\n
zh-Hant-TW
\n
TC
\n
Source Han Sans TC
\n
\n
\n
Traditional Chinese (Hong Kong)
\n
zh-Hant-HK
\n
HK
\n
Source Han Sans HC
\n
\n\n
\n
\n
Additionally, it is possible to specify a set of logographic glyph variants for display by using the East Asian Variant drop-down menu.
\n
Font variants of the CJK characters can be visualized either vertically or horizontally. Use the Writing Mode drop-down menu to toggle between the two modes.
\n
Use the Font Weight drop-down menu to select the font weight of the CJK characters, among: Extra Light, Light, Regular, Medium, Semi Bold, Bold, Extra Bold, Heavy.
\n
Clicking inside any character frame displays momentarily the same glyph for all language flavors, while alt-clicking (or shift-clicking) applies to all characters of the string in a given language flavor. This is especially useful to quickly spot the differences between glyph variations. If the ⇪ Caps Lock key is turned on as well, the differences are shown in contrasting colors instead.
\n
CJK characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
It is also possible to input predefined strings of CJK characters selected from the Samples ▾ pop-up menu; some of them make use of the information found in the StandardizedVariants.txt or IVD_Sequences.txt data files.
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
In output, the standard Unicode code point format U+7ADC is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u9F8D or \\u{20B9F}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
\n
\n
\n
JavaScript Runner
\n
\n
The JavaScript Runner utility lets you execute JavaScript code, and comes with several sample scripts related to Unicode, Unihan, and emoji; it is useful for quick testing/prototyping or data processing.
\n
\n
\n
Regex Properties
\n
\n
\n
The Regex Properties utility displays all the Unicode 14.0 properties available for regular expressions, used in particular by the Emoji Data Finder, Unicode Data Finder and Unihan Data Finder utilities.
\n
\n
\n
These properties are suitable to build Unicode-aware regular expressions in JavaScript (ECMAScript 6) using the 'u' flag.
\n
\n
\n
Unicode properties fall into four groups, which can be displayed individually using the Category drop-down menu:
\n
\n
General Category properties
\n
Binary properties
\n
Script properties
\n
Script Extensions properties
\n
\n
\n
\n
For General Category properties, prefixing with General_Category= (Canonical) or gc= (Alias) is optional. Use the Optional Prefix checkbox to control whether the prefix is included or not.
Control | Format | Surrogate | Private_Use | Unassigned
\n
\n\n
\n
\n
\n
\\P{…} is the negated form of \\p{…}. Use the Negated checkbox to toggle between the two forms.
\n
\n
\n
Notes:
\n
\n
\\p{Any} is equivalent to [\\u{0}-\\u{10FFFF}]
\n
\\p{ASCII} is equivalent to [\\u{0}-\\u{7F}]
\n
\\p{Assigned} is equivalent to \\P{Unassigned} or \\P{General_Category=Unassigned}
\n
\n
\n
\n
\n
Emoji Data Finder
\n
Find by Name
\n
\n
The Find by Name feature of the Emoji Data Finder utility displays a list of basic data (emoji, short name, keywords, code points) of matching Unicode emoji searched by name or keyword, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any.
\n
This feature deals with the 4,702 emoji defined in the Emoji 14.0 version of the emoji-test.txt data file.
\n
The 9 component (5 skin-tone and 4 hair-style) emoji and the 3,624 fully-qualified (RGI) emoji are presented in a standard way, while the 1,069 non-fully-qualified emoji are shown in a distinctive muted (grayed out) style.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
Note: RGI stands for Recommended for General Interchange.
\n
\n
\n
Match Sequence
\n
\n
The Match Sequence feature of the Emoji Data Finder utility displays a list of basic data (emoji, short name, keywords, code points) of Unicode emoji matching a character sequence, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any.
\n
This feature deals with the 4,702 emoji defined in the Emoji 14.0 version of the emoji-test.txt data file.
\n
The 9 component (5 skin-tone and 4 hair-style) emoji and the 3,624 fully-qualified (RGI) emoji are presented in a standard way, while the 1,069 non-fully-qualified emoji are shown in a distinctive muted (grayed out) style.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
Note: RGI stands for Recommended for General Interchange.
\n
\n
\n
Filter Text
\n
\n
The Filter Text feature of the Emoji Data Finder utility displays in real time a list of basic data (emoji, short name, keywords, code points) of all the Unicode emoji contained in a text string.
\n
Text can by directly typed, or pasted from the clipboard into the main input field.
\n
It is also possible to input predefined sets of emoji selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input field can be emptied using the Clear button.
\n
Use the Filter ▾ pop-up menu to perform an action among:\n
\n
Discard Non-Emoji [strip out non-emoji characters]
\n
Upgrade to RGI Emoji [restore incomplete emoji to their RGI form]
\n
Remove Duplicate Emoji [delete emoji duplicates]
\n
\n
\n
This feature deals with the 4,702 emoji defined in the Emoji 14.0 version of the emoji-test.txt data file.
\n
The 9 component (5 skin-tone and 4 hair-style) emoji and the 3,624 fully-qualified (RGI) emoji are presented in a standard way, while the 1,069 non-fully-qualified emoji are shown in a distinctive muted (grayed out) style.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
\n
\n
Note: RGI stands for Recommended for General Interchange.
\n
\n
\n
Emoji Picture Book
\n
\n
The Emoji Picture Book utility displays lists of Unicode emoji in a color picture book fashion.
\n
Any group of pictures can be displayed by selecting its name in the Category drop-down menu, among:\n
\n
Smileys & Emotion
\n
People & Body
\n
Component
\n
Animals & Nature
\n
Food & Drink
\n
Travel & Places
\n
Activities
\n
Objects
\n
Symbols
\n
Flags
\n
\n
\n
The size of all emoji pictures (from 32 to 128 pixels) can be adjusted by moving the dedicated slider left and right.
\n
The groups and subgroups of emoji are those defined in the Emoji 14.0 version of the emoji-test.txt data file.
\n
Only the 9 component emoji and the 3,624 fully-qualified (RGI) forms of the emoji are used unless they cannot be displayed properly, depending on the emoji support level of the operating system.
\n
Emoji failing to be represented as proper color pictures are purely and simply discarded.
\n
Note: RGI stands for Recommended for General Interchange.
\n
\n
\n
Emoji References
\n
\n
The Emoji References utility provides a list of reference links to emoji-related web pages.
\n
\n
\n
Unicode Data Finder
\n
Find by Name
\n
\n
The Find by Name feature of the Unicode Data Finder utility displays a list of basic data (character, code point, name/aliases, block) of matching Unicode characters searched by name or alias, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
It is possible to choose how many characters are shown one page at a time.
\n
When available, name aliases are displayed (in italics and smaller typeface) after the unique and immutable Unicode name. A correction alias is indicated by a leading reference mark ※.
The search is performed on the 284,278 assigned characters (or code points) defined in the Unicode 14.0 version of the UnicodeData.txt data file.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
\n
\n
Match Character
\n
\n
The Match Character feature of the Unicode Data Finder utility displays a list of basic data (character, code point, name/aliases, block) of Unicode characters matching a character, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
Click on the Match Decomposition toggle button to extend the search to characters whose decomposition mapping matches the query string.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the 284,278 assigned characters (or code points) defined in the Unicode 14.0 version of the UnicodeData.txt data file.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
\n
\n
List by Block
\n
\n
The List by Block feature of the Unicode Data Finder utility displays in real time a list of basic data (character, code point, name/aliases, block) of Unicode characters belonging to the same block range.
\n
It is possible to choose how many characters are shown one page at a time.
\n
A block can be selected either by Block Name or by Block Range, as defined in the Blocks.txt data file.
\n
It is also possible to directly enter a code point (or character) in the Specimen field, then click on the Go button to automatically select the block containing the code point, scroll its basic data into view, and highlight its hexadecimal code value.
\n
You can quickly reuse a previously entered code point by using the Alt+↑ and Alt+↓ keyboard shortcuts to navigate up and down through the history stack in the Specimen field. Alternatively, you can also use the Specimen History ▾ pop-up menu to automatically jump to a specific character.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
\n
\n
\n
\n
Unicode Foldings
\n
\n
The Unicode Foldings utility displays simultaneously the uppercase and lowercase foldings of a given string, making use of the JavaScript string functions toUpperCase and toLowerCase, or toLocaleUpperCase and toLocaleLowerCase when a specific locale is selected from the Locale drop-down menu.
\n
Characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
It is also possible to input predefined strings of characters selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
In output, the standard Unicode code point format U+00DF is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u212B or \\u{10400}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
Note: folding is an operation that maps similar characters to a common target, such as uppercasing or lowercasing a string. Folding operations are most often used to temporarily ignore certain distinctions between characters.
\n
\n
\n
Unicode Inspector
\n
\n
The Unicode Inspector utility displays code point information in real time for each Unicode character of a text string.
\n
Characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
It is also possible to input predefined sets of characters selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
In output, the standard Unicode code point format U+0041 is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u611B or \\u{1F49C}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
Information is provided for the 284,278 assigned characters (or code points) defined in the Unicode 14.0 version of the UnicodeData.txt data file.
\n
Extra information is also obtained from the following data files:\n
The Unicode Normalizer utility displays simultaneously the four normalization forms of a given string, making use of the JavaScript string function normalize, as specified in the UAX #15: Unicode Normalization Forms:
\n
\n\n
\n
Form
\n
Name
\n
Description
\n
\n\n\n
\n
NFC
\n
Normalization Form C
\n
Canonical Decomposition, followed by Canonical Composition
\n
\n
\n
NFD
\n
Normalization Form D
\n
Canonical Decomposition
\n
\n
\n
NFKC
\n
Normalization Form KC
\n
Compatibility Decomposition, followed by Canonical Composition
\n
\n
\n
NFKD
\n
Normalization Form KD
\n
Compatibility Decomposition
\n
\n\n
\n
\n
\n
Characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
\n
\n
It is also possible to input predefined strings of characters selected from the Samples ▾ pop-up menu.
\n
\n
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
\n
\n
In output, the standard Unicode code point format U+212B is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
\n
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u24B6 or \\u{1F201}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
\n
\n
\n
Unicode References
\n
\n
The Unicode References utility provides a list of reference links to Unicode-related web pages.
\n
\n
\n
Unicode Segmenter
\n
\n
The Unicode Segmenter utility performs in real time the segmentation of a text string into a visual list of graphemes, words, or sentences, making use of the JavaScript Intl.Segmenter API, as specified in the UAX #29: Unicode Text Segmentation.
\n
Text can by directly typed, or pasted from the clipboard into the main input field.
\n
It is also possible to input predefined text strings selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input field can be emptied using the Clear button.
\n
Choose the appropriate segmentation granularity from the Granularity drop-down menu, among: Grapheme, Word, or Sentence.
\n
If required, choose a specific locale from the Locale drop-down menu: boundary types are actually locale-dependent.
\n
\n
\n
Unihan Data Finder
\n
Find by Tag Value
\n
\n
The Find by Tag Value feature of the Unihan Data Finder utility displays a list of basic data (character, code point, Unihan tag, value, block) of matching Unihan characters searched by tag value, including through regular expressions.
\n
Use the Unihan Tag drop-down menu to select the tag you wish to search value by.
\n
Use the Categories checkbox to toggle between: all Unihan tags ordered alphabetically, or grouped by categories in the drop-down menu.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the 93,867 Unihan characters (or code points) defined in Unicode 14.0, in the set of data files contained in the Unihan.zip archive file:\n
\n
Unihan_DictionaryIndices.txt
\n
Unihan_DictionaryLikeData.txt
\n
Unihan_IRGSources.txt
\n
Unihan_NumericValues.txt
\n
Unihan_OtherMappings.txt
\n
Unihan_RadicalStrokeCounts.txt
\n
Unihan_Readings.txt
\n
Unihan_Variants.txt
\n
\n
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
\n
\n
Match Character
\n
\n
The Match Character feature of the Unihan Data Finder utility displays a list of basic data (character, code point, age, set, ideograph status, block) of matching Unihan characters, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
Click on the Match Variants toggle button to extend the search to characters whose variants match the query string.
\n
Unihan variants, if any, are displayed in a distinctive muted (grayed out) style.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the set of 93,867 Unihan characters defined in Unicode 14.0.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
\n
\n
View by Grid
\n
\n
The View by Grid feature of the Unihan Data Finder utility displays in real time a grid view of the 10 blocks containing the 93,867 Unihan characters defined in Unicode 14.0.
\n
It is possible to choose how many characters are shown one page at a time.
\n
A block can be selected either by Block Name or by Block Range.
\n
It is also possible to directly enter a Unihan character or code point in the Specimen field, then click on the Go button to automatically select the block containing the character, scroll it into view, and highlight it.
\n
You can quickly reuse a previously entered Unihan character by using the Alt+↑ and Alt+↓ keyboard shortcuts to navigate up and down through the history stack in the Specimen field. Alternatively, you can also use the Specimen History ▾ pop-up menu to automatically jump to a specific character.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
\n
\n
A list of all the Unihan blocks is available for quick reference.
\n
\n
\n
\n
Unihan Inspector
\n
\n
The Unihan Inspector utility displays all available Unihan tags for each of the 93,867 Unihan characters defined in Unicode 14.0, in the set of data files contained in the Unihan.zip archive file:\n
\n
Unihan_DictionaryIndices.txt
\n
Unihan_DictionaryLikeData.txt
\n
Unihan_IRGSources.txt
\n
Unihan_NumericValues.txt
\n
Unihan_OtherMappings.txt
\n
Unihan_RadicalStrokeCounts.txt
\n
Unihan_Readings.txt
\n
Unihan_Variants.txt
\n
\n
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display the list of Unihan tags.
\n
In addition, the utility provides, for each Unihan character:\n
basic Unihan information: set (IICore, Unihan Core, Full Unihan), status (unified or compatibility ideograph), compatibility source, radical/strokes, definition, numeric value, related characters, variant characters.
\n
\n
\n
Basic radical information can also be obtained for the 214 KangXi radicals and the 115 additional CJK radicals.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
It is also possible to look up a randomly selected Unihan character by clicking on the Random button; use the Set drop-down menu to perform the draw on a specified Unihan set:\n
\n
IICore: the IICore set of 9,810 CJK unified ideographs in common usage,
\n
Unihan Core: the Unihan core set (2020) of 20,720 CJK unified and compatibility ideographs, minimal set of required ideographs for East Asia,
\n
Full Unihan: the full set of 93,867 Unihan characters.
\n
\n
\n
The currently looked up character is displayed at a large scale, followed by its code point.
\n
Click on ◀ or ▶ to step through five different CJK typefaces, among:\n
\n
JP: Japanese
\n
KR: Korean
\n
SC: Simplified Chinese
\n
TC: Traditional Chinese (Taiwan)
\n
HK: Traditional Chinese (Hong Kong)
\n
\n
\n
If a character cannot be properly rendered in the five CJK typefaces, the system default typeface is automatically used instead.
\n
Use the Categories checkbox to toggle between: all Unihan tags ordered alphabetically, or grouped by categories.
\n
Variant characters, if any, are listed under several classes in the basic Unihan information panel:\n
\n
Unified Variant: decomposition of the looked up character
\n
Compatibility Variants: characters whose decomposition is the looked up character
\n
Semantic Variants: characters listed under the kSemanticVariant Unihan tag
\n
Specialized Variants: characters listed under the kSpecializedSemanticVariant Unihan tag
\n
Spoofing Variants: characters listed under the kSpoofingVariant Unihan tag
\n
Shape (Z-) Variants characters listed under the kZVariant Unihan tag
\n
Simplified Variants: characters listed under the kSimplifiedVariant Unihan tag
\n
Traditional Variants: characters listed under the kTraditionalVariant Unihan tag
\n
Shinjitai Variants: Japanese simplified character variants (新字体)
\n
Kyūjitai Variants: Japanese traditional character variants (旧字体)
\n
Yasuoka Variants: characters drawn from the \"Variants table for Unicode\" data file UniVariants.txt provided by Prof. Kōichi Yasuoka
\n
\n
\n
Notes:\n
\n
The top Radical/Strokes fields are displaying data obtained from the only informative IRG Source: kRSUnicode, while the bottom ones (in grayed-out style, if any) make use of the provisional sources: kRSKangXi and kRSAdobe_Japan1_6.
\n
IICore (International Ideographs Core) represents a set of 9,810 important Unihan characters in everyday use throughout East Asia; it has been developed by the IRG.
\n
IRG stands for Ideographic Research Group, formerly called Ideographic Rapporteur Group, a committee advising the Unicode Consortium about Asian language characters.
\n
Radicals do not belong to the Unihan character set; they are allowed to be looked up here merely as a convenience, since they are closely related, and because their appearance is similar, or even identical, to their equivalent unified ideograph.
\n
\n
\n
\n
\n
\n
Unihan Radical-Strokes
\n
\n
The Unihan Radical-Strokes utility displays all the Unihan characters searched by KangXi radical and additional stroke count.
\n
Use the Set drop-down menu to perform the search on a specified Unihan set:\n
\n
IICore: the IICore set of 9,810 CJK unified ideographs in common usage,
\n
Unihan Core: the Unihan core set (2020) of 20,720 CJK unified and compatibility ideographs, minimal set of required ideographs for East Asia,
\n
Full Unihan: the full set of 93,867 Unihan characters.
\n
\n
\n
Use the Extra Sources checkbox to extend the search to all radical/strokes source tags, or use only the IRG-defined source tag common to all Unihan characters.
\n
Use the Radical and Strokes drop-down menus to select the KangXi radical and the additional stroke count of the Unihan characters you are looking for, then click on the Search button.
\n
If the number of additional strokes is negative, 0 is used instead. For example, the Unihan character 王 gets listed under 'Radical 96 ⽟ (Jade)' + '0 Stroke', although its additional stroke count is -1.
\n
Selecting All from the Strokes menu lets you display all the Unihan characters sharing the same KangXi radical, sorted by additional stroke count.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
A complete list of the 214 KangXi radicals is available for reference, showing also CJK variants as well as simplified forms.
\n
\n
\n
Unihan References
\n
\n
The Unihan References utility provides a list of reference links to Unihan-related web pages.
\n
\n
\n
Unihan Variants
\n
\n
The Unihan Variants utility displays all the variants of a given Unihan character.
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display the variants.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
Click on the Extra Variants checkbox to include the Yasuoka variants as well; otherwise, only the standard Unihan variants are listed.
\n
Click on the Detailed Relations checkbox to make use of a directed labeled graph to display variant relations; otherwise, a basic undirected graph is used instead.
\n
Click on the Code Points checkbox to display as well the code point of each Unihan character of the graph.
\n
The different variant relations are indicated using the following labels:\n
\n
Compat.: reverse link of Unified
\n
Kyūjitai: Japanese traditional character variants (旧字体)
\n
Semantic: characters listed under the kSemanticVariant Unihan tag
\n
Shape: characters listed under the kZVariant Unihan tag
\n
Shinjitai: Japanese simplified character variants (新字体)
\n
Simplified: characters listed under the kSimplifiedVariant Unihan tag
\n
Specialized: characters listed under the kSpecializedSemanticVariant Unihan tag
\n
Spoofing: characters listed under the kSpoofingVariant Unihan tag
\n
Traditional: characters listed under the kTraditionalVariant Unihan tag
\n
Unified: characters listed under the kCompatibilityVariant Unihan tag
\n
Yasuoka: characters drawn from the \"Variants table for Unicode\" data file UniVariants.txt provided by Prof. Kōichi Yasuoka
\n
\n
\n
Click on the Save... button to save the current graph as a SVG file.
\n
Notes:\n
\n
Hovering over any circled Unihan character of the graph displays a tooltip with basic information: code point, age, set, ideograph status, compatibility source.
\n
The currently looked up Unihan character appears in a bolder circle; clicking on any other circled variant character lets you \"navigate\" through all the variants.
\n
In order to avoid visual clutter, any relation between two Unihan characters obtained from the Yasuoka variants is not displayed if another \"standard\" one with the same orientation already exists.
\n
By design, compatibility characters, if any, always appear on the left side of a graph with detailed relations.
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/unicopedia-plus\n# Go into the repository\ncd unicopedia-plus\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting unicopedia-plus-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Unicopedia Plus.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
Unicopedia Plus is a developer-oriented set of Unicode, Unihan & emoji utilities wrapped into one single app, built with Electron.
\n
This desktop application works on macOS, Linux and Windows operating systems.
\n
\n
Utilities
\n
The following utilities are currently available:
\n
\n
CJK Font Variants
\n
JavaScript Runner
\n
Regex Properties
\n
Emoji Data Finder\n
\n
Find by Name
\n
Match Sequence
\n
Filter Text
\n
\n
\n
Emoji Picture Book
\n
Emoji References
\n
Unicode Data Finder\n
\n
Find by Name
\n
Match Character
\n
List by Block
\n
\n
\n
Unicode Foldings
\n
Unicode Inspector
\n
Unicode Normalizer
\n
Unicode References
\n
Unicode Segmenter
\n
Unihan Data Finder\n
\n
Find by Tag Value
\n
Match Character
\n
View by Grid
\n
\n
\n
Unihan Inspector
\n
Unihan Radical-Strokes
\n
Unihan References
\n
Unihan Variants
\n
\n
CJK Font Variants
\n
\n
The CJK Font Variants utility displays simultaneously any string of CJK (Chinese/Japanese/Korean) characters in five different typefaces belonging to the open-source set of Source Han Sans Fonts:
\n
\n
\n\n
\n
Language
\n
Tag
\n
Code
\n
Typeface
\n
\n\n\n
\n
Japanese
\n
ja
\n
JP
\n
Source Han Sans
\n
\n
\n
Korean
\n
ko
\n
KR
\n
Source Han Sans K
\n
\n
\n
Simplified Chinese
\n
zh-Hans
\n
SC
\n
Source Han Sans SC
\n
\n
\n
Traditional Chinese (Taiwan)
\n
zh-Hant-TW
\n
TC
\n
Source Han Sans TC
\n
\n
\n
Traditional Chinese (Hong Kong)
\n
zh-Hant-HK
\n
HK
\n
Source Han Sans HC
\n
\n\n
\n
\n
Additionally, it is possible to specify a set of logographic glyph variants for display by using the East Asian Variant drop-down menu.
\n
Font variants of the CJK characters can be visualized either vertically or horizontally. Use the Writing Mode drop-down menu to toggle between the two modes.
\n
Use the Font Weight drop-down menu to select the font weight of the CJK characters, among: Extra Light, Light, Regular, Medium, Semi Bold, Bold, Extra Bold, Heavy.
\n
Clicking inside any character frame displays momentarily the same glyph for all language flavors, while alt-clicking (or shift-clicking) applies to all characters of the string in a given language flavor. This is especially useful to quickly spot the differences between glyph variations. If the ⇪ Caps Lock key is turned on as well, the differences are shown in contrasting colors instead.
\n
CJK characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
It is also possible to input predefined strings of CJK characters selected from the Samples ▾ pop-up menu; some of them make use of the information found in the StandardizedVariants.txt or IVD_Sequences.txt data files.
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
In output, the standard Unicode code point format U+7ADC is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u9F8D or \\u{20B9F}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
\n
\n
\n
JavaScript Runner
\n
\n
The JavaScript Runner utility lets you execute JavaScript code, and comes with several sample scripts related to Unicode, Unihan, and emoji; it is useful for quick testing/prototyping or data processing.
\n
\n
\n
Regex Properties
\n
\n
\n
The Regex Properties utility displays all the Unicode 14.0 properties available for regular expressions, used in particular by the Emoji Data Finder, Unicode Data Finder and Unihan Data Finder utilities.
\n
\n
\n
These properties are suitable to build Unicode-aware regular expressions in JavaScript (ECMAScript 6) using the 'u' flag.
\n
\n
\n
Unicode properties fall into four groups, which can be displayed individually using the Category drop-down menu:
\n
\n
General Category properties
\n
Binary properties
\n
Script properties
\n
Script Extensions properties
\n
\n
\n
\n
For General Category properties, prefixing with General_Category= (Canonical) or gc= (Alias) is optional. Use the Optional Prefix checkbox to control whether the prefix is included or not.
Control | Format | Surrogate | Private_Use | Unassigned
\n
\n\n
\n
\n
\n
\\P{…} is the negated form of \\p{…}. Use the Negated checkbox to toggle between the two forms.
\n
\n
\n
Notes:
\n
\n
\\p{Any} is equivalent to [\\u{0}-\\u{10FFFF}]
\n
\\p{ASCII} is equivalent to [\\u{0}-\\u{7F}]
\n
\\p{Assigned} is equivalent to \\P{Unassigned} or \\P{General_Category=Unassigned}
\n
\n
\n
\n
\n
Emoji Data Finder
\n
Find by Name
\n
\n
The Find by Name feature of the Emoji Data Finder utility displays a list of basic data (emoji, short name, keywords, code points) of matching Unicode emoji searched by name or keyword, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any.
\n
This feature deals with the 4,702 emoji defined in the Emoji 14.0 version of the emoji-test.txt data file.
\n
The 9 component (5 skin-tone and 4 hair-style) emoji and the 3,624 fully-qualified (RGI) emoji are presented in a standard way, while the 1,069 non-fully-qualified emoji are shown in a distinctive muted (grayed out) style.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
Note: RGI stands for Recommended for General Interchange.
\n
\n
\n
Match Sequence
\n
\n
The Match Sequence feature of the Emoji Data Finder utility displays a list of basic data (emoji, short name, keywords, code points) of Unicode emoji matching a character sequence, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any.
\n
This feature deals with the 4,702 emoji defined in the Emoji 14.0 version of the emoji-test.txt data file.
\n
The 9 component (5 skin-tone and 4 hair-style) emoji and the 3,624 fully-qualified (RGI) emoji are presented in a standard way, while the 1,069 non-fully-qualified emoji are shown in a distinctive muted (grayed out) style.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
Note: RGI stands for Recommended for General Interchange.
\n
\n
\n
Filter Text
\n
\n
The Filter Text feature of the Emoji Data Finder utility displays in real time a list of basic data (emoji, short name, keywords, code points) of all the Unicode emoji contained in a text string.
\n
Text can by directly typed, or pasted from the clipboard into the main input field.
\n
It is also possible to input predefined sets of emoji selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input field can be emptied using the Clear button.
\n
Use the Filter ▾ pop-up menu to perform an action among:\n
\n
Discard Non-Emoji [strip out non-emoji characters]
\n
Upgrade to RGI Emoji [restore incomplete emoji to their RGI form]
\n
Remove Duplicate Emoji [delete emoji duplicates]
\n
\n
\n
This feature deals with the 4,702 emoji defined in the Emoji 14.0 version of the emoji-test.txt data file.
\n
The 9 component (5 skin-tone and 4 hair-style) emoji and the 3,624 fully-qualified (RGI) emoji are presented in a standard way, while the 1,069 non-fully-qualified emoji are shown in a distinctive muted (grayed out) style.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
\n
\n
Note: RGI stands for Recommended for General Interchange.
\n
\n
\n
Emoji Picture Book
\n
\n
The Emoji Picture Book utility displays lists of Unicode emoji in a color picture book fashion.
\n
Any group of pictures can be displayed by selecting its name in the Category drop-down menu, among:\n
\n
Smileys & Emotion
\n
People & Body
\n
Component
\n
Animals & Nature
\n
Food & Drink
\n
Travel & Places
\n
Activities
\n
Objects
\n
Symbols
\n
Flags
\n
\n
\n
The size of all emoji pictures (from 32 to 128 pixels) can be adjusted by moving the dedicated slider left and right.
\n
The groups and subgroups of emoji are those defined in the Emoji 14.0 version of the emoji-test.txt data file.
\n
Only the 9 component emoji and the 3,624 fully-qualified (RGI) forms of the emoji are used unless they cannot be displayed properly, depending on the emoji support level of the operating system.
\n
Emoji failing to be represented as proper color pictures are purely and simply discarded.
\n
Note: RGI stands for Recommended for General Interchange.
\n
\n
\n
Emoji References
\n
\n
The Emoji References utility provides a list of reference links to emoji-related web pages.
\n
\n
\n
Unicode Data Finder
\n
Find by Name
\n
\n
The Find by Name feature of the Unicode Data Finder utility displays a list of basic data (character, code point, name/aliases, block) of matching Unicode characters searched by name or alias, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
It is possible to choose how many characters are shown one page at a time.
\n
When available, name aliases are displayed (in italics and smaller typeface) after the unique and immutable Unicode name. A correction alias is indicated by a leading reference mark ※.
The search is performed on the 284,278 assigned characters (or code points) defined in the Unicode 14.0 version of the UnicodeData.txt data file.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
\n
\n
Match Character
\n
\n
The Match Character feature of the Unicode Data Finder utility displays a list of basic data (character, code point, name/aliases, block) of Unicode characters matching a character, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
Click on the Match Decomposition toggle button to extend the search to characters whose decomposition mapping matches the query string.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the 284,278 assigned characters (or code points) defined in the Unicode 14.0 version of the UnicodeData.txt data file.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
\n
\n
List by Block
\n
\n
The List by Block feature of the Unicode Data Finder utility displays in real time a list of basic data (character, code point, name/aliases, block) of Unicode characters belonging to the same block range.
\n
It is possible to choose how many characters are shown one page at a time.
\n
A block can be selected either by Block Name or by Block Range, as defined in the Blocks.txt data file.
\n
It is also possible to directly enter a code point (or character) in the Specimen field, then click on the Go button to automatically select the block containing the code point, scroll its basic data into view, and highlight its hexadecimal code value.
\n
You can quickly reuse a previously entered code point by using the Alt+↑ and Alt+↓ keyboard shortcuts to navigate up and down through the history stack in the Specimen field. Alternatively, you can also use the Specimen History ▾ pop-up menu to automatically jump to a specific character.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
\n
\n
\n
\n
Unicode Foldings
\n
\n
The Unicode Foldings utility displays simultaneously the uppercase and lowercase foldings of a given string, making use of the JavaScript string functions toUpperCase and toLowerCase, or toLocaleUpperCase and toLocaleLowerCase when a specific locale is selected from the Locale drop-down menu.
\n
Characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
It is also possible to input predefined strings of characters selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
In output, the standard Unicode code point format U+00DF is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u212B or \\u{10400}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
Note: folding is an operation that maps similar characters to a common target, such as uppercasing or lowercasing a string. Folding operations are most often used to temporarily ignore certain distinctions between characters.
\n
\n
\n
Unicode Inspector
\n
\n
The Unicode Inspector utility displays code point information in real time for each Unicode character of a text string.
\n
Characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
It is also possible to input predefined sets of characters selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
In output, the standard Unicode code point format U+0041 is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u611B or \\u{1F49C}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
Information is provided for the 284,278 assigned characters (or code points) defined in the Unicode 14.0 version of the UnicodeData.txt data file.
\n
Extra information is also obtained from the following data files:\n
The Unicode Normalizer utility displays simultaneously the four normalization forms of a given string, making use of the JavaScript string function normalize, as specified in the UAX #15: Unicode Normalization Forms:
\n
\n\n
\n
Form
\n
Name
\n
Description
\n
\n\n\n
\n
NFC
\n
Normalization Form C
\n
Canonical Decomposition, followed by Canonical Composition
\n
\n
\n
NFD
\n
Normalization Form D
\n
Canonical Decomposition
\n
\n
\n
NFKC
\n
Normalization Form KC
\n
Compatibility Decomposition, followed by Canonical Composition
\n
\n
\n
NFKD
\n
Normalization Form KD
\n
Compatibility Decomposition
\n
\n\n
\n
\n
\n
Characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
\n
\n
It is also possible to input predefined strings of characters selected from the Samples ▾ pop-up menu.
\n
\n
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
\n
\n
In output, the standard Unicode code point format U+212B is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
\n
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u24B6 or \\u{1F201}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
\n
\n
\n
Unicode References
\n
\n
The Unicode References utility provides a list of reference links to Unicode-related web pages.
\n
\n
\n
Unicode Segmenter
\n
\n
The Unicode Segmenter utility performs in real time the segmentation of a text string into a visual list of graphemes, words, or sentences, making use of the JavaScript Intl.Segmenter API, as specified in the UAX #29: Unicode Text Segmentation.
\n
Text can by directly typed, or pasted from the clipboard into the main input field.
\n
It is also possible to input predefined text strings selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input field can be emptied using the Clear button.
\n
Choose the appropriate segmentation granularity from the Granularity drop-down menu, among: Grapheme, Word, or Sentence.
\n
If required, choose a specific locale from the Locale drop-down menu: boundary types are actually locale-dependent.
\n
\n
\n
Unihan Data Finder
\n
Find by Tag Value
\n
\n
The Find by Tag Value feature of the Unihan Data Finder utility displays a list of basic data (character, code point, Unihan tag, value, block) of matching Unihan characters searched by tag value, including through regular expressions.
\n
Use the Unihan Tag drop-down menu to select the tag you wish to search value by.
\n
Use the Categories checkbox to toggle between: all Unihan tags ordered alphabetically, or grouped by categories in the drop-down menu.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the 93,867 Unihan characters (or code points) defined in Unicode 14.0, in the set of data files contained in the Unihan.zip archive file:\n
\n
Unihan_DictionaryIndices.txt
\n
Unihan_DictionaryLikeData.txt
\n
Unihan_IRGSources.txt
\n
Unihan_NumericValues.txt
\n
Unihan_OtherMappings.txt
\n
Unihan_RadicalStrokeCounts.txt
\n
Unihan_Readings.txt
\n
Unihan_Variants.txt
\n
\n
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
\n
\n
Match Character
\n
\n
The Match Character feature of the Unihan Data Finder utility displays a list of basic data (character, code point, age, set, ideograph status, block) of matching Unihan characters, including through regular expressions.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
Click on the Match Variants toggle button to extend the search to characters whose variants match the query string.
\n
Unihan variants, if any, are displayed in a distinctive muted (grayed out) style.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the set of 93,867 Unihan characters defined in Unicode 14.0.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
\n
\n
View by Grid
\n
\n
The View by Grid feature of the Unihan Data Finder utility displays in real time a grid view of the 10 blocks containing the 93,867 Unihan characters defined in Unicode 14.0.
\n
It is possible to choose how many characters are shown one page at a time.
\n
A block can be selected either by Block Name or by Block Range.
\n
It is also possible to directly enter a Unihan character or code point in the Specimen field, then click on the Go button to automatically select the block containing the character, scroll it into view, and highlight it.
\n
You can quickly reuse a previously entered Unihan character by using the Alt+↑ and Alt+↓ keyboard shortcuts to navigate up and down through the history stack in the Specimen field. Alternatively, you can also use the Specimen History ▾ pop-up menu to automatically jump to a specific character.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
\n
\n
A list of all the Unihan blocks is available for quick reference.
\n
\n
\n
\n
Unihan Inspector
\n
\n
The Unihan Inspector utility displays all available Unihan tags for each of the 93,867 Unihan characters defined in Unicode 14.0, in the set of data files contained in the Unihan.zip archive file:\n
\n
Unihan_DictionaryIndices.txt
\n
Unihan_DictionaryLikeData.txt
\n
Unihan_IRGSources.txt
\n
Unihan_NumericValues.txt
\n
Unihan_OtherMappings.txt
\n
Unihan_RadicalStrokeCounts.txt
\n
Unihan_Readings.txt
\n
Unihan_Variants.txt
\n
\n
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display the list of Unihan tags.
\n
In addition, the utility provides, for each Unihan character:\n
basic Unihan information: set (IICore, Unihan Core, Full Unihan), status (unified or compatibility ideograph), compatibility source, radical/strokes, definition, numeric value, related characters, variant characters.
\n
\n
\n
Basic radical information can also be obtained for the 214 KangXi radicals and the 115 additional CJK radicals.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
It is also possible to look up a randomly selected Unihan character by clicking on the Random button; use the Set drop-down menu to perform the draw on a specified Unihan set:\n
\n
IICore: the IICore set of 9,810 CJK unified ideographs in common usage,
\n
Unihan Core: the Unihan core set (2020) of 20,720 CJK unified and compatibility ideographs, minimal set of required ideographs for East Asia,
\n
Full Unihan: the full set of 93,867 Unihan characters.
\n
\n
\n
The currently looked up character is displayed at a large scale, followed by its code point.
\n
Click on ◀ or ▶ to step through five different CJK typefaces, among:\n
\n
JP: Japanese
\n
KR: Korean
\n
SC: Simplified Chinese
\n
TC: Traditional Chinese (Taiwan)
\n
HK: Traditional Chinese (Hong Kong)
\n
\n
\n
If a character cannot be properly rendered in the five CJK typefaces, the system default typeface is automatically used instead.
\n
Use the Categories checkbox to toggle between: all Unihan tags ordered alphabetically, or grouped by categories.
\n
Variant characters, if any, are listed under several classes in the basic Unihan information panel:\n
\n
Unified Variant: decomposition of the looked up character
\n
Compatibility Variants: characters whose decomposition is the looked up character
\n
Semantic Variants: characters listed under the kSemanticVariant Unihan tag
\n
Specialized Variants: characters listed under the kSpecializedSemanticVariant Unihan tag
\n
Spoofing Variants: characters listed under the kSpoofingVariant Unihan tag
\n
Shape (Z-) Variants characters listed under the kZVariant Unihan tag
\n
Simplified Variants: characters listed under the kSimplifiedVariant Unihan tag
\n
Traditional Variants: characters listed under the kTraditionalVariant Unihan tag
\n
Shinjitai Variants: Japanese simplified character variants (新字体)
\n
Kyūjitai Variants: Japanese traditional character variants (旧字体)
\n
Yasuoka Variants: characters drawn from the \"Variants table for Unicode\" data file UniVariants.txt provided by Prof. Kōichi Yasuoka
\n
\n
\n
Notes:\n
\n
The top Radical/Strokes fields are displaying data obtained from the only informative IRG Source: kRSUnicode, while the bottom ones (in grayed-out style, if any) make use of the provisional sources: kRSKangXi and kRSAdobe_Japan1_6.
\n
IICore (International Ideographs Core) represents a set of 9,810 important Unihan characters in everyday use throughout East Asia; it has been developed by the IRG.
\n
IRG stands for Ideographic Research Group, formerly called Ideographic Rapporteur Group, a committee advising the Unicode Consortium about Asian language characters.
\n
Radicals do not belong to the Unihan character set; they are allowed to be looked up here merely as a convenience, since they are closely related, and because their appearance is similar, or even identical, to their equivalent unified ideograph.
\n
\n
\n
\n
\n
\n
Unihan Radical-Strokes
\n
\n
The Unihan Radical-Strokes utility displays all the Unihan characters searched by KangXi radical and additional stroke count.
\n
Use the Set drop-down menu to perform the search on a specified Unihan set:\n
\n
IICore: the IICore set of 9,810 CJK unified ideographs in common usage,
\n
Unihan Core: the Unihan core set (2020) of 20,720 CJK unified and compatibility ideographs, minimal set of required ideographs for East Asia,
\n
Full Unihan: the full set of 93,867 Unihan characters.
\n
\n
\n
Use the Extra Sources checkbox to extend the search to all radical/strokes source tags, or use only the IRG-defined source tag common to all Unihan characters.
\n
Use the Radical and Strokes drop-down menus to select the KangXi radical and the additional stroke count of the Unihan characters you are looking for, then click on the Search button.
\n
If the number of additional strokes is negative, 0 is used instead. For example, the Unihan character 王 gets listed under 'Radical 96 ⽟ (Jade)' + '0 Stroke', although its additional stroke count is -1.
\n
Selecting All from the Strokes menu lets you display all the Unihan characters sharing the same KangXi radical, sorted by additional stroke count.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results... [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
A complete list of the 214 KangXi radicals is available for reference, showing also CJK variants as well as simplified forms.
\n
\n
\n
Unihan References
\n
\n
The Unihan References utility provides a list of reference links to Unihan-related web pages.
\n
\n
\n
Unihan Variants
\n
\n
The Unihan Variants utility displays all the variants of a given Unihan character.
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display the variants.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
Click on the Extra Variants checkbox to include the Yasuoka variants as well; otherwise, only the standard Unihan variants are listed.
\n
Click on the Detailed Relations checkbox to make use of a directed labeled graph to display variant relations; otherwise, a basic undirected graph is used instead.
\n
Click on the Code Points checkbox to display as well the code point of each Unihan character of the graph.
\n
The different variant relations are indicated using the following labels:\n
\n
Compat.: reverse link of Unified
\n
Kyūjitai: Japanese traditional character variants (旧字体)
\n
Semantic: characters listed under the kSemanticVariant Unihan tag
\n
Shape: characters listed under the kZVariant Unihan tag
\n
Shinjitai: Japanese simplified character variants (新字体)
\n
Simplified: characters listed under the kSimplifiedVariant Unihan tag
\n
Specialized: characters listed under the kSpecializedSemanticVariant Unihan tag
\n
Spoofing: characters listed under the kSpoofingVariant Unihan tag
\n
Traditional: characters listed under the kTraditionalVariant Unihan tag
\n
Unified: characters listed under the kCompatibilityVariant Unihan tag
\n
Yasuoka: characters drawn from the \"Variants table for Unicode\" data file UniVariants.txt provided by Prof. Kōichi Yasuoka
\n
\n
\n
Click on the Save... button to save the current graph as a SVG file.
\n
Notes:\n
\n
Hovering over any circled Unihan character of the graph displays a tooltip with basic information: code point, age, set, ideograph status, compatibility source.
\n
The currently looked up Unihan character appears in a bolder circle; clicking on any other circled variant character lets you \"navigate\" through all the variants.
\n
In order to avoid visual clutter, any relation between two Unihan characters obtained from the Yasuoka variants is not displayed if another \"standard\" one with the same orientation already exists.
\n
By design, compatibility characters, if any, always appear on the left side of a graph with detailed relations.
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/unicopedia-plus\n# Go into the repository\ncd unicopedia-plus\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting unicopedia-plus-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Unicopedia Plus.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
Unicopedia Sinica is a developer-oriented set of Unicode utilities related to ideographs, wrapped into one single app, built with Electron.
\n
This desktop application works on macOS, Linux and Windows operating systems.
\n
It is a specialized complement to the Unicopedia Plus application.
\n
\n
Utilities
\n
The following utilities are currently available:
\n
\n
CJK Components\n
\n
Look Up IDS
\n
Parse IDS
\n
Match IDS
\n
Find by Components
\n
\n
\n
CJK Local Fonts
\n
CJK Sources
\n
CJK Variations
\n
JavaScript Runner
\n
\n
CJK Components
\n
Look Up IDS
\n
\n
The Look Up IDS feature of the CJK Components utility displays all the IDS (Ideographic Description Sequences) of a given Unihan character, as compiled in the freely available IDS.TXT data file, maintained by Andrew West.
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display the IDS.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
Click on the Show Graphs checkbox to display the IDS as graphs instead of text strings.
\n
IDS are provided for the set of 92,865 Unihan characters (excluding CJK compatibility ideographs) defined in Unicode 14.0.
\n
Notes:\n
\n
Unencoded components of IDS, if any, are assigned code points belonging to the PUA (Private Use Area) block, and are properly displayed by using an embedded copy of the custom font BabelStone Han PUA, created by Andrew West.
\n
For best display results, most recent versions of the following fonts should be downloaded and installed at the OS level:\n
The Parse IDS feature of the CJK Components utility displays the parsing graph of any well-formed IDS (Ideographic Description Sequence), in accordance with the set of extended IDCs (Ideographic Description Characters) defined in the freely available IDS.TXT data file, maintained by Andrew West.
\n
The IDS string can by directly typed, or pasted from the clipboard into the IDS input field.
\n
Optionally, a Unihan character can be used as reference in the Entry input field. Any standardized variant or Ideographic Variation Sequence (IVS) is also accepted, and is displayed in the graph with an outstanding dashed outline.
\n
It is possible to input predefined sets of Entry and IDS strings selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
The IDS graph can be displayed either vertically or horizontally. Use the Display Mode drop-down menu to toggle between the two modes.
\n
Notes:\n
\n
This feature is primarily designed for IDS validation (well-formed syntax), and can even be used as a kind of \"playground\" for experimentation, without the need to provide any correct semantics.
\n
The IDS parsing is performed recursively, based on the following set of prefix operators:\n
\n\n
\n
Operator
\n
Name
\n
Arity
\n
\n\n\n
\n
⿰
\n
IDC Left to Right
\n
2
\n
\n
\n
⿱
\n
IDC Above to Below
\n
2
\n
\n
\n
⿲
\n
IDC Left to Middle and Right
\n
3
\n
\n
\n
⿳
\n
IDC Above to Middle and Below
\n
3
\n
\n
\n
⿴
\n
IDC Full Surround
\n
2
\n
\n
\n
⿵
\n
IDC Surround from Above
\n
2
\n
\n
\n
⿶
\n
IDC Surround from Below
\n
2
\n
\n
\n
⿷
\n
IDC Surround from Left
\n
2
\n
\n
\n
⿸
\n
IDC Surround from Upper Left
\n
2
\n
\n
\n
⿹
\n
IDC Surround from Upper Right
\n
2
\n
\n
\n
⿺
\n
IDC Surround from Lower Left
\n
2
\n
\n
\n
⿻
\n
IDC Overlaid
\n
2
\n
\n
\n
〾
\n
Ideographic Variation Indicator
\n
1
\n
\n
\n
↔
\n
Horizontal Mirror Operator
\n
1
\n
\n
\n
↷
\n
180° Rotation Operator
\n
1
\n
\n
\n
⊖
\n
Subtraction Operator
\n
2
\n
\n\n
\n
\n
Components whose code point belongs to the PUA (Private Use Area) block are displayed by using an embedded copy of the custom font BabelStone Han PUA, created by Andrew West.
\n
For best display results, most recent versions of the following fonts should be downloaded and installed at the OS level:\n
The Match IDS feature of the CJK Components utility displays a list of IDS-matching Unihan characters, including through regular expressions. It makes use of the IDS (Ideographic Description Sequences) defined in the IDS.TXT data file, maintained by Andrew West.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
Click on the Nested Match toggle button to extend the search to IDS-nested characters whose IDS match the query string.
\n
Click on the Code Points checkbox to display the code point under each matching Unihan character.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the set of 92,865 Unihan characters (excluding CJK compatibility ideographs) defined in Unicode 14.0.
\n
The results may include the searched component itself when it happens to be a proper Unihan character too.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results.. [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
Notes:\n
\n
Unencoded components of IDS, if any, are assigned code points belonging to the PUA (Private Use Area) block, and are properly displayed by using an embedded copy of the custom font BabelStone Han PUA, created by Andrew West.
\n
For best display results, most recent versions of the following fonts should be downloaded and installed at the OS level:\n
The Find by Components feature of the CJK Components utility displays a list of Unihan characters matching a set of individual components. It makes use of the IDS (Ideographic Description Sequences) defined in the IDS.TXT data file, maintained by Andrew West.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
Click on the Code Points checkbox to display the code point under each matching Unihan character.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the set of 92,865 Unihan characters (excluding CJK compatibility ideographs) defined in Unicode 14.0.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results.. [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Notes:\n
\n
Unencoded components of IDS, if any, are assigned code points belonging to the PUA (Private Use Area) block, and are properly displayed by using an embedded copy of the custom font BabelStone Han PUA, created by Andrew West.
\n
For best display results, most recent versions of the following fonts should be downloaded and installed at the OS level:\n
The CJK Local Fonts utility displays all the local font glyphs of a given Unihan character.
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display all the glyphs.
\n
Standardized variants and Ideographic Variation Sequences (IVS) are also accepted in input, either directly, e.g., 劍󠄁, or as a combination of two code points: Unihan base character + variation selector (VS1 to VS256), e.g., U+6F22 U+FE00, or U+9F8D U+E0101; the specific format <9F8D,E0107> is also allowed.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
Click on the Compact Layout checkbox to display the local font glyphs in a more compact way: hovering over each glyph frame brings up a tooltip with the local font name.
\n
Use the Font Name Filter input field to restrict in real time the display of local font glyphs to the font names matching the text string.
\n
Notes:\n
\n
A dashed outline is added to a character frame whenever the glyph of a Unihan character coming with a variation selector is visually different from the glyph of its base character alone; in such case, alt-clicking (or shift-clicking) inside the character frame displays momentarily the base character glyph; this is especially useful to spot subtle differences between glyph variations.
\n
For best coverage of Unicode Variation Sequences, some of the following fonts should be downloaded and installed at the OS level:\n
The CJK Sources utility displays in a grid fashion the various sources of a given subset of CJK (Chinese/Japanese/Korean) characters, as referenced in their respective Unicode 14.0 code charts:\n
CJK characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
It is also possible to input predefined strings of CJK characters selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input fields can be emptied using the Clear button.\nIn output, the standard Unicode code point format U+9999 is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u6E7E or \\u{21FE7}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
Code point and alphanumeric source references of CJK compatibility characters are systematically displayed in italics.
\n
Whereas the original code charts are making use of mutually incompatible, block-specific source orderings, this utility displays the relevant sources always sorted in the same order, discarding any empty column for the sake of clarity:\n
\n\n
\n
Prefix
\n
Source
\n
Unihan Property
\n
\n\n\n
\n
G
\n
China
\n
kIRG_GSource
\n
\n
\n
H
\n
Hong Kong
\n
kIRG_HSource
\n
\n
\n
M
\n
Macao
\n
kIRG_MSource
\n
\n
\n
T
\n
Taiwan
\n
kIRG_TSource
\n
\n
\n
J
\n
Japan
\n
kIRG_JSource
\n
\n
\n
K
\n
South Korea
\n
kIRG_KSource
\n
\n
\n
KP
\n
North Korea
\n
kIRG_KPSource
\n
\n
\n
V
\n
Vietnam
\n
kIRG_VSource
\n
\n
\n
UTC
\n
UTC
\n
kIRG_USource
\n
\n
\n
SAT
\n
SAT
\n
kIRG_SSource
\n
\n
\n
UK
\n
U.K.
\n
kIRG_UKSource
\n
\n\n
\n
\n
UTC stands for Unicode Technical Committee, which is responsible for the development and maintenance of the Unicode Standard.
\n
SAT (SAmganikikrtam Taisotripitakam in Sanskrit) represents a machine-readable text database of the Taishō Tripiṭaka.
\n
A table of glyphs statistics is available for quick reference.
\n
\n
\n
CJK Variations
\n
\n
The CJK Variations utility displays all the registered Ideographic Variation Sequences (IVS) of a given Unihan character, as referenced in their respective IVD 2020 charts:\n
Clicking inside any character glyph displays momentarily the same glyph for all variations in the same collection, while alt-clicking (or shift-clicking) applies to all characters glyphs sharing the same IVS across different collections. This is especially useful to quickly spot visual differences between glyph variations.
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display all the IVS glyphs along with their VS (Variation Selector) code points.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
\n
\n
\n
JavaScript Runner
\n
\n
The JavaScript Runner utility lets you execute JavaScript code, and comes with several sample scripts related to CJK, IDS, and IVD; it is useful for quick testing/prototyping or data processing.
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/unicopedia-sinica\n# Go into the repository\ncd unicopedia-sinica\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting unicopedia-sinica-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Unicopedia Sinica.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
Unicopedia Sinica is a developer-oriented set of Unicode utilities related to ideographs, wrapped into one single app, built with Electron.
\n
This desktop application works on macOS, Linux and Windows operating systems.
\n
It is a specialized complement to the Unicopedia Plus application.
\n
\n
Utilities
\n
The following utilities are currently available:
\n
\n
CJK Components\n
\n
Look Up IDS
\n
Parse IDS
\n
Match IDS
\n
Find by Components
\n
\n
\n
CJK Local Fonts
\n
CJK Sources
\n
CJK Variations
\n
JavaScript Runner
\n
\n
CJK Components
\n
Look Up IDS
\n
\n
The Look Up IDS feature of the CJK Components utility displays all the IDS (Ideographic Description Sequences) of a given Unihan character, as compiled in the freely available IDS.TXT data file, maintained by Andrew West.
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display the IDS.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
Click on the Show Graphs checkbox to display the IDS as graphs instead of text strings.
\n
IDS are provided for the set of 92,865 Unihan characters (excluding CJK compatibility ideographs) defined in Unicode 14.0.
\n
Notes:\n
\n
Unencoded components of IDS, if any, are assigned code points belonging to the PUA (Private Use Area) block, and are properly displayed by using an embedded copy of the custom font BabelStone Han PUA, created by Andrew West.
\n
For best display results, most recent versions of the following fonts should be downloaded and installed at the OS level:\n
The Parse IDS feature of the CJK Components utility displays the parsing graph of any well-formed IDS (Ideographic Description Sequence), in accordance with the set of extended IDCs (Ideographic Description Characters) defined in the freely available IDS.TXT data file, maintained by Andrew West.
\n
The IDS string can by directly typed, or pasted from the clipboard into the IDS input field.
\n
Optionally, a Unihan character can be used as reference in the Entry input field. Any standardized variant or Ideographic Variation Sequence (IVS) is also accepted, and is displayed in the graph with an outstanding dashed outline.
\n
It is possible to input predefined sets of Entry and IDS strings selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input fields can be emptied using the Clear button.
\n
The IDS graph can be displayed either vertically or horizontally. Use the Display Mode drop-down menu to toggle between the two modes.
\n
Notes:\n
\n
This feature is primarily designed for IDS validation (well-formed syntax), and can even be used as a kind of \"playground\" for experimentation, without the need to provide any correct semantics.
\n
The IDS parsing is performed recursively, based on the following set of prefix operators:\n
\n\n
\n
Operator
\n
Name
\n
Arity
\n
\n\n\n
\n
⿰
\n
IDC Left to Right
\n
2
\n
\n
\n
⿱
\n
IDC Above to Below
\n
2
\n
\n
\n
⿲
\n
IDC Left to Middle and Right
\n
3
\n
\n
\n
⿳
\n
IDC Above to Middle and Below
\n
3
\n
\n
\n
⿴
\n
IDC Full Surround
\n
2
\n
\n
\n
⿵
\n
IDC Surround from Above
\n
2
\n
\n
\n
⿶
\n
IDC Surround from Below
\n
2
\n
\n
\n
⿷
\n
IDC Surround from Left
\n
2
\n
\n
\n
⿸
\n
IDC Surround from Upper Left
\n
2
\n
\n
\n
⿹
\n
IDC Surround from Upper Right
\n
2
\n
\n
\n
⿺
\n
IDC Surround from Lower Left
\n
2
\n
\n
\n
⿻
\n
IDC Overlaid
\n
2
\n
\n
\n
〾
\n
Ideographic Variation Indicator
\n
1
\n
\n
\n
↔
\n
Horizontal Mirror Operator
\n
1
\n
\n
\n
↷
\n
180° Rotation Operator
\n
1
\n
\n
\n
⊖
\n
Subtraction Operator
\n
2
\n
\n\n
\n
\n
Components whose code point belongs to the PUA (Private Use Area) block are displayed by using an embedded copy of the custom font BabelStone Han PUA, created by Andrew West.
\n
For best display results, most recent versions of the following fonts should be downloaded and installed at the OS level:\n
The Match IDS feature of the CJK Components utility displays a list of IDS-matching Unihan characters, including through regular expressions. It makes use of the IDS (Ideographic Description Sequences) defined in the IDS.TXT data file, maintained by Andrew West.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
Click on the Nested Match toggle button to extend the search to IDS-nested characters whose IDS match the query string.
\n
Click on the Code Points checkbox to display the code point under each matching Unihan character.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the set of 92,865 Unihan characters (excluding CJK compatibility ideographs) defined in Unicode 14.0.
\n
The results may include the searched component itself when it happens to be a proper Unihan character too.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results.. [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Various examples of regular expressions are provided for quick copy-and-paste.
\n
Notes:\n
\n
Unencoded components of IDS, if any, are assigned code points belonging to the PUA (Private Use Area) block, and are properly displayed by using an embedded copy of the custom font BabelStone Han PUA, created by Andrew West.
\n
For best display results, most recent versions of the following fonts should be downloaded and installed at the OS level:\n
The Find by Components feature of the CJK Components utility displays a list of Unihan characters matching a set of individual components. It makes use of the IDS (Ideographic Description Sequences) defined in the IDS.TXT data file, maintained by Andrew West.
\n
After entering a query, click on the Search button to display a list of all relevant matches, if any, ordered by code point value.
\n
Click on the Code Points checkbox to display the code point under each matching Unihan character.
\n
It is possible to choose how many characters are shown one page at a time.
\n
The search is performed on the set of 92,865 Unihan characters (excluding CJK compatibility ideographs) defined in Unicode 14.0.
\n
Use the Results ▾ pop-up menu to perform an action among:\n
\n
Copy Results [copy the results as string to the clipboard]
\n
Save Results.. [save the results as string to a text file]
\n
Clear Results [clear the current list of results]
\n
\n
\n
Notes:\n
\n
Unencoded components of IDS, if any, are assigned code points belonging to the PUA (Private Use Area) block, and are properly displayed by using an embedded copy of the custom font BabelStone Han PUA, created by Andrew West.
\n
For best display results, most recent versions of the following fonts should be downloaded and installed at the OS level:\n
The CJK Local Fonts utility displays all the local font glyphs of a given Unihan character.
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display all the glyphs.
\n
Standardized variants and Ideographic Variation Sequences (IVS) are also accepted in input, either directly, e.g., 劍󠄁, or as a combination of two code points: Unihan base character + variation selector (VS1 to VS256), e.g., U+6F22 U+FE00, or U+9F8D U+E0101; the specific format <9F8D,E0107> is also allowed.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
Click on the Compact Layout checkbox to display the local font glyphs in a more compact way: hovering over each glyph frame brings up a tooltip with the local font name.
\n
Use the Font Name Filter input field to restrict in real time the display of local font glyphs to the font names matching the text string.
\n
Notes:\n
\n
A dashed outline is added to a character frame whenever the glyph of a Unihan character coming with a variation selector is visually different from the glyph of its base character alone; in such case, alt-clicking (or shift-clicking) inside the character frame displays momentarily the base character glyph; this is especially useful to spot subtle differences between glyph variations.
\n
For best coverage of Unicode Variation Sequences, some of the following fonts should be downloaded and installed at the OS level:\n
The CJK Sources utility displays in a grid fashion the various sources of a given subset of CJK (Chinese/Japanese/Korean) characters, as referenced in their respective Unicode 14.0 code charts:\n
CJK characters can be entered either directly in the \"Characters\" input field, or using a series of code points in hexadecimal format in the \"Code points\" input field.
\n
It is also possible to input predefined strings of CJK characters selected from the Samples ▾ pop-up menu.
\n
As a convenience, the input fields can be emptied using the Clear button.\nIn output, the standard Unicode code point format U+9999 is used, i.e. \"U+\" directly followed by 4 or 5 hex digits.
\n
In input, more hexadecimal formats are allowed, including Unicode escape sequences, such as \\u6E7E or \\u{21FE7}. Moving out of the field or typing the Enter key converts all valid codes to standard Unicode code point format.
\n
Code point and alphanumeric source references of CJK compatibility characters are systematically displayed in italics.
\n
Whereas the original code charts are making use of mutually incompatible, block-specific source orderings, this utility displays the relevant sources always sorted in the same order, discarding any empty column for the sake of clarity:\n
\n\n
\n
Prefix
\n
Source
\n
Unihan Property
\n
\n\n\n
\n
G
\n
China
\n
kIRG_GSource
\n
\n
\n
H
\n
Hong Kong
\n
kIRG_HSource
\n
\n
\n
M
\n
Macao
\n
kIRG_MSource
\n
\n
\n
T
\n
Taiwan
\n
kIRG_TSource
\n
\n
\n
J
\n
Japan
\n
kIRG_JSource
\n
\n
\n
K
\n
South Korea
\n
kIRG_KSource
\n
\n
\n
KP
\n
North Korea
\n
kIRG_KPSource
\n
\n
\n
V
\n
Vietnam
\n
kIRG_VSource
\n
\n
\n
UTC
\n
UTC
\n
kIRG_USource
\n
\n
\n
SAT
\n
SAT
\n
kIRG_SSource
\n
\n
\n
UK
\n
U.K.
\n
kIRG_UKSource
\n
\n\n
\n
\n
UTC stands for Unicode Technical Committee, which is responsible for the development and maintenance of the Unicode Standard.
\n
SAT (SAmganikikrtam Taisotripitakam in Sanskrit) represents a machine-readable text database of the Taishō Tripiṭaka.
\n
A table of glyphs statistics is available for quick reference.
\n
\n
\n
CJK Variations
\n
\n
The CJK Variations utility displays all the registered Ideographic Variation Sequences (IVS) of a given Unihan character, as referenced in their respective IVD 2020 charts:\n
Clicking inside any character glyph displays momentarily the same glyph for all variations in the same collection, while alt-clicking (or shift-clicking) applies to all characters glyphs sharing the same IVS across different collections. This is especially useful to quickly spot visual differences between glyph variations.
\n
Any Unihan character can be entered in the Unihan input field either as a character or a code point. Click on the Look Up button to display all the IVS glyphs along with their VS (Variation Selector) code points.
\n
Previously looked up characters are kept in a history stack; use the Alt+↑ and Alt+↓ keyboard shortcuts to navigate through them up and down inside the input field. Alternatively, you can also use the Lookup History ▾ pop-up menu to automatically look up a specific character.
\n
\n
\n
\n
JavaScript Runner
\n
\n
The JavaScript Runner utility lets you execute JavaScript code, and comes with several sample scripts related to CJK, IDS, and IVD; it is useful for quick testing/prototyping or data processing.
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/unicopedia-sinica\n# Go into the repository\ncd unicopedia-sinica\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting unicopedia-sinica-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Unicopedia Sinica.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
For developers the following commands are needed to add a language.
\n
npm run add-locale de\nnpm run extract
\n
de must be replaced with the language code you are adding.
\n
The translations are stored in .po files under locales folder. A cross platform app named POEdit could be used for translating them.
\n
Bugs and Feature Requests
\n
Have a bug or a feature request? First, read the issue guidelines and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.
\n
For more generic product questions and feedback please email hello@upcount.app
For developers the following commands are needed to add a language.
\n
npm run add-locale de\nnpm run extract
\n
de must be replaced with the language code you are adding.
\n
The translations are stored in .po files under locales folder. A cross platform app named POEdit could be used for translating them.
\n
Bugs and Feature Requests
\n
Have a bug or a feature request? First, read the issue guidelines and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.
\n
For more generic product questions and feedback please email hello@upcount.app
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/vade-mecum-shelf\n# Go into the repository\ncd vade-mecum-shelf\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting vade-mecum-shelf-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Vade Mecum Shelf.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
You'll need Node.js (which comes with npm) installed on your computer in order to build this application.
\n
Clone method
\n
# Clone the repository\ngit clone https://github.com/tonton-pixel/vade-mecum-shelf\n# Go into the repository\ncd vade-mecum-shelf\n# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Note: to use the clone method, the core tool git must also be installed.
\n
Download method
\n
If you don't wish to clone, you can download the source code, unZip it, then directly run the following commands from a Terminal opened at the resulting vade-mecum-shelf-master folder location:
\n
# Install dependencies\nnpm install\n# Run the application\nnpm start
\n
Packaging
\n
Several scripts are also defined in the package.json file to build OS-specific bundles of the application, using the simple yet powerful Electron Packager Node module. \nFor instance, running the following command (once the dependencies are installed) will create a Vade Mecum Shelf.app version for macOS:
\n
# Build macOS (Darwin) application\nnpm run build-darwin
Vagrant Manager is a status bar menu app that lets you manage all of your Vagrant machines from one central location. It covers multiple languages, plugin management and snapshots.
\n
It has now been translated into the following languages:
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Vagrant Manager is a status bar menu app that lets you manage all of your Vagrant machines from one central location. It covers multiple languages, plugin management and snapshots.
\n
It has now been translated into the following languages:
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
\n
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
\n
THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
With this app you can create a family tree with extensive information and pictures about the individual family members. The whole thing can be done very simply using the mouse and a few keystrokes. An editor to export this family tree in different formats (pdf, svg, png) is also included. The output can be configured extensively.
With this app you can create a family tree with extensive information and pictures about the individual family members. The whole thing can be done very simply using the mouse and a few keystrokes. An editor to export this family tree in different formats (pdf, svg, png) is also included. The output can be configured extensively.
Note about Calculator Logic: It should be noted that there are two main schools of thought on calculator input logic: immediate execution logic and formula logic. Formula logic observes order of operation precedence, immediate execution does not. Vue Calc utilizes immediate execution logic.
\n
Either is acceptable, but please note that depending on which you choose, your calculator may yield different results than ours for certain equations (see below example)
Note about Calculator Logic: It should be noted that there are two main schools of thought on calculator input logic: immediate execution logic and formula logic. Formula logic observes order of operation precedence, immediate execution does not. Vue Calc utilizes immediate execution logic.
\n
Either is acceptable, but please note that depending on which you choose, your calculator may yield different results than ours for certain equations (see below example)
VUPC is an open source screen sharing + remote collaboration application for Mac OS, Linux, Windows. You can share your desktop with someone else while letting them share your mouse and keyboard remotely. Right now it is not as good as commercial alternatives, mostly because this initial prototype was written in 3 days. The big difference is that you can send PRs to make VUPC better
\n
Screenshots
\n
\n
Demo
\n
You can download the demo application which may not be up to date with the latest changes in master. This application uses our server for signaling.
List of features ready and TODOs for future development
\n
\n
Share screen
\n
Mouse click event in host\n
To-do list:
\n
\n
Keyboard events in host
\n
Your ideas :)
\n
\n
Status
\n
VUPC is currently ALPHA STATUS and is intended for developers/early adopters. Check out the Issues to get involved. VUPC is a volunteer run project, your contributions and improvements are welcome!
\n
Inspiration
\n
This project is inspired by ScreenCat which was discontinued a long time ago.
VUPC is an open source screen sharing + remote collaboration application for Mac OS, Linux, Windows. You can share your desktop with someone else while letting them share your mouse and keyboard remotely. Right now it is not as good as commercial alternatives, mostly because this initial prototype was written in 3 days. The big difference is that you can send PRs to make VUPC better
\n
Screenshots
\n
\n
Demo
\n
You can download the demo application which may not be up to date with the latest changes in master. This application uses our server for signaling.
List of features ready and TODOs for future development
\n
\n
Share screen
\n
Mouse click event in host\n
To-do list:
\n
\n
Keyboard events in host
\n
Your ideas :)
\n
\n
Status
\n
VUPC is currently ALPHA STATUS and is intended for developers/early adopters. Check out the Issues to get involved. VUPC is a volunteer run project, your contributions and improvements are welcome!
\n
Inspiration
\n
This project is inspired by ScreenCat which was discontinued a long time ago.
This is a GUI app that can upscale anime-styled images, gifs, and videos using waifu2x. It aims to be simple to use, but\nyou can access more advanced settings in the top bar.
\n
Note: Upscaling videos and gifs will take a very long time without a high-end graphics card!
Upscale multiple images (or multiple frames of an animated image/video) concurrently
\n
\n
Warning: Upscaling too many images in parallel can cause your computer to freeze if it runs out of CPU/memory.
\n
Installation
\n
To install, just download the latest exe installer from the releases tab. You may get a warning message that says \"running this app can harm your PC\", but don't worry because it's safe. Updates can be installed automatically.
\n
Note: If you install it under C:/Program Files you might need to run it as administrator.
\n
Bugs and Requests
\n
Open an issue on my GitHub repository. I appreciate any requests, but I can't guarantee that I will fulfill all of them.
This is a GUI app that can upscale anime-styled images, gifs, and videos using waifu2x. It aims to be simple to use, but\nyou can access more advanced settings in the top bar.
\n
Note: Upscaling videos and gifs will take a very long time without a high-end graphics card!
Upscale multiple images (or multiple frames of an animated image/video) concurrently
\n
\n
Warning: Upscaling too many images in parallel can cause your computer to freeze if it runs out of CPU/memory.
\n
Installation
\n
To install, just download the latest exe installer from the releases tab. You may get a warning message that says \"running this app can harm your PC\", but don't worry because it's safe. Updates can be installed automatically.
\n
Note: If you install it under C:/Program Files you might need to run it as administrator.
\n
Bugs and Requests
\n
Open an issue on my GitHub repository. I appreciate any requests, but I can't guarantee that I will fulfill all of them.
Web Archiving Integration Layer (WAIL) is a graphical user interface (GUI) atop multiple web archiving tools\nintended to be used as an easy way for anyone to preserve and replay web pages.\nTools included and accessible through the GUI are Heritrix 3.2.0\nand PyWb 0.33.0.
\n
More information about the motivations behind WAIL see the Motivations section in the projects wiki.
Web Archiving Integration Layer (WAIL) is a graphical user interface (GUI) atop multiple web archiving tools\nintended to be used as an easy way for anyone to preserve and replay web pages.\nTools included and accessible through the GUI are Heritrix 3.2.0\nand PyWb 0.33.0.
\n
More information about the motivations behind WAIL see the Motivations section in the projects wiki.
This software is made for students of Jaypee Institute of Information Technology(JIIT). The software is made to ease the process of browsing https://webkiosk.jiit.ac.in. Webkiosk is a one-stop portal where every student gets his academic/personal records including but not limited to grades, attendance and marks.
\n
Important
\n
Please do not enter invalid credentials 3 times or more. This may lock down your account.
\n
Installing The App
\n
Full Windows install for 64-bit PCs\nSetup(32).exe => Full Windows install for 32-bit PCs\nPortable(64).exe => Unzip and run the exe (64-bit).\nPortable(32).exe => Unzip and run the exe (32-bit).\nSetup.deb => Installable on Debian distributions (Ubuntu, Kali, etc.)\nSetup.rpm => Installable on Red Hat distributions (Fedora, etc.) \">
Setup(64).exe => Full Windows install for 64-bit PCs\nSetup(32).exe => Full Windows install for 32-bit PCs\nPortable(64).exe => Unzip and run the exe (64-bit).\nPortable(32).exe => Unzip and run the exe (32-bit).\nSetup.deb => Installable on Debian distributions (Ubuntu, Kali, etc.)\nSetup.rpm => Installable on Red Hat distributions (Fedora, etc.)
\n
Installing on debian
\n
//Install the software\nsudo dpkg -i setup.deb\n//Fix dependencies if any\nsudo apt-get install -f
\n
Installing on fedora
\n
//Install the software\nsudo dnf install setup.rpm
\n
Running on Mac OS
\n
//Directly run the software\nDouble click Webkiosk-Wrapper.app inside the extracted directory
P.S. This app saves the credentials and all of the users data in System's %APPDATA% directory. NOTHING is collected by me.
\n
",
"readmeOriginal": "
Webkiosk-Wrapper
\n
\n\n\n\n
\n
This software is made for students of Jaypee Institute of Information Technology(JIIT). The software is made to ease the process of browsing https://webkiosk.jiit.ac.in. Webkiosk is a one-stop portal where every student gets his academic/personal records including but not limited to grades, attendance and marks.
\n
Important
\n
Please do not enter invalid credentials 3 times or more. This may lock down your account.
\n
Installing The App
\n
Setup(64).exe => Full Windows install for 64-bit PCs\nSetup(32).exe => Full Windows install for 32-bit PCs\nPortable(64).exe => Unzip and run the exe (64-bit).\nPortable(32).exe => Unzip and run the exe (32-bit).\nSetup.deb => Installable on Debian distributions (Ubuntu, Kali, etc.)\nSetup.rpm => Installable on Red Hat distributions (Fedora, etc.)
\n
Installing on debian
\n
//Install the software\nsudo dpkg -i setup.deb\n//Fix dependencies if any\nsudo apt-get install -f
\n
Installing on fedora
\n
//Install the software\nsudo dnf install setup.rpm
\n
Running on Mac OS
\n
//Directly run the software\nDouble click Webkiosk-Wrapper.app inside the extracted directory
WebDesktop (wdOS) is the easy way to make desktop apps with web languages and nothing else!
\n
\n
WebDesktop OS GUI is the easy way to make desktop apps with web languages and nothing else!
\n
Installing apps is as easy. All you need to do is unzip the app in this folder Documents/wdOS/App/
\n
With WebDesktop you can broadcast a website or files on your local network or over the internet with router configurations. (You may need to play with firewall settings)
\n
WebDesktop even comes with a very basic web browser.(not currently in mac addition)
\n
** Many more update and a marketplace for apps will becoming in the near future!
\n
To build an app:
\n
\n
create a folder with your app title in this directory Documents/wdOS/App/
\n
add you code with entry point index.html
\n
add an icon with name ic.png
\n
add a file called wd.json with contents that look like this\n{\"name\": \"Sample\", \"des\": \"This is a test project!\"}
\n
\n
",
"readmeOriginal": "
wdOS
\n
WebDesktop (wdOS) is the easy way to make desktop apps with web languages and nothing else!
\n
\n
WebDesktop OS GUI is the easy way to make desktop apps with web languages and nothing else!
\n
Installing apps is as easy. All you need to do is unzip the app in this folder Documents/wdOS/App/
\n
With WebDesktop you can broadcast a website or files on your local network or over the internet with router configurations. (You may need to play with firewall settings)
\n
WebDesktop even comes with a very basic web browser.(not currently in mac addition)
\n
** Many more update and a marketplace for apps will becoming in the near future!
\n
To build an app:
\n
\n
create a folder with your app title in this directory Documents/wdOS/App/
\n
add you code with entry point index.html
\n
add an icon with name ic.png
\n
add a file called wd.json with contents that look like this\n{\"name\": \"Sample\", \"des\": \"This is a test project!\"}
Some screen captures of the implemented features...
\n
\n \n \n \n \n
\n
Online demo
\n
The app has been deployed and you can test it right here!. Whenever a feature is only available under Electron the UI element will be disabled or a corresponding popup message will be displayed. But most of the time we will try to make the feature available online.
\n
Windows, Linux and MacOS versions
\n
Since most of the features don't need to access desktop capabilities, Electron is actually not absolutely required. However, having a desktop application gives nice things like:
\n
\n
global OS shortcuts
\n
dedicated OS window
\n
ability to select exactly where a file will be stored whenever the SPA offers a Save As... button
\n
etc.
\n
\n
Again feel free to try out the online demo before trying to package the Electron app for your platform :-) since you will enjoy:
\n
\n
live updates
\n
usage as a progressive web app (PWA)
\n
or just add bookmark(s) to the specific feature(s) of the app you use the most
\n
\n
Builded desktop releases
\n
The following installers (may be old release in some cases) are available under releases folder:
\n
\n
Windows: releases/Web Toolbox Setup <version>.exe
\n
Linux: releases/Web Toolbox-<version>.AppImage
\n
MacOS: releases/Web Toolbox-<version>.dmg
\n
\n
Build releases from source
\n
To build a desktop version just get the source code and run the following command, which will package the installers for all the platforms:
\n
npm install -g yarn\nnpm install\nnpm run electron:build:all\n
Also bootstrapped with Create React App with --typescript option. On the top of it, the following features have been added with relatively small changes:
\n
\n
TypeScript supports for Electron main process source code
Some screen captures of the implemented features...
\n
\n \n \n \n \n
\n
Online demo
\n
The app has been deployed and you can test it right here!. Whenever a feature is only available under Electron the UI element will be disabled or a corresponding popup message will be displayed. But most of the time we will try to make the feature available online.
\n
Windows, Linux and MacOS versions
\n
Since most of the features don't need to access desktop capabilities, Electron is actually not absolutely required. However, having a desktop application gives nice things like:
\n
\n
global OS shortcuts
\n
dedicated OS window
\n
ability to select exactly where a file will be stored whenever the SPA offers a Save As... button
\n
etc.
\n
\n
Again feel free to try out the online demo before trying to package the Electron app for your platform :-) since you will enjoy:
\n
\n
live updates
\n
usage as a progressive web app (PWA)
\n
or just add bookmark(s) to the specific feature(s) of the app you use the most
\n
\n
Builded desktop releases
\n
The following installers (may be old release in some cases) are available under releases folder:
\n
\n
Windows: releases/Web Toolbox Setup <version>.exe
\n
Linux: releases/Web Toolbox-<version>.AppImage
\n
MacOS: releases/Web Toolbox-<version>.dmg
\n
\n
Build releases from source
\n
To build a desktop version just get the source code and run the following command, which will package the installers for all the platforms:
\n
npm install -g yarn\nnpm install\nnpm run electron:build:all\n
Also bootstrapped with Create React App with --typescript option. On the top of it, the following features have been added with relatively small changes:
\n
\n
TypeScript supports for Electron main process source code
Try the (unstable) development version by cloning the Git repository. See the\n\"How to Contribute\" instructions.
\n
\n
\n
Screenshots
\n
\n \n \n
\n
How to Contribute
\n
Get the code
\n
$ git clone https://github.com/webtorrent/webtorrent-desktop.git\n$ cd webtorrent-desktop\n$ npm install\n
\n
Run the app
\n
$ npm start\n
\n
Watch the code
\n
Restart the app automatically every time code changes. Useful during development.
\n
$ npm run watch\n
\n
Run linters
\n
$ npm test\n
\n
Run integration tests
\n
$ npm run test-integration\n
\n
The integration tests use Spectron and Tape. They click through the app, taking screenshots and\ncomparing each one to a reference. Why screenshots?
\n
\n
Ad-hoc checking makes the tests a lot more work to write
\n
Even diffing the whole HTML is not as thorough as screenshot diffing. For example, it wouldn't\ncatch an bug where hitting ESC from a video doesn't correctly restore window size.
\n
Chrome's own integration tests use screenshot diffing iirc
\n
Small UI changes will break a few tests, but the fix is as easy as deleting the offending\nscreenshots and running the tests, which will recreate them with the new look.
For MacOS, you'll need a Retina screen for the integration tests to pass. Your screen should have\nthe same resolution as a 2018 MacBook Pro 13\".
\n
For Windows, you'll need Windows 10 with a 1366x768 screen.
\n
When running integration tests, keep the mouse on the edge of the screen and don't touch the mouse\nor keyboard while the tests are running.
\n
Package the app
\n
Builds app binaries for Mac, Linux, and Windows.
\n
$ npm run package\n
\n
To build for one platform:
\n
$ npm run package -- [platform] [options]\n
\n
Where [platform] is darwin, linux, win32, or all (default).
\n
The following optional arguments are available:
\n
\n
--sign - Sign the application (Mac, Windows)
\n
--package=[type] - Package single output type.\n
\n
deb - Debian package
\n
rpm - RedHat package
\n
zip - Linux zip file
\n
dmg - Mac disk image
\n
exe - Windows installer
\n
portable - Windows portable app
\n
all - All platforms (default)
\n
\n
\n
\n
Note: Even with the --package option, the auto-update files (.nupkg for Windows,\n-darwin.zip for Mac) will always be produced.
\n
Windows build notes
\n
The Windows app can be packaged from any platform.
\n
Note: Windows code signing only works from Windows, for now.
\n
Note: To package the Windows app from non-Windows platforms,\nWine and Mono need\nto be installed. For example on Mac, first install\nXQuartz, then run:
WebTorrent Desktop collects some basic usage stats to help us make the app better.\nFor example, we track how well the play button works. How often does it succeed?\nTime out? Show a missing codec error?
\n
The app never sends any personally identifying information, nor does it track which\ntorrents you add.
Try the (unstable) development version by cloning the Git repository. See the\n\"How to Contribute\" instructions.
\n
\n
\n
Screenshots
\n
\n \n \n
\n
How to Contribute
\n
Get the code
\n
$ git clone https://github.com/webtorrent/webtorrent-desktop.git\n$ cd webtorrent-desktop\n$ npm install\n
\n
Run the app
\n
$ npm start\n
\n
Watch the code
\n
Restart the app automatically every time code changes. Useful during development.
\n
$ npm run watch\n
\n
Run linters
\n
$ npm test\n
\n
Run integration tests
\n
$ npm run test-integration\n
\n
The integration tests use Spectron and Tape. They click through the app, taking screenshots and\ncomparing each one to a reference. Why screenshots?
\n
\n
Ad-hoc checking makes the tests a lot more work to write
\n
Even diffing the whole HTML is not as thorough as screenshot diffing. For example, it wouldn't\ncatch an bug where hitting ESC from a video doesn't correctly restore window size.
\n
Chrome's own integration tests use screenshot diffing iirc
\n
Small UI changes will break a few tests, but the fix is as easy as deleting the offending\nscreenshots and running the tests, which will recreate them with the new look.
For MacOS, you'll need a Retina screen for the integration tests to pass. Your screen should have\nthe same resolution as a 2018 MacBook Pro 13\".
\n
For Windows, you'll need Windows 10 with a 1366x768 screen.
\n
When running integration tests, keep the mouse on the edge of the screen and don't touch the mouse\nor keyboard while the tests are running.
\n
Package the app
\n
Builds app binaries for Mac, Linux, and Windows.
\n
$ npm run package\n
\n
To build for one platform:
\n
$ npm run package -- [platform] [options]\n
\n
Where [platform] is darwin, linux, win32, or all (default).
\n
The following optional arguments are available:
\n
\n
--sign - Sign the application (Mac, Windows)
\n
--package=[type] - Package single output type.\n
\n
deb - Debian package
\n
rpm - RedHat package
\n
zip - Linux zip file
\n
dmg - Mac disk image
\n
exe - Windows installer
\n
portable - Windows portable app
\n
all - All platforms (default)
\n
\n
\n
\n
Note: Even with the --package option, the auto-update files (.nupkg for Windows,\n-darwin.zip for Mac) will always be produced.
\n
Windows build notes
\n
The Windows app can be packaged from any platform.
\n
Note: Windows code signing only works from Windows, for now.
\n
Note: To package the Windows app from non-Windows platforms,\nWine and Mono need\nto be installed. For example on Mac, first install\nXQuartz, then run:
WebTorrent Desktop collects some basic usage stats to help us make the app better.\nFor example, we track how well the play button works. How often does it succeed?\nTime out? Show a missing codec error?
\n
The app never sends any personally identifying information, nor does it track which\ntorrents you add.
yarn # install deps\n\nyarn start # launch the app\n\nyarn dir # build executable only\n\nyarn nsis # windows nsis installer\n\nyarn nsis-ia32 # windows nsis installer (x86/ia32)\n\nyarn 7zip # windows 7zip protable version\n\nyarn 7zip-ia32 # windows 7zip portable version (x86/ia32)\n\nyarn mac # macos\n\nyarn linux # linux\n\nyarn appimage # linux AppImage
yarn # install deps\n\nyarn start # launch the app\n\nyarn dir # build executable only\n\nyarn nsis # windows nsis installer\n\nyarn nsis-ia32 # windows nsis installer (x86/ia32)\n\nyarn 7zip # windows 7zip protable version\n\nyarn 7zip-ia32 # windows 7zip portable version (x86/ia32)\n\nyarn mac # macos\n\nyarn linux # linux\n\nyarn appimage # linux AppImage
🛑Notice: This repository is no longer maintained; No further Issues or Pull Requests will be considered or approved.
\n
\n
Winds - A Beautiful Open Source RSS & Podcast App Powered by GetStream.io
\n
\n\n\n\n\n\n
\n
Description
\n
Winds is a beautiful open-source RSS and Podcast app created using React & Redux on the frontend and Express.js on the backend. Use the free hosted version or run it on your own server and customize it as you see fit. Contributions in form of pull requests are always appreciated. Activity Feeds & Discovery in Winds are powered by Stream, the app leverages Algolia for search, AWS for hosting, MongoDB Atlas for a hosted database (DBaaS), and SendGrid for email. All of these services have a free tier.
Stream is an API for building activity feeds. For Winds the follow suggestions and the list of articles from the feeds you follow is powered by Stream. Stream accounts are free for up to 3 million feed updates and handle personalization (machine learning) for up to 100 users.
\n
Algolia
\n
Algolia is used for lightning fast and relevant search. We use their JavaScript search client to easily setup the Winds search implementation. Algolia, accounts are free up to 10k records and 100k operations.
\n
MongoDB
\n
MongoDB Atlas provides a Database as a Service, and serves as the backend datastore for Winds.
\n
Tutorials & Blog Posts
\n
The following tutorials will not only help you start contributing to Winds, but also provide inspiration for your next app.
\n
Note: We're actively working on this portion of the README. To stay up to date with the latest information, please signup for the hosted version at https://getstream.io/winds.
Note: If you are running the test suite, you will need to have a test version of the .env file inside of the api/test directory.
\n
\n
Then run:
\n
\n
pm2 start process_dev.json
\n
cd app && yarn start
\n
\n
Clone the Repo
\n
git clone git@github.com:GetStream/Winds.git
\n
Install dependencies
\n
The following instructions are geared towards Mac users who can use brew (Homebrew) to install most dependencies. Ubuntu users can use apt, and Windows users will have to install directly from the dependency's site. Non-debian-based Linux users will probably be able to figure it out on their own :)
\n
\n
cd Winds/app
\n
yarn
\n
cd ../api
\n
yarn
\n
\n
Start MongoDB Locally
\n
Winds uses MongoDB as the main datastore - it contains all users, rss feeds, podcasts, episodes, articles, and shares.
\n
If you're on a Mac, you can install MongoDB through Homebrew by running:
You can also run MongoDB in the background by running:
\n
brew services start mongodb\n
\n
Start Redis Locally
\n
At Stream, we use Redis as an in-memory storage for the Winds podcast processing and RSS processing workers. It contains a list of podcasts and RSS feeds, which the workers pick up and process using the bull messaging system.
\n
If you're on a Mac, you can install Redis through Homebrew by running:
...which creates (by default) a dump.rdb file in your current directory and stores a cached version of the database in that location.
\n
You can also run Redis in the background by running:
\n
brew services start redis\n
\n
Loading Test Data
\n
For testing purposes, you will want to use the test data located here.
\n
Use mongoimport or mongorestore to import the data. There are two username and password combinations for testing:
\n
Username: admin@admin.com \nPassword: admin\n
\nUsername: test@test.com \nPassword: test
\n
You will need to run the FLUSHALL command in Redis to ensure that the new content is picked up.
\n
\n
Note: This will override any local data that you may have. Please be cautious! Also, this will not create Stream follows – please follow feeds manually to generate them.
\n
\n
Stream
\n
Sign up and Create a Stream App
\n
To contribute to Winds, sign up for Stream to utilize the activity and timeline feeds.
\n
(Reminder: Stream is free for applications with less than 3,000,000 updates per month.)
Pull requests for improved RSS compatibility are much appreciated.\nMost of the parsing codebase is located in api/src/parsers/.
\n
Support
\n
All support is handled via GitHub Issues. If you're unfamiliar with creating an Issue on GitHub, please follow these instructions.
\n
Maintenance and Contributions
\n
Thank you to all of the maintainers and contributors who've helped Winds become what it is today and help it stay up and running every day. We couldn't do it without you!
RSS is an amazing open standard. It is probably the most pleasant way to stay up to date with the sites and podcasts you care about. Our reasons for contributing to Winds are explained in the blogpost Winds 2.0 It's time to Revive RSS. In this section we will list other open source and commercial projects that are having an impact on Reviving RSS:
We've recently closed a $38 million Series B funding round and we keep actively growing.\nOur APIs are used by more than a billion end-users, and you'll have a chance to make a huge impact on the product within a team of the strongest engineers all over the world.
🛑Notice: This repository is no longer maintained; No further Issues or Pull Requests will be considered or approved.
\n
\n
Winds - A Beautiful Open Source RSS & Podcast App Powered by GetStream.io
\n
\n\n\n\n\n\n
\n
Description
\n
Winds is a beautiful open-source RSS and Podcast app created using React & Redux on the frontend and Express.js on the backend. Use the free hosted version or run it on your own server and customize it as you see fit. Contributions in form of pull requests are always appreciated. Activity Feeds & Discovery in Winds are powered by Stream, the app leverages Algolia for search, AWS for hosting, MongoDB Atlas for a hosted database (DBaaS), and SendGrid for email. All of these services have a free tier.
Stream is an API for building activity feeds. For Winds the follow suggestions and the list of articles from the feeds you follow is powered by Stream. Stream accounts are free for up to 3 million feed updates and handle personalization (machine learning) for up to 100 users.
\n
Algolia
\n
Algolia is used for lightning fast and relevant search. We use their JavaScript search client to easily setup the Winds search implementation. Algolia, accounts are free up to 10k records and 100k operations.
\n
MongoDB
\n
MongoDB Atlas provides a Database as a Service, and serves as the backend datastore for Winds.
\n
Tutorials & Blog Posts
\n
The following tutorials will not only help you start contributing to Winds, but also provide inspiration for your next app.
\n
Note: We're actively working on this portion of the README. To stay up to date with the latest information, please signup for the hosted version at https://getstream.io/winds.
Note: If you are running the test suite, you will need to have a test version of the .env file inside of the api/test directory.
\n
\n
Then run:
\n
\n
pm2 start process_dev.json
\n
cd app && yarn start
\n
\n
Clone the Repo
\n
git clone git@github.com:GetStream/Winds.git
\n
Install dependencies
\n
The following instructions are geared towards Mac users who can use brew (Homebrew) to install most dependencies. Ubuntu users can use apt, and Windows users will have to install directly from the dependency's site. Non-debian-based Linux users will probably be able to figure it out on their own :)
\n
\n
cd Winds/app
\n
yarn
\n
cd ../api
\n
yarn
\n
\n
Start MongoDB Locally
\n
Winds uses MongoDB as the main datastore - it contains all users, rss feeds, podcasts, episodes, articles, and shares.
\n
If you're on a Mac, you can install MongoDB through Homebrew by running:
You can also run MongoDB in the background by running:
\n
brew services start mongodb\n
\n
Start Redis Locally
\n
At Stream, we use Redis as an in-memory storage for the Winds podcast processing and RSS processing workers. It contains a list of podcasts and RSS feeds, which the workers pick up and process using the bull messaging system.
\n
If you're on a Mac, you can install Redis through Homebrew by running:
...which creates (by default) a dump.rdb file in your current directory and stores a cached version of the database in that location.
\n
You can also run Redis in the background by running:
\n
brew services start redis\n
\n
Loading Test Data
\n
For testing purposes, you will want to use the test data located here.
\n
Use mongoimport or mongorestore to import the data. There are two username and password combinations for testing:
\n
Username: admin@admin.com \nPassword: admin\n
\nUsername: test@test.com \nPassword: test
\n
You will need to run the FLUSHALL command in Redis to ensure that the new content is picked up.
\n
\n
Note: This will override any local data that you may have. Please be cautious! Also, this will not create Stream follows – please follow feeds manually to generate them.
\n
\n
Stream
\n
Sign up and Create a Stream App
\n
To contribute to Winds, sign up for Stream to utilize the activity and timeline feeds.
\n
(Reminder: Stream is free for applications with less than 3,000,000 updates per month.)
Pull requests for improved RSS compatibility are much appreciated.\nMost of the parsing codebase is located in api/src/parsers/.
\n
Support
\n
All support is handled via GitHub Issues. If you're unfamiliar with creating an Issue on GitHub, please follow these instructions.
\n
Maintenance and Contributions
\n
Thank you to all of the maintainers and contributors who've helped Winds become what it is today and help it stay up and running every day. We couldn't do it without you!
RSS is an amazing open standard. It is probably the most pleasant way to stay up to date with the sites and podcasts you care about. Our reasons for contributing to Winds are explained in the blogpost Winds 2.0 It's time to Revive RSS. In this section we will list other open source and commercial projects that are having an impact on Reviving RSS:
We've recently closed a $38 million Series B funding round and we keep actively growing.\nOur APIs are used by more than a billion end-users, and you'll have a chance to make a huge impact on the product within a team of the strongest engineers all over the world.
To start your WizardMirror, run npm start from the WizardMirror directory. Your WizardMirror can run apps under it, for example, a time app or a weather app. App settings can be set in apps.json (which is duplicated from appsSample.json by the installation script).\n\nHere are some preinstalled applications:
Once you have finished installing WizardMirror and configured all the software, you can move on to the hardware: the actual mirror design.\nYou will need
\n
\n
LCD screen
\n
2-way mirror glass/film
\n
Wooden frame to frame the mirror.
\n
Cables to get your Raspberry Pi running and connect it to the Screen
\n
Other tools
\n
\n
What you will need to do:\nOpen up your LCD Monitor, attach the mirror film on top of it, frame it, attach the Raspberry pi and attach it to the wall. School's starting, so I can't do much right now, but as soon as winter break starts I'll try to make a build video.
To start your WizardMirror, run npm start from the WizardMirror directory. Your WizardMirror can run apps under it, for example, a time app or a weather app. App settings can be set in apps.json (which is duplicated from appsSample.json by the installation script).\n\nHere are some preinstalled applications:
Once you have finished installing WizardMirror and configured all the software, you can move on to the hardware: the actual mirror design.\nYou will need
\n
\n
LCD screen
\n
2-way mirror glass/film
\n
Wooden frame to frame the mirror.
\n
Cables to get your Raspberry Pi running and connect it to the Screen
\n
Other tools
\n
\n
What you will need to do:\nOpen up your LCD Monitor, attach the mirror film on top of it, frame it, attach the Raspberry pi and attach it to the wall. School's starting, so I can't do much right now, but as soon as winter break starts I'll try to make a build video.
Wexond Base is a modern web browser, built on top of modern web technologies such as Electron and React, that can also be used as a framework to create a custom web browser (see the License section).
Compiling and editing Chromium directly may be challenging and time consuming, so we decided to build Wexond with modern web technologies. Hence, the development effort and time is greatly reduced. Either way Firefox is based on Web Components and Chrome implements new dialogs in WebUI (which essentially is hosted in WebContents).
\n
Features
\n
\n
Wexond Shield - Browse the web without any ads and don't let websites to track you. Thanks to the Wexond Shield powered by Cliqz, websites can load even 8 times faster!
\n
Chromium without Google services and low resources usage - Since Wexond uses Electron under the hood which is based on only several and the most important Chromium components, it's not bloated with redundant Google tracking services and others.
\n
Fast and fluent UI - The animations are really smooth and their timings are perfectly balanced.
\n
Highly customizable new tab page - Customize almost an every aspect of the new tab page!
\n
Customizable browser UI - Choose whether Wexond should have compact or normal UI.
\n
Tab groups - Easily group tabs, so it's hard to get lost.
\n
Scrollable tabs
\n
Partial support for Chrome extensions - Install some extensions directly from Chrome Web Store* (see #110) (WIP)
\n
\n
Other basic features
\n
\n
Downloads popup with currently downloaded items (download manager WebUI page is WIP)
\n
History manager
\n
Bookmarks bar & manager
\n
Settings
\n
Find in page
\n
Dark and light theme
\n
Omnibox with autocomplete algorithm similar to Chromium
If you have found any bugs or just want to see some new features in Wexond, feel free to open an issue. Every suggestion is very valuable for us, as they help us improve the browsing experience. Also, please don't hesitate to open a pull request. This is really important to us and for the further development of this project.
Guides and the API reference are located in docs directory.
\n
License
\n
Every usage of this project resources (code, graphics etc.) must be consulted with its author (sentialx@gmail.com).
\n
By sending a Pull Request, you agree that your code may be relicensed or sublicensed.
\n
",
"readmeOriginal": "
\n \n
\n
\n
Wexond Browser Base
\n
\n\n\n\n
\n
Wexond Base is a modern web browser, built on top of modern web technologies such as Electron and React, that can also be used as a framework to create a custom web browser (see the License section).
Compiling and editing Chromium directly may be challenging and time consuming, so we decided to build Wexond with modern web technologies. Hence, the development effort and time is greatly reduced. Either way Firefox is based on Web Components and Chrome implements new dialogs in WebUI (which essentially is hosted in WebContents).
\n
Features
\n
\n
Wexond Shield - Browse the web without any ads and don't let websites to track you. Thanks to the Wexond Shield powered by Cliqz, websites can load even 8 times faster!
\n
Chromium without Google services and low resources usage - Since Wexond uses Electron under the hood which is based on only several and the most important Chromium components, it's not bloated with redundant Google tracking services and others.
\n
Fast and fluent UI - The animations are really smooth and their timings are perfectly balanced.
\n
Highly customizable new tab page - Customize almost an every aspect of the new tab page!
\n
Customizable browser UI - Choose whether Wexond should have compact or normal UI.
\n
Tab groups - Easily group tabs, so it's hard to get lost.
\n
Scrollable tabs
\n
Partial support for Chrome extensions - Install some extensions directly from Chrome Web Store* (see #110) (WIP)
\n
\n
Other basic features
\n
\n
Downloads popup with currently downloaded items (download manager WebUI page is WIP)
\n
History manager
\n
Bookmarks bar & manager
\n
Settings
\n
Find in page
\n
Dark and light theme
\n
Omnibox with autocomplete algorithm similar to Chromium
If you have found any bugs or just want to see some new features in Wexond, feel free to open an issue. Every suggestion is very valuable for us, as they help us improve the browsing experience. Also, please don't hesitate to open a pull request. This is really important to us and for the further development of this project.
yarn global add electron || npm install electron -g\nyarn global add electron-packager || npm install electron-packager -g\nyarn global add electron-installer-dmg || npm install electron-installer-dmg -g
\n
* doesn't listed in package.json becouse I doesn't use js builder yet (which will exclude unused dependencies from application installation package)
\n
Run app in dev mode:
\n
yarn start || npm start
\n
Build App and Installation Package (dmg):
\n
yarn packdist || npm run pack && npm run dist
\n
Release files should be generated in dist directory.
\n
License
\n
\n
",
"readmeOriginal": "
\n
WriteBar
\n
\n Experimental distraction-free text editor, \n that displays focus text line right over the keyboard (on the Macbook Pro TouchBar).\n
yarn global add electron || npm install electron -g\nyarn global add electron-packager || npm install electron-packager -g\nyarn global add electron-installer-dmg || npm install electron-installer-dmg -g
\n
* doesn't listed in package.json becouse I doesn't use js builder yet (which will exclude unused dependencies from application installation package)
\n
Run app in dev mode:
\n
yarn start || npm start
\n
Build App and Installation Package (dmg):
\n
yarn packdist || npm run pack && npm run dist
\n
Release files should be generated in dist directory.
A simple desktop application to download Youtube videos to video (mp4, mpg, wmv) and audio (wav, flac, m4a, wma, mp3, ogg, acc) formats, one by one or all of them.
\n
A note: Since this app relays on youtube site and apis, it sometimes breaks without any change.\nIn this case, please create an issue or tweet @y2mp3
\n
\n
Find us on Slack
\n
\n
Limitations
\n
\n
Fetch only first 100 clips in a playlist
\n
\n
Disclaimer
\n
📢📢
\n\n
The app doesn't track you down in ANY way. Not Google Analytics, or any other service. We know nothing jon snow! So, if you have an idea about how to make this app even greater, we will not know unless you will tell us. Please fill a Feature Request or Open a bug and let we know what do you think.
\n
The app doesn't store ANY media files ANYWHERE except on the device who use this app.
\n
Please use this app for downloading only public resources (You shouldn't be able to download private media). If you doesn't see all of the videos in the playlist, probably, they private (even it's yours private)
🖖🎖 Thanks you for your willing to contribute! You can find the list in the project page.
\n
License
\n
MIT
\n
",
"readmeOriginal": "
\n\n\n\n
\n
\n
What is \"Y2Mp3\" app?
\n
A simple desktop application to download Youtube videos to video (mp4, mpg, wmv) and audio (wav, flac, m4a, wma, mp3, ogg, acc) formats, one by one or all of them.
\n
A note: Since this app relays on youtube site and apis, it sometimes breaks without any change.\nIn this case, please create an issue or tweet @y2mp3
\n
\n
Find us on Slack
\n
\n
Limitations
\n
\n
Fetch only first 100 clips in a playlist
\n
\n
Disclaimer
\n
📢📢
\n\n
The app doesn't track you down in ANY way. Not Google Analytics, or any other service. We know nothing jon snow! So, if you have an idea about how to make this app even greater, we will not know unless you will tell us. Please fill a Feature Request or Open a bug and let we know what do you think.
\n
The app doesn't store ANY media files ANYWHERE except on the device who use this app.
\n
Please use this app for downloading only public resources (You shouldn't be able to download private media). If you doesn't see all of the videos in the playlist, probably, they private (even it's yours private)
Yana is a powerful notebook app which allows\nyou to manage local workspaces of hierarchically structured taggable\nand searchable notes. It supports multiple kinds of notes, currently\nrich-text notes (including embedded media and complex tables) and code\nsnippets (based on the VSCode editor frontend) are supported. Other\nfeatures include
\n
\n
Manage note structure via drag-and-drop
\n
Rich notes editor powered by the Atlassian editor core
\n
Multiple local workspaces
\n
Multiple notes can be opened at once in tabs
\n
Starring of notes
\n
Trashcan functionality
\n
Scalability, working fluently even on notebooks with ten thousands of notes
\n
\n
Download the latest release.\nCurrently available for Windows, Linux and Mac.\nFind out more about Yana on yana.js.org.
\n
Contributing
\n
Feel free to contribute with Issue Reports, Feedback or Pull Requests.
\n
If you want to start developing Yana locally, you need Node 14+ and yarn install. Clone the repo,\ninstall dependencies with yarn and start the app locally with yarn start.
\n
Note that, after the electron window has opened, it might not automatically refresh when the web\npackage has finished building. Refresh the container with CTRL+R to see the app. You can\nopen up Devtools with CTRL+SHIFT+i.
Yana is a powerful notebook app which allows\nyou to manage local workspaces of hierarchically structured taggable\nand searchable notes. It supports multiple kinds of notes, currently\nrich-text notes (including embedded media and complex tables) and code\nsnippets (based on the VSCode editor frontend) are supported. Other\nfeatures include
\n
\n
Manage note structure via drag-and-drop
\n
Rich notes editor powered by the Atlassian editor core
\n
Multiple local workspaces
\n
Multiple notes can be opened at once in tabs
\n
Starring of notes
\n
Trashcan functionality
\n
Scalability, working fluently even on notebooks with ten thousands of notes
\n
\n
Download the latest release.\nCurrently available for Windows, Linux and Mac.\nFind out more about Yana on yana.js.org.
\n
Contributing
\n
Feel free to contribute with Issue Reports, Feedback or Pull Requests.
\n
If you want to start developing Yana locally, you need Node 14+ and yarn install. Clone the repo,\ninstall dependencies with yarn and start the app locally with yarn start.
\n
Note that, after the electron window has opened, it might not automatically refresh when the web\npackage has finished building. Refresh the container with CTRL+R to see the app. You can\nopen up Devtools with CTRL+SHIFT+i.
A desktop app that scaffolds projects using Yeoman.
\n
\n
Yo, my friend. This is the first official Yeoman application with a fresh user interface from 2015. The app is unfortunately still in heavy development and we are looking for help! Let us know if something doesn't work like you expected by raising an issue or fix it straight away with a PR.
\n
\n
Documentation
\n
The project is based mainly on electron and Material UI. For a Getting started guide, API docs etc. see the documentation page. If something is missing, wrong or unclear, please open an issue. Thank you!
To understand how the app is being used we will report usage information to Google Analytics. If you do not want this information reported, you can disable it. Open the devtools with CMD+OPT+I (or CTRL+SHIFT+I on Windows) and execute the following snippet in the console localStorage.setItem('insight.disabled', true).
\n
Collected Data
\n
\n
Your IP address is anonymized
\n
A unique identifier that is generated by computing the SHA-1 of the machine's MAC address.
\n
The screen width and height
\n
The version of Yeoman-App being used
\n
Your operating system and version
\n
App events (e.g. number of total installed generators, selected generator)
A desktop app that scaffolds projects using Yeoman.
\n
\n
Yo, my friend. This is the first official Yeoman application with a fresh user interface from 2015. The app is unfortunately still in heavy development and we are looking for help! Let us know if something doesn't work like you expected by raising an issue or fix it straight away with a PR.
\n
\n
Documentation
\n
The project is based mainly on electron and Material UI. For a Getting started guide, API docs etc. see the documentation page. If something is missing, wrong or unclear, please open an issue. Thank you!
To understand how the app is being used we will report usage information to Google Analytics. If you do not want this information reported, you can disable it. Open the devtools with CMD+OPT+I (or CTRL+SHIFT+I on Windows) and execute the following snippet in the console localStorage.setItem('insight.disabled', true).
\n
Collected Data
\n
\n
Your IP address is anonymized
\n
A unique identifier that is generated by computing the SHA-1 of the machine's MAC address.
\n
The screen width and height
\n
The version of Yeoman-App being used
\n
Your operating system and version
\n
App events (e.g. number of total installed generators, selected generator)
WoW Stat is a World of Warcraft server monitor utility. Set your server you wish to monitor, and your server goes down it will automatically notify you when it is back up, or even relaunch WoW for you if you wish.
\n
This is yet another rework, this time using the Electron framework.
\n\n
Install
\n
There are builds in the Release section for macOS and Windows.
WoW Stat is a World of Warcraft server monitor utility. Set your server you wish to monitor, and your server goes down it will automatically notify you when it is back up, or even relaunch WoW for you if you wish.
\n
This is yet another rework, this time using the Electron framework.
\n\n
Install
\n
There are builds in the Release section for macOS and Windows.
There are a lot of books resource written in markdown language on the Internet, you can find from GitHub, GitLab, Gitee... platforms, and most of these books are high quality tech documents. This project is based upon Eletron, Angular, TypeORM, UnifiedJS, NodeGit and other project, the target is a stable, easy to use gitbook reader.
There are a lot of books resource written in markdown language on the Internet, you can find from GitHub, GitLab, Gitee... platforms, and most of these books are high quality tech documents. This project is based upon Eletron, Angular, TypeORM, UnifiedJS, NodeGit and other project, the target is a stable, easy to use gitbook reader.
Lightning wallet focused on user experience and ease of use ⚡️
\n
\n
\n\n
\n
Zap is a free Lightning Network wallet focused on user experience and ease of use, with the overall goal of helping the cryptocurrency community scale Bitcoin.
Once executible you can run either double click the file or run via the cli:
\n
./file.AppImage
\n
Documentation
\n
If you would like to install from source, run a full bitcoin node, connect to a custom lnd instance or get involved with development please refer to our documentation:
If you are having problems with Zap, please report the issue in GitHub or on slack with screenshots and/or how to reproduce the bug/error.
\n
A good product not only has good software tests but also checks the quality of the UX/UI. Putting ourselves in the shoes of a user is a very important design principle of Zap.
Hey! Do you like Zap? Awesome! We could actually really use your help!
\n
Open source isn't just writing code. Zap could use your help with any of the following:
\n
\n
Finding (and reporting!) bugs
\n
New feature suggestions
\n
Answering questions on issues
\n
Documentation improvements
\n
Reviewing pull requests
\n
Helping to manage issue priorities
\n
Fixing bugs/new features
\n
\n
If any of that sounds cool to you, feel free to dive in! Open an issue or submit a pull request.
\n
If you would like to help contribute to the project, please see the Contributing Guide
\n
This project exists thanks to all the people who contribute.
\n
\n
License
\n
This project is open source under the MIT license, which means you have full access to the source code and can modify it to fit your own needs. See LICENSE for more information.
Lightning wallet focused on user experience and ease of use ⚡️
\n
\n
\n\n
\n
Zap is a free Lightning Network wallet focused on user experience and ease of use, with the overall goal of helping the cryptocurrency community scale Bitcoin.
Once executible you can run either double click the file or run via the cli:
\n
./file.AppImage
\n
Documentation
\n
If you would like to install from source, run a full bitcoin node, connect to a custom lnd instance or get involved with development please refer to our documentation:
If you are having problems with Zap, please report the issue in GitHub or on slack with screenshots and/or how to reproduce the bug/error.
\n
A good product not only has good software tests but also checks the quality of the UX/UI. Putting ourselves in the shoes of a user is a very important design principle of Zap.
Hey! Do you like Zap? Awesome! We could actually really use your help!
\n
Open source isn't just writing code. Zap could use your help with any of the following:
\n
\n
Finding (and reporting!) bugs
\n
New feature suggestions
\n
Answering questions on issues
\n
Documentation improvements
\n
Reviewing pull requests
\n
Helping to manage issue priorities
\n
Fixing bugs/new features
\n
\n
If any of that sounds cool to you, feel free to dive in! Open an issue or submit a pull request.
\n
If you would like to help contribute to the project, please see the Contributing Guide
\n
This project exists thanks to all the people who contribute.
\n
\n
License
\n
This project is open source under the MIT license, which means you have full access to the source code and can modify it to fit your own needs. See LICENSE for more information.
To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
If you are running Windows, you will need Visual Studio 2015 (Community) installed for the NodeRT to be compiled successfully. The provided link requires you to create an Account (This is Microsoft official website) to be able to download the older version of Visual Studio which is really annoying.
\n
# Clone this repository\ngit clone https://github.com/ytmdesktop/ytmdesktop\n# Go into the repository\ncd ytmdesktop\n# Install dependencies\nnpm install\n# Run the app\nnpm start
\n
Note: If you're using Linux Bash for Windows, see this guide or use node from the command prompt.
\n
Contributors
\n
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\n
",
"readmeOriginal": "
\n\n\n\n
\n
YouTube Music Desktop App
\n
\n \n
Available for
\n
\n
Windows
\n
\n
Winget: winget install \"YouTube Music Desktop App\" or winget install Ytmdesktop.Ytmdesktop
To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:
\n
If you are running Windows, you will need Visual Studio 2015 (Community) installed for the NodeRT to be compiled successfully. The provided link requires you to create an Account (This is Microsoft official website) to be able to download the older version of Visual Studio which is really annoying.
\n
# Clone this repository\ngit clone https://github.com/ytmdesktop/ytmdesktop\n# Go into the repository\ncd ytmdesktop\n# Install dependencies\nnpm install\n# Run the app\nnpm start
\n
Note: If you're using Linux Bash for Windows, see this guide or use node from the command prompt.
With Zettlr, writing professional texts is easy and motivating: Whether you are a college student, a researcher, a journalist, or an author — Zettlr has the right tools for you. Watch the video or continue reading to see what they are!
To install Zettlr, just download the latest release for your operating system! Currently supported are macOS, Windows, and most Linux distributions (via Debian- and Fedora-packages as well as AppImages).
Zettlr is an Electron-based app, so to start developing, you'll need to have:
\n\n
A NodeJS-stack installed on your computer. Make sure it's at least Node 14 (lts/fermium). To test what version you have, run node -v.
\n
Yarn installed. Yarn is the required package manager for the project, as we do not commit package-lock.json-files and many commands require yarn. You can install this globally using npm install -g yarn or Homebrew, if you are on macOS.
\n\n
Then, simply clone the repository and install the dependencies on your local computer:
\n
$ git clone https://github.com/Zettlr/Zettlr.git\n$ cd Zettlr\n$ yarn install --frozen-lockfile
\n
The --frozen-lockfile flag ensures that yarn will stick to the versions as listed in the yarn.lock and not attempt to update them.
\n
During development, hot module reloading is active so that you can edit the renderer's code easily and hit F5 after the changes have been compiled by electron-forge. You can keep the developer tools open to see when HMR has finished loading your changes.
\n
What Should I Know To Contribute Code?
\n
In order to provide code, you should have basic familiarity with the following topics and/or manuals (ordered by importance descending):
Note: See the \"Directory Structure\" section below to get an idea of how Zettlr specifically works.
\n
\n
Development Commands
\n
This section lists all available commands that you can use during application development. These are defined within the package.json and can be run from the command line by prefixing them with yarn. Run them from within the base directory of the repository.
\n
start
\n
Starts electron-forge, which will build the application and launch it in development mode. This will use the normal settings, so if you use Zettlr on the same computer in production, it will use the same configuration files as the regular application. This means: be careful when breaking things. In that case, it's better to use test-gui.
\n
package
\n
Packages the application, but not bundle it into an installer. Without any suffix, this command will package the application for your current platform and architecture. To create specific packages (may require running on the corresponding platform), the following suffixes are available:
\n
\n
package:mac-x64 (Intel-based Macs)
\n
package:mac-arm (Apple Silicon-based Macs)
\n
package:win-x64 (Intel-based Windows)
\n
package:win-arm (ARM-based Windows)
\n
package:linux-x64 (Intel-based Linux)
\n
package:linux-arm (ARM-based Linux)
\n
\n
The resulting application packages are stored in ./out.
\n
\n
This command will skip typechecking to speed up builds, so be extra cautious.
\n
\n
release:{platform-arch}
\n
Packages the application and then bundles it into an installer for the corresponding platform and architecture. To create such a bundle (may require running on the corresponding platform), one of the following values for {platform-arch} is required:
\n
\n
release:mac-x64 (Intel-based Macs)
\n
release:mac-arm (Apple Silicon-based Macs)
\n
release:win-x64 (Intel-based Windows)
\n
release:win-arm (ARM-based Windows)
\n
release:linux-x64 (Intel-based Linux)
\n
release:linux-arm (ARM-based Linux)
\n
\n
The resulting setup bundles are stored in ./release.
\n
\n
Please note that, while you can package directly for your platform without any suffix, for creating a release specifying the platform is required as electron-builder would otherwise include the development-dependencies in the app.asar, resulting in a bloated application.
\n
\n
lang:refresh
\n
This downloads the four default translations of the application from Zettlr Translate, with which it is shipped by default. It places the files in the static/lang-directory. Currently, the default languages are: German (Germany), English (USA), English (UK), and French (France).
\n
\n
Please note, that this command is intended for an automated workflow that runs from time to time on the repository to perform this action. This means: Do not commit updated files to the repository. Instead, the updated files will be downloaded whenever you git fetch.
\n
\n
csl:refresh
\n
This downloads the Citation Style Language (CSL) files with which the application is shipped, and places them in the static/csl-locales- and static/csl-styles-directories respectively.
\n
\n
Please note, that this command is intended for an automated workflow that runs from time to time on the repository to perform this action. This means: Do not commit updated files to the repository. Instead, the updated files will be downloaded whenever you git fetch.
\n
\n
lint
\n
This simply runs ESLint. Apps such as Atom or Visual Studio Code will automatically run ESLint in the background, but if you want to be extra-safe, make sure to run this command prior to submitting a Pull Request.
\n
\n
This command will run automatically on each Pull Request to check your code for inconsistencies.
\n
\n
reveal:build
\n
This re-compiles the source-files needed by the exporter for building reveal.js-presentations. Due to the nature of how Pandoc creates such presentations, Zettlr needs to modify the output by Pandoc, which is why these files need to be pre-compiled.
\n
\n
Please note, that this command is intended for an automated workflow that runs from time to time on the repository to perform this action. This means: Do not commit updated files to the repository. Instead, the updated files will be downloaded whenever you git fetch.
\n
\n
test
\n
This runs the unit tests in the directory ./test. Make sure to run this command prior to submitting a Pull Request, as this will be run every time you commit to the PR, and this way you can make sure that your changes don't break any tests, making the whole PR-process easier.
\n
test-gui
\n
Use this command to carefree test any changes you make to the application. This command will start the application as if you ran yarn start, but will provide a custom configuration and a custom directory.
\n
\n
This command will skip typechecking to speed up builds, so be extra cautious.
\n
\n
The first time you start this command, pass the --clean-flag to copy a bunch of test-files to your ./resources-directory, create a test-config.yml in your project root, and start the application with this clean configuration. Then, you can adapt the test-config.yml to your liking (so that certain settings which you would otherwise always set will be pre-set without you having to open the preferences).
\n
Whenever you want to reset the test directory to its initial state (or you removed the directory, or cloned the whole project anew), pass the flag --clean to the command in order to create or reset the directory. This is also necessary if you changed something in test-config.yml.
\n
You can pass additional command-line switches such as --clear-cache to this command as well. They will be passed to the child process.
\n
\n
Attention: Before first running the command, you must run it with the --clean-flag to create the directory in the first place!
Zettlr is a mature app that has amassed hundreds of directories over the course of its development. Since it is hard to contribute to an application without any guidance, we have compiled a short description of the directories with how they interrelate.
\n
.\n├── resources # Contains resource files\n│ ├── NSIS # Images for the Windows installer\n│ ├── icons # Icons used to build the application\n│ ├── screenshots # The screenshots used in this README file\n├── scripts # Scripts that are run by the CI and some YARN commands\n│ ├── assets # Asset files used by some scripts\n│ └── test-gui # Test files used by `yarn test-gui`\n├── source # Contains the actual source code for the app\n│ ├── app # Contains service providers and the boot/shutdown routines\n│ ├── common # Common files used by several or all renderer processes\n│ │ ├── fonts # Contains the font files (note: location will likely change)\n│ │ ├── img # Currently unused image files\n│ │ ├── less # Contains the themes (note: location will likely change)\n│ │ ├── modules # Contains renderer modules\n│ │ │ ├── markdown-editor # The central CodeMirror markdown editor\n│ │ │ ├── preload # Electron preload files\n│ │ │ └── window-register # Run by every renderer during setup\n│ │ ├── util # A collection of utility functions\n│ │ └── vue # Contains Vue components used by the graphical interface\n│ ├── main # Contains code for the main process\n│ │ ├── assets # Static files (note: location will likely change)\n│ │ ├── commands # Commands that perform user-actions, run from within zettlr.ts\n│ │ └── modules # Main process modules\n│ │ ├── document-manager # The document manager handles all open files\n│ │ ├── export # The exporter converts Markdown files into other formats\n│ │ ├── fsal # The File System Abstraction Layer provides the file tree\n│ │ ├── import # The importer converts other formats into Markdown files\n│ │ └── window-manager # The window manager manages all application windows\n│ ├── win-about # Code for the About window\n│ ├── win-custom-css # Code for the Custom CSS window\n│ ├── win-defaults # Code for the defaults file editor\n│ ├── win-error # The error modal window\n│ ├── win-log-viewer # Displays the running logs from the app\n│ ├── win-main # The main window\n│ ├── win-paste-image # The modal displayed when pasting an image\n│ ├── win-preferences # The preferences window\n│ ├── win-print # Code for the print and preview window\n│ ├── win-quicklook # Code for the Quicklook windows\n│ ├── win-stats # Code for the general statistics window\n│ ├── win-tag-manager # Code for the tag manager\n│ └── win-update # The dedicated update window\n├── static # Contains static files, cf. the README-file in there\n└── test # Unit tests\n
\n
On the Distinction between Modules and Service Providers
\n
You'll notice that Zettlr contains both \"modules\" and \"service providers\". The difference between the two is simple: Service providers run in the main process and are completely autonomous while providing functionality to the app as a whole. Modules, on the other hand, provide functionality that must be triggered by user actions (e.g. the exporter and the importer).
\n
The Application Lifecycle
\n
Whenever you run Zettlr, the following steps will be executed:
Boot service providers (source/app/lifecycle.ts::bootApplication)
\n
Boot main application (source/main/zettlr.ts)
\n
Load the file tree and the documents
\n
Show the main window
\n\n
And when you shut down the app, the following steps will run:
\n\n
Close all windows except the main window
\n
Attempt to close the main window
\n
Shutdown the main application (source/main/zettlr.ts::shutdown)
\n
Shutdown the service providers (source/app/lifecycle.ts::shutdownApplication)
\n
Exit the application
\n\n
During development of the app (yarn start and yarn test-gui), the following steps will run:
\n\n
Electron forge will compile the code for the main process and each renderer process separately (since these are separate processes), using TypeScript and webpack to compile and transpile.
\n
Electron forge will put that code into the directory .webpack, replacing the constants you can find in the \"create\"-methods of the window manager with the appropriate entry points.
\n
Electron forge will start a few development servers to provide hot module reloading (HMR) and then actually start the application.
\n\n
Whenever the app is built, the following steps will run:
\n\n
Electron forge will perform steps 1 and 2 above, but instead of running the app, it will package the resulting code into a functional app package.
\n
Electron builder will then take these pre-built packages and wrap them in a platform-specific installer (DMG-files, Windows installer, or Linux packages).
\n\n
Electron forge will put the packaged applications into the directory ./out while Electron builder will put the installers into the directory ./release.
\n
Command-Line Switches
\n
The Zettlr binary features a few command line switches that you can make use of for different purposes.
\n
--launch-minimized
\n
This CLI flag will instruct Zettlr not to show the main window on start. This is useful to create autostart entries. In that case, launching Zettlr with this flag at system boot will make sure that you will only see its icon in the tray.
\n
Since this implies the need to have the app running in the tray bar or notification area when starting the app like this, it will automatically set the corresponding setting system.leaveAppRunning to true.
\n
\n
Note: This flag will not have any effect on Linux systems which do not support displaying an icon in a tray bar or notification area.
\n
\n
--clear-cache
\n
This will direct the File System Abstraction Layer to fully clear its cache on boot. This can be used to mitigate issues regarding changes in the code base. To ensure compatibility with any changes to the information stored in the cache, the cache is also automatically cleared when the version field in your config.json does not match the one in the package.json, which means that, as long as you do not explicitly set the version-field in your test-config.yml, the cache will always be cleared on each run when you type yarn test-gui.
\n
--data-dir=path
\n
Use this switch to specify custom data directory, which holds your configuration files. Without this switch data directory defaults to %AppData%/Zettlr (on Windows 10), ~/.config/Zettlr (on Linux), etc. The path can be absolute or relative. Basis for the relative path will be either the binary's directory (when running a packaged app) or the repository root directory (when running an app that is not packaged). If the path contains spaces, do not forget to escape it in quotes. ~ to denote home directory does not work. Due to the bug in Electron an empty Dictionaries subdirectory is created in the default data directory, but it does not impact functionality.
\n
--disable-hardware-acceleration
\n
This switch causes Zettlr to disable hardware acceleration, which could be necessary in certain setups. For more information on why this flag was added, see issue #2127.
\n
VSCode Extension Recommendations
\n
This repository makes use of Visual Studio Code's recommended extensions feature. This means: If you use VS Code and open the repository for the first time, VS Code will tell you that the repository recommends to install a handful of extensions. These extensions are recommended if you work with Zettlr and will make contributing much easier. The recommendations are specified in the file .vscode/extensions.json.
\n
Since installing extensions is sometimes a matter of taste, we have added short descriptions for each recommended extension within that file to explain why we recommend it. This way you can make your own decision whether or not you want to install any of these extensions (for example, the SVG extension is not necessary if you do not work with the SVG files provided in the repository).
\n
If you choose not to install all of the recommended extensions at once (which we recommend), VS Code will show you the recommendations in the extensions sidebar so you can first decide which of the ones you'd like to install and then manually install those you'd like to have.
\n
\n
Using the same extensions as the core developer team will make the code generally more consistent since you will have the same visual feedback.
The brand (including name, icons and everything Zettlr can be identified with) is excluded and all rights reserved. If you want to fork Zettlr to develop another app, feel free but please change name and icons. Read about the logo usage.
With Zettlr, writing professional texts is easy and motivating: Whether you are a college student, a researcher, a journalist, or an author — Zettlr has the right tools for you. Watch the video or continue reading to see what they are!
To install Zettlr, just download the latest release for your operating system! Currently supported are macOS, Windows, and most Linux distributions (via Debian- and Fedora-packages as well as AppImages).
Zettlr is an Electron-based app, so to start developing, you'll need to have:
\n\n
A NodeJS-stack installed on your computer. Make sure it's at least Node 14 (lts/fermium). To test what version you have, run node -v.
\n
Yarn installed. Yarn is the required package manager for the project, as we do not commit package-lock.json-files and many commands require yarn. You can install this globally using npm install -g yarn or Homebrew, if you are on macOS.
\n\n
Then, simply clone the repository and install the dependencies on your local computer:
\n
$ git clone https://github.com/Zettlr/Zettlr.git\n$ cd Zettlr\n$ yarn install --frozen-lockfile
\n
The --frozen-lockfile flag ensures that yarn will stick to the versions as listed in the yarn.lock and not attempt to update them.
\n
During development, hot module reloading is active so that you can edit the renderer's code easily and hit F5 after the changes have been compiled by electron-forge. You can keep the developer tools open to see when HMR has finished loading your changes.
\n
What Should I Know To Contribute Code?
\n
In order to provide code, you should have basic familiarity with the following topics and/or manuals (ordered by importance descending):
Note: See the \"Directory Structure\" section below to get an idea of how Zettlr specifically works.
\n
\n
Development Commands
\n
This section lists all available commands that you can use during application development. These are defined within the package.json and can be run from the command line by prefixing them with yarn. Run them from within the base directory of the repository.
\n
start
\n
Starts electron-forge, which will build the application and launch it in development mode. This will use the normal settings, so if you use Zettlr on the same computer in production, it will use the same configuration files as the regular application. This means: be careful when breaking things. In that case, it's better to use test-gui.
\n
package
\n
Packages the application, but not bundle it into an installer. Without any suffix, this command will package the application for your current platform and architecture. To create specific packages (may require running on the corresponding platform), the following suffixes are available:
\n
\n
package:mac-x64 (Intel-based Macs)
\n
package:mac-arm (Apple Silicon-based Macs)
\n
package:win-x64 (Intel-based Windows)
\n
package:win-arm (ARM-based Windows)
\n
package:linux-x64 (Intel-based Linux)
\n
package:linux-arm (ARM-based Linux)
\n
\n
The resulting application packages are stored in ./out.
\n
\n
This command will skip typechecking to speed up builds, so be extra cautious.
\n
\n
release:{platform-arch}
\n
Packages the application and then bundles it into an installer for the corresponding platform and architecture. To create such a bundle (may require running on the corresponding platform), one of the following values for {platform-arch} is required:
\n
\n
release:mac-x64 (Intel-based Macs)
\n
release:mac-arm (Apple Silicon-based Macs)
\n
release:win-x64 (Intel-based Windows)
\n
release:win-arm (ARM-based Windows)
\n
release:linux-x64 (Intel-based Linux)
\n
release:linux-arm (ARM-based Linux)
\n
\n
The resulting setup bundles are stored in ./release.
\n
\n
Please note that, while you can package directly for your platform without any suffix, for creating a release specifying the platform is required as electron-builder would otherwise include the development-dependencies in the app.asar, resulting in a bloated application.
\n
\n
lang:refresh
\n
This downloads the four default translations of the application from Zettlr Translate, with which it is shipped by default. It places the files in the static/lang-directory. Currently, the default languages are: German (Germany), English (USA), English (UK), and French (France).
\n
\n
Please note, that this command is intended for an automated workflow that runs from time to time on the repository to perform this action. This means: Do not commit updated files to the repository. Instead, the updated files will be downloaded whenever you git fetch.
\n
\n
csl:refresh
\n
This downloads the Citation Style Language (CSL) files with which the application is shipped, and places them in the static/csl-locales- and static/csl-styles-directories respectively.
\n
\n
Please note, that this command is intended for an automated workflow that runs from time to time on the repository to perform this action. This means: Do not commit updated files to the repository. Instead, the updated files will be downloaded whenever you git fetch.
\n
\n
lint
\n
This simply runs ESLint. Apps such as Atom or Visual Studio Code will automatically run ESLint in the background, but if you want to be extra-safe, make sure to run this command prior to submitting a Pull Request.
\n
\n
This command will run automatically on each Pull Request to check your code for inconsistencies.
\n
\n
reveal:build
\n
This re-compiles the source-files needed by the exporter for building reveal.js-presentations. Due to the nature of how Pandoc creates such presentations, Zettlr needs to modify the output by Pandoc, which is why these files need to be pre-compiled.
\n
\n
Please note, that this command is intended for an automated workflow that runs from time to time on the repository to perform this action. This means: Do not commit updated files to the repository. Instead, the updated files will be downloaded whenever you git fetch.
\n
\n
test
\n
This runs the unit tests in the directory ./test. Make sure to run this command prior to submitting a Pull Request, as this will be run every time you commit to the PR, and this way you can make sure that your changes don't break any tests, making the whole PR-process easier.
\n
test-gui
\n
Use this command to carefree test any changes you make to the application. This command will start the application as if you ran yarn start, but will provide a custom configuration and a custom directory.
\n
\n
This command will skip typechecking to speed up builds, so be extra cautious.
\n
\n
The first time you start this command, pass the --clean-flag to copy a bunch of test-files to your ./resources-directory, create a test-config.yml in your project root, and start the application with this clean configuration. Then, you can adapt the test-config.yml to your liking (so that certain settings which you would otherwise always set will be pre-set without you having to open the preferences).
\n
Whenever you want to reset the test directory to its initial state (or you removed the directory, or cloned the whole project anew), pass the flag --clean to the command in order to create or reset the directory. This is also necessary if you changed something in test-config.yml.
\n
You can pass additional command-line switches such as --clear-cache to this command as well. They will be passed to the child process.
\n
\n
Attention: Before first running the command, you must run it with the --clean-flag to create the directory in the first place!
Zettlr is a mature app that has amassed hundreds of directories over the course of its development. Since it is hard to contribute to an application without any guidance, we have compiled a short description of the directories with how they interrelate.
\n
.\n├── resources # Contains resource files\n│ ├── NSIS # Images for the Windows installer\n│ ├── icons # Icons used to build the application\n│ ├── screenshots # The screenshots used in this README file\n├── scripts # Scripts that are run by the CI and some YARN commands\n│ ├── assets # Asset files used by some scripts\n│ └── test-gui # Test files used by `yarn test-gui`\n├── source # Contains the actual source code for the app\n│ ├── app # Contains service providers and the boot/shutdown routines\n│ ├── common # Common files used by several or all renderer processes\n│ │ ├── fonts # Contains the font files (note: location will likely change)\n│ │ ├── img # Currently unused image files\n│ │ ├── less # Contains the themes (note: location will likely change)\n│ │ ├── modules # Contains renderer modules\n│ │ │ ├── markdown-editor # The central CodeMirror markdown editor\n│ │ │ ├── preload # Electron preload files\n│ │ │ └── window-register # Run by every renderer during setup\n│ │ ├── util # A collection of utility functions\n│ │ └── vue # Contains Vue components used by the graphical interface\n│ ├── main # Contains code for the main process\n│ │ ├── assets # Static files (note: location will likely change)\n│ │ ├── commands # Commands that perform user-actions, run from within zettlr.ts\n│ │ └── modules # Main process modules\n│ │ ├── document-manager # The document manager handles all open files\n│ │ ├── export # The exporter converts Markdown files into other formats\n│ │ ├── fsal # The File System Abstraction Layer provides the file tree\n│ │ ├── import # The importer converts other formats into Markdown files\n│ │ └── window-manager # The window manager manages all application windows\n│ ├── win-about # Code for the About window\n│ ├── win-custom-css # Code for the Custom CSS window\n│ ├── win-defaults # Code for the defaults file editor\n│ ├── win-error # The error modal window\n│ ├── win-log-viewer # Displays the running logs from the app\n│ ├── win-main # The main window\n│ ├── win-paste-image # The modal displayed when pasting an image\n│ ├── win-preferences # The preferences window\n│ ├── win-print # Code for the print and preview window\n│ ├── win-quicklook # Code for the Quicklook windows\n│ ├── win-stats # Code for the general statistics window\n│ ├── win-tag-manager # Code for the tag manager\n│ └── win-update # The dedicated update window\n├── static # Contains static files, cf. the README-file in there\n└── test # Unit tests\n
\n
On the Distinction between Modules and Service Providers
\n
You'll notice that Zettlr contains both \"modules\" and \"service providers\". The difference between the two is simple: Service providers run in the main process and are completely autonomous while providing functionality to the app as a whole. Modules, on the other hand, provide functionality that must be triggered by user actions (e.g. the exporter and the importer).
\n
The Application Lifecycle
\n
Whenever you run Zettlr, the following steps will be executed:
Boot service providers (source/app/lifecycle.ts::bootApplication)
\n
Boot main application (source/main/zettlr.ts)
\n
Load the file tree and the documents
\n
Show the main window
\n\n
And when you shut down the app, the following steps will run:
\n\n
Close all windows except the main window
\n
Attempt to close the main window
\n
Shutdown the main application (source/main/zettlr.ts::shutdown)
\n
Shutdown the service providers (source/app/lifecycle.ts::shutdownApplication)
\n
Exit the application
\n\n
During development of the app (yarn start and yarn test-gui), the following steps will run:
\n\n
Electron forge will compile the code for the main process and each renderer process separately (since these are separate processes), using TypeScript and webpack to compile and transpile.
\n
Electron forge will put that code into the directory .webpack, replacing the constants you can find in the \"create\"-methods of the window manager with the appropriate entry points.
\n
Electron forge will start a few development servers to provide hot module reloading (HMR) and then actually start the application.
\n\n
Whenever the app is built, the following steps will run:
\n\n
Electron forge will perform steps 1 and 2 above, but instead of running the app, it will package the resulting code into a functional app package.
\n
Electron builder will then take these pre-built packages and wrap them in a platform-specific installer (DMG-files, Windows installer, or Linux packages).
\n\n
Electron forge will put the packaged applications into the directory ./out while Electron builder will put the installers into the directory ./release.
\n
Command-Line Switches
\n
The Zettlr binary features a few command line switches that you can make use of for different purposes.
\n
--launch-minimized
\n
This CLI flag will instruct Zettlr not to show the main window on start. This is useful to create autostart entries. In that case, launching Zettlr with this flag at system boot will make sure that you will only see its icon in the tray.
\n
Since this implies the need to have the app running in the tray bar or notification area when starting the app like this, it will automatically set the corresponding setting system.leaveAppRunning to true.
\n
\n
Note: This flag will not have any effect on Linux systems which do not support displaying an icon in a tray bar or notification area.
\n
\n
--clear-cache
\n
This will direct the File System Abstraction Layer to fully clear its cache on boot. This can be used to mitigate issues regarding changes in the code base. To ensure compatibility with any changes to the information stored in the cache, the cache is also automatically cleared when the version field in your config.json does not match the one in the package.json, which means that, as long as you do not explicitly set the version-field in your test-config.yml, the cache will always be cleared on each run when you type yarn test-gui.
\n
--data-dir=path
\n
Use this switch to specify custom data directory, which holds your configuration files. Without this switch data directory defaults to %AppData%/Zettlr (on Windows 10), ~/.config/Zettlr (on Linux), etc. The path can be absolute or relative. Basis for the relative path will be either the binary's directory (when running a packaged app) or the repository root directory (when running an app that is not packaged). If the path contains spaces, do not forget to escape it in quotes. ~ to denote home directory does not work. Due to the bug in Electron an empty Dictionaries subdirectory is created in the default data directory, but it does not impact functionality.
\n
--disable-hardware-acceleration
\n
This switch causes Zettlr to disable hardware acceleration, which could be necessary in certain setups. For more information on why this flag was added, see issue #2127.
\n
VSCode Extension Recommendations
\n
This repository makes use of Visual Studio Code's recommended extensions feature. This means: If you use VS Code and open the repository for the first time, VS Code will tell you that the repository recommends to install a handful of extensions. These extensions are recommended if you work with Zettlr and will make contributing much easier. The recommendations are specified in the file .vscode/extensions.json.
\n
Since installing extensions is sometimes a matter of taste, we have added short descriptions for each recommended extension within that file to explain why we recommend it. This way you can make your own decision whether or not you want to install any of these extensions (for example, the SVG extension is not necessary if you do not work with the SVG files provided in the repository).
\n
If you choose not to install all of the recommended extensions at once (which we recommend), VS Code will show you the recommendations in the extensions sidebar so you can first decide which of the ones you'd like to install and then manually install those you'd like to have.
\n
\n
Using the same extensions as the core developer team will make the code generally more consistent since you will have the same visual feedback.
The brand (including name, icons and everything Zettlr can be identified with) is excluded and all rights reserved. If you want to fork Zettlr to develop another app, feel free but please change name and icons. Read about the logo usage.
This desktop client shares most of its code with the Zulip webapp.\nIssues in an individual organization's Zulip window should be reported\nin the Zulip server and webapp\nproject. Other\nissues in the desktop app and its settings should be reported in this\nproject.
This desktop client shares most of its code with the Zulip webapp.\nIssues in an individual organization's Zulip window should be reported\nin the Zulip server and webapp\nproject. Other\nissues in the desktop app and its settings should be reported in this\nproject.