Skip to content

Commit

Permalink
readme update
Browse files Browse the repository at this point in the history
  • Loading branch information
roymasad committed May 6, 2024
1 parent 1d8a026 commit 361bc9e
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 19 deletions.
28 changes: 13 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Peanut Stash 🥜 1.1.0
# Peanut Stash 🥜 1.1.1

<div align="center" width="100%">

Expand All @@ -10,7 +10,7 @@

<img width="125px" height="30px" src="https://img.shields.io/badge/LICENSE-MIT-3D1?style=for-the-badge">
<img width="125px" height="30px" src="https://img.shields.io/badge/DISCORD-LIVE-69c?style=for-the-badge">
<img width="125px" height="30px" src="https://img.shields.io/badge/NPM-1.1.0-6FA?style=for-the-badge">
<img width="125px" height="30px" src="https://img.shields.io/badge/NPM-1.1.1-6FA?style=for-the-badge">

</div>

Expand Down Expand Up @@ -106,7 +106,7 @@ pnut
* Requires an account with email verification
* Ready out of the box to try out
* Access your stash of terminal commands anywhere you login
* Stash, pop, execute, categorise, clipboard copy, ask ai, edit, share commands quickly with colleagues
* Stash, pop, execute, categorize, clipboard copy, ask ai, edit, share commands quickly with colleagues
* Run quick alias shortcuts from the terminal that map to full length commands/templates with optional variables
* Open links in browser from terminal console
* Attach notes to stashed peanut texts to remind you what the commands do and add context
Expand All @@ -118,8 +118,8 @@ pnut
* Works on firebase free spark plan or blaze, you just need realtime DB and Auth with email enabled
* RSA used to secure encryption of peanut texts
* Symmetrical encryption for login credentials based on machine signatures
* Color codded interactive prompts
* Firebase realtime db security rules for autherization and access control of data
* Color coded interactive prompts
* Firebase realtime db security rules for authorization and access control of data
* Integration with Gemini V1 API (Free/paid keys required) to help create, find & explain command lines using natural language
* Export single commands or entire collections to unlisted pastebin URLs (key required)

Expand All @@ -133,18 +133,18 @@ In case of issues, such as using wrong custom server config, you can remove thos
Currently the app when installed runs by default on a public testing server, so no need to set one up initially to check it.

That said, use your own firebase server if/when you are working on serious production and sharing important text items. (private dedicated server siloed for your own team/group)
It is very easy to do so, you just need to create a new firebase project (spark or blaze) and enable authentiction with emails and realtime database only. Other featurs of firebase are not used.
It is very easy to do so, you just need to create a new firebase project (spark or blaze) and enable authentication with emails and realtime database only. Other featurs of firebase are not used.
The current security rules for the realtime database are in the repo, apply them to the db.

Afterwhich, each user of the group needs to use once the web app project Ids and load them into peanuts cli with the approripate server argument (sv). (you only need 4 of the keys, check default-public-server.env for the ones required)
After which, each user of the group needs to use once the web app project Ids and load them into peanuts cli with the appropriate server argument (sv). (you only need 4 of the keys, check default-public-server.env for the ones required)

The provided default testing server with peanut stash works out of the box and is only for quick testing convience as it is multi tenant with others testing. It is also hosted on a free Firebase Spark plan that has quota limitations and is not guarantted to be always secure, maintained or upgraded. Neither myself nor the project will be liable to any breaches/problems in the future for your data on a testing proof of concept server. Testing server as security rules and encryption but is not production server.
By continuing to use the default test server you agree to those terms and take personal responsiblity. The testing database is under development, things might get deleted/refactored and data privacy cannot be provided always. Again, don't share any private/sensitive content on it or use it for serious work, instead use your own firebase server as it takes just 5 mins to set up.
The provided default testing server with peanut stash works out of the box and is only for quick testing convenience as it is multi tenant with others testing. It is also hosted on a free Firebase Spark plan that has quota limitations and is not guaranteed to be always secure, maintained or upgraded. Neither myself nor the project will be liable to any breaches/problems in the future for your data on a testing proof of concept server. Testing server as security rules and encryption but is not production server.
By continuing to use the default test server you agree to those terms and take personal responsibility. The testing database is under development, things might get deleted/refactored and data privacy cannot be provided always. Again, don't share any private/sensitive content on it or use it for serious work, instead use your own firebase server as it takes just 5 mins to set up.

