Tidder (reddit backwards) is an open-source Reddit client built entirely with web technologies, the project is currently under beta development phase and it's available for download for Windows, macOS and Linux.
If you're interesed, you can also check out the entire design process for this project on this GitLab repo, there you can find the Sketch project file, icons, fonts and everything that was used during the design process of this project.
Much of this project is based on an earlier project that I ended up abandoning in favor of the Tidder app, if you're curious about the evolution of the Tidder project, you can also take a look at the design project and the actual (kind of) working code of this earlier concept of the project on my GitLab account.
- Node.js 6.x or later
- npm 3.10.x or later
- yarn (optional)
To run the development version of the application localy you can simply run the following command in a terminal:
npm run dev
This will actually start a local development server on port 3000
by default,
you can change that by simply editing the PORT
environment variable located
in the config/dev.env.js
file. This development server is necessary so that
the application's assets are re-compiled and re-sent to the running application
whenever any change is made to app's code. This is called
Hot Module Replacement,
any changes made to the application's code should reflect in the running app
window, but in some cases this may cause Angular 2 change detection to break
for some reason.
You can generate the application binaries for your specific platform simply by running:
npm run build:pack
Once finished, you can find the application binary file unde the release
directory
Depending on your system, there are a few packages that you need to install first before you can actually build the application's binaries for other platforms.
All required system dependencies (except rpm) will be downloaded automatically on demand on macOS 10.12+ (macOS Sierra). You can install the rpm package with the Homebrew package manager by running the following in a terminal:
brew install rpm
With that taken care of, you can build the app's binaries for all platforms by running a single command in the terminal:
npm run build:pack:multi
Once the process is finished, you can find the application's binaries under
the release
directory.
You can use Docker to avoid installing system dependencies.
To build the application in distributable format on Linux, you'll need the
icnsutils
package:
sudo apt-get install --no-install-recommends -y icnsutils
You'll also need to install the rpm package:
sudo apt-get install --no-install-recommends -y rpm
Replace apt-get
with your distribution's package manager.
After that you can run:
npm run build:pack:multi
Docker is recommended to avoid installing system dependencies, but if you choose not to use Docker, you'll need to install Wine 2.0+ – see WineHQ Binary Packages.
Having the required packages installed, you can simply run the following command in a command line:
npm run build:pack:multi
Tidder is distributed under the GNU GPL license 2.0 http://www.gnu.org/licenses/gpl-2.0.html