All Projects → emmanueltouzery → projectpad2

emmanueltouzery / projectpad2

Licence: MIT License
Projectpad allows to manage secret credentials and server information that you need to handle as a software developer or sysadmin.

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to projectpad2

Swiff
💁 Command line tools for common local ↔ remote server tasks.
Stars: ✭ 87 (+40.32%)
Mutual labels:  ssh, developer-tools
Monocorpus
A notepad for software and machine learning
Stars: ✭ 234 (+277.42%)
Mutual labels:  developer-tools, note-taking
sbbs
Mirror of gitlab.synchro.net/sbbs (don't submit pull requests here)
Stars: ✭ 25 (-59.68%)
Mutual labels:  ssh
gost
GO Simple Tunnel - a simple tunnel written in golang
Stars: ✭ 154 (+148.39%)
Mutual labels:  ssh
wsl-agent-bridge
WSL compatibility bridge for ssh-agent on Windows
Stars: ✭ 17 (-72.58%)
Mutual labels:  ssh
stack-attack
A WIP CLI tool that manages stacked pull requests. Using stacked PRs is now (many small) pieces of cake
Stars: ✭ 39 (-37.1%)
Mutual labels:  developer-tools
noted
Markdown note-taking with syntax highlighting and real-time preview.
Stars: ✭ 22 (-64.52%)
Mutual labels:  note-taking
KeyManager
Android application to manage SSH and GPG keys on GitHub written in Kotlin.
Stars: ✭ 15 (-75.81%)
Mutual labels:  ssh
sshtools
Java SSH tools - easier SSH & SFTP in Java
Stars: ✭ 15 (-75.81%)
Mutual labels:  ssh
Shipr-Community-Android
Shipr Social is the Multi Platform Chat Project for Developers
Stars: ✭ 21 (-66.13%)
Mutual labels:  developer-tools
ssh-mpv
List/play videos over ssh using mpv.
Stars: ✭ 20 (-67.74%)
Mutual labels:  ssh
git-privacy
Redact Git author and committer dates to keep committing behaviour more private.
Stars: ✭ 13 (-79.03%)
Mutual labels:  developer-tools
rhack
Temporary edit external crates that your project depends on
Stars: ✭ 104 (+67.74%)
Mutual labels:  developer-tools
zettelstore
This is a mirror of https://zettelstore.de
Stars: ✭ 16 (-74.19%)
Mutual labels:  note-taking
jsch
fork of the popular jsch library
Stars: ✭ 127 (+104.84%)
Mutual labels:  ssh
aws-ssm-ec2-proxy-command
AWS SSM EC2 SSH Proxy Command
Stars: ✭ 115 (+85.48%)
Mutual labels:  ssh
pi-encrypted-boot-ssh
🔑 Raspberry Pi Encrypted Boot with Remote SSH
Stars: ✭ 96 (+54.84%)
Mutual labels:  ssh
async-ssh2-lite
docs.rs/async-ssh2-lite
Stars: ✭ 35 (-43.55%)
Mutual labels:  ssh
audion
Audion is a Chrome extension that adds a Web Audio panel to Developer Tools. This panel visualizes the web audio graph in real-time.
Stars: ✭ 276 (+345.16%)
Mutual labels:  developer-tools
localizer
⛵ A no-frills local development tool for service developers working in Kubernetes
Stars: ✭ 106 (+70.97%)
Mutual labels:  developer-tools

Projectpad

Download on Flathub

Projectpad allows to manage secret credentials and server information that you need to handle as a software developer or system administrator. List of servers, list of point of interests on those servers (applications, log files, databases, servers). It will securely store passwords and keys. It will also allow you to run commands (locally or on SSH servers), open terminals on remote SSH servers, and so on. The data is securely stored on-disk using SQLcipher, which uses 256-bit AES. The database is password-protected, but you can store the password in your OS keyring. Since the database is encrypted, you can put it in your dropbox (or similar account), to share it between computers.

Projectpad's target audience are people who today have to use several tools to do their work effectively: a keepass-like application, a series of text files with notes, and a few shell scripts. Instead of that, projectpad offers a streamlined, integrated solution.

Projectpad consists of two applications:

  1. the GUI projectpad application, which allows you to enter/edit data, search it, open websites and so on;
  2. the command-line ppcli application, which allows you to run commands, connect to servers, open files of interest and so on.

See the help for more details about the structure of the data that you can manage in projectpad.

GUI application

The application allows you to manage your database of projects info. It is organized in three panes:

  • projects
  • project items (servers, project notes, project point of interests, server links)
  • project item contents (for servers that may be a number of sub-items)

At the top of the second pane we can see the project environments (development, staging, uat and prod).

Main view screenshot

Notes are especially interesting, you author them in markdown syntax. They can be tied to a server or a project.

notes screenshot

And full-text search is supported.

search screenshot

The application also supports gtk's dark mode:

dark theme screenshot

There was some effort made to make the GUI application as keyboard-friendly as possible.

Command-line application

The command-line application loads all commands, servers, and files of interest, and displays them in a flat list, that you filter by typing and navigate using arrow keys. The application can execute commands, log you on ssh servers, edit configuration files, tail log files or fetch them, and so on.

Here is the display of ppcli after startup, showing a list of possible actions (the action themselves are described in the last column):

CLI1

And in the next screenshot, the user typed 'sra fail' and therefore filtered the rows to display only only application servers (SRA) and matched 'fail' on the line, which matched the failover server. Normally you would type keywords (part of the project name, of the environment, of the item type), until the list is filtered to contain a few or a single element, at which you point you can just press enter to run the command.

CLI2

You can launch ppcli manually, or you can use its zsh integration: ppcli --print-shell-function zsh >> ~/.zshrc, and reload the shell. After doing that, and if ppcli is in the path, you can launch it using control+space, and any command you run through ppcli will be added to your CLI history.

Note that even though you can enter ssh passwords in projectpad, no effort is made to hand them to ssh when logging in through ppcli. The recommended way to login to ssh servers without password is through ssh keys, but regardless password management remains valuable.

Installation

The recommended way to install the applications is with flatpak for the projectpad GUI, and as a statically built linux binary for ppcli. You can download the ppcli static binary, that can auto-upgrade later, from the github downloads -the binary is one of the release assets-, and the flatpak from flathub.

It's possible to share the projectpad database between computers using Dropbox or similar services. The database is a single file, you can find its location in the preferences dialog of the GUI application. It's possible to use symbolic links to make the database location point anywhere (for instance to the Dropbox directory), but if you use flatpak, you must grant the application access to the folder where the DB is stored, through a command like flatpak override com.github.emmanueltouzery.projectpad --filesystem=~/Dropbox/projectpad/ --user.

Installation on OSX has not been attempted, it should work if you install the rust compiler toolchain, gtk+3, gtksourceview3 and adwaita-icon-theme on homebrew, and the sqlcipher library with development headers. You could then run cargo run --release --bin projectpad and cargo run --release --bin ppcli in a git checkout. The binaries will be in target/release and are relocatable.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].