If you are interested in contributing additional features, ideas, enhacements or fixing issues pertaining to the project, you are welcome to fork this repo or create pull requests directly.
If you are interested in contributing additional features, ideas, enhancements or fixing issues pertaining to the project, you are welcome to fork this repo or create pull requests directly.
Certain intentionally missing features like not using custom access tokens to login will require additional server api deployment/budget/server/architecture and therefore are only fit for forks/clone repos for teams who need this functionality and have already the paid servers to deploy on. The testing server will not be upgraded to a paid plan to support this or any other features that require payments or additional servers/deployments. Also on the public test server in order to to mitigate abuse, the google cloud identity tool kit's API "Queries per minute per user" quota is reduced from 30000 to 1024. Everything else is turned off or throttled down with quotas substantially. Additionally the firebase Spark plan provides a limited combined 1GB DB capacity.

In this spirit, the app design is that of a purely client logic/architecture on the main branch which can access the realtime firebase database directly from the node app securely without going through API server endpoints or any paid features. (and the pros and cons that comes with this approach). Firebase admin sdk cannot be used in such a project since we aren't using server modules and for security reasons we can't use the admin sdk in an unsecure public client environment.
In this spirit, the app design is that of a purely client logic/architecture on the main branch which can access the realtime firebase database directly from the node app securely without going through API server endpoints or any paid features. (and the pros and cons that comes with this approach). Firebase admin sdk cannot be used in such a project since we aren't using server modules and for security reasons we can't use the admin sdk in an insecure public client environment.


### Roadmap for versions 1.1.0+:
Expand All @@ -155,10 +155,8 @@ In this spirit, the app design is that of a purely client logic/architecture on
* Add bulk stash import (from files or pastebin urls)
* Support interface for different serverless providers like supabase (will require provider class)
* Support interface for rest api endpoints (will require provider class)
* Complementary chrome brower extension pluging side project (different repo/project probably)
* Complementary chrome browser extension pluging side project (different repo/project probably)
* Add support for group team sharing
* Publish package also on homebrew and/or nuget ?


* Publish package also on brew and/or nuget ?


2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "peanut-stash",
"version": "1.1.0",
"version": "1.1.1",
"type": "module",
"description": "Collaborative command line cloud Stash, Share, Copy & Paste tool.",
"main": "pnut.js",
Expand Down
4 changes: 2 additions & 2 deletions peanuts/utilities.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ import {

// Show console help arguments
export function showArgs() {
console.log(`\n${color.cyan('Peanut Stash 🥜 1.1.0')} - Collaborative command line cloud Stash, Share, Copy & Paste tool.\n`);
console.log(`\n${color.cyan('Peanut Stash 🥜 1.1.1')} - Collaborative command line cloud Stash, Share, Copy & Paste tool.\n`);
console.log("Quickly stash, pop, run, send & receive console commands and text with your coding, IT, devops teams.\n")
console.log(`${color.yellow("Arguments Usage:\n")}`);

Expand Down Expand Up @@ -169,7 +169,7 @@ export function stateMachine(db, auth, user, action, args) {

case "about":
case "a":
console.log(figlet.textSync("Peanut Stash 1.1.0 ", { horizontalLayout: "full" }));
console.log(figlet.textSync("Peanut Stash 1.1.1 ", { horizontalLayout: "full" }));
console.log(`Quickly stash, pop, run, send & receive console commands and text with your team.\nHelpful tiny tool for coders, IT and devops who work frequently within the terminal.\n\nUnlike pastebin and its 3rd party tools/ecosystem, this tool and project is more focused on quick efficient terminal commands stashing/sharing and not on code sharing.\n${color.cyan("https://github.com/roymasad/peanut-stash")}`);
process.exit(0);
break;
Expand Down
2 changes: 1 addition & 1 deletion pnut.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

/****
*
* Peanut Stash 1.1.0
* Peanut Stash 1.1.1
*
* By Roy Massaad
*
Expand Down

0 comments on commit 361bc9e

Please sign in to comment.