[chore] remove chalk for coloring text & minor changes

Signed-off-by: alok8bb <alok8bb@gmail.com>
This commit is contained in:
alok8bb 2022-12-04 22:11:08 +05:30
parent e2d08e83ab
commit 08d60fd3e7
No known key found for this signature in database
6 changed files with 29 additions and 59 deletions

View File

@ -1,20 +1,27 @@
# Okiba
A simple paste bin written in nodejs with postgresql.
A simple and minimal pastebin written in Node.JS.
## Usage
Before starting the server, we populate the database by creating a table for endpoints and providing the words to be used. The server will be populated from `words.txt` file from project root.
https://github.com/dwyl/english-words/blob/master/words_alpha.txt
### Environment Variables
Create a `.env` file at the project root and add the following variables according to the database.
```shell
PORT = 8080
PGUSER = alok-pg
PGHOST = localhost
PGDATABASE = okiba
PGPORT = 5432
PGPASSWORD = postgres_user_password
```
### Start scripts
```shell
// Development Server
$ pnpm run dev

View File

@ -20,7 +20,6 @@
"typescript": "^4.7.4"
},
"dependencies": {
"chalk": "^4.1.2",
"cors": "^2.8.5",
"dotenv": "^16.0.1",
"express": "^4.18.1",

40
pnpm-lock.yaml generated
View File

@ -5,7 +5,6 @@ specifiers:
'@types/express': ^4.17.13
'@types/node': ^18.0.3
'@types/pg': ^8.6.5
chalk: ^4.1.2
cors: ^2.8.5
dotenv: ^16.0.1
express: ^4.18.1
@ -14,7 +13,6 @@ specifiers:
typescript: ^4.7.4
dependencies:
chalk: 4.1.2
cors: 2.8.5
dotenv: 16.0.1
express: 4.18.1
@ -161,13 +159,6 @@ packages:
hasBin: true
dev: true
/ansi-styles/4.3.0:
resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
engines: {node: '>=8'}
dependencies:
color-convert: 2.0.1
dev: false
/anymatch/3.1.2:
resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==}
engines: {node: '>= 8'}
@ -248,14 +239,6 @@ packages:
get-intrinsic: 1.1.2
dev: false
/chalk/4.1.2:
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
engines: {node: '>=10'}
dependencies:
ansi-styles: 4.3.0
supports-color: 7.2.0
dev: false
/chokidar/3.5.3:
resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
engines: {node: '>= 8.10.0'}
@ -271,17 +254,6 @@ packages:
fsevents: 2.3.2
dev: true
/color-convert/2.0.1:
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
engines: {node: '>=7.0.0'}
dependencies:
color-name: 1.1.4
dev: false
/color-name/1.1.4:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
dev: false
/concat-map/0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
dev: true
@ -486,11 +458,6 @@ packages:
path-is-absolute: 1.0.1
dev: true
/has-flag/4.0.0:
resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
engines: {node: '>=8'}
dev: false
/has-symbols/1.0.3:
resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
engines: {node: '>= 0.4'}
@ -893,13 +860,6 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
/supports-color/7.2.0:
resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
engines: {node: '>=8'}
dependencies:
has-flag: 4.0.0
dev: false
/supports-preserve-symlinks-flag/1.0.0:
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
engines: {node: '>= 0.4'}

View File

@ -1,4 +1,4 @@
import { logError, logSuccess, projectRoot } from "../utils";
import { logError, logInfo, projectRoot } from "../utils";
import fs from "fs";
import path from "path";
import { Client } from "pg";
@ -65,5 +65,5 @@ export const populateDB = async (db: Client) => {
await db.query(queryStr);
}
logSuccess("Successfully populated the database!");
logInfo("Successfully populated the database!");
};

View File

@ -2,7 +2,7 @@ import express, { Response, Request, Express } from "express";
import dotenv from "dotenv";
import BinRouter from "./routes/bin";
import { Client, Pool } from "pg";
import { createDataDir, errorHandler, logError, logSuccess } from "./utils";
import { createDataDir, errorHandler, logError, logInfo } from "./utils";
import { tableExists, populateDB } from "./db";
import cors from "cors";
@ -12,15 +12,20 @@ const main = async () => {
// init db
const pool = new Pool();
const client = new Client();
const client = new Client({
user: process.env.PGUSER,
password: process.env.PGPASSWORD,
port: Number(process.env.PGPORT),
database: process.env.PGDATABASE,
});
client
.connect()
.then(() => {
logSuccess("Connected to database!");
logInfo("Connected to database!");
})
.catch((err: Error) => {
logError(`Could not connect to database! \n\n${err.message}`);
logError(`Could not connect to database!\n${err.message}`);
throw err;
});
@ -40,14 +45,14 @@ const main = async () => {
// check more on this later
app.use(cors());
app.get("/", (req: Request, res: Response) => {
app.get("/", (_: Request, res: Response) => {
res.send("Hello, World!");
});
app.use("/bin/", BinRouter(pool));
app.use(errorHandler);
app.listen(port, () => {
logSuccess(`Server started on port ${port}`);
logInfo(`Server started on port ${port}`);
});
};

View File

@ -1,13 +1,12 @@
import chalk from "chalk";
import { ErrorRequestHandler } from "express";
import path from "path";
import fs from "fs";
import fsp from "fs/promises";
// logs
export const logError = (msg: string) => console.error(chalk.bold.red(msg));
export const logSuccess = (msg: string) => console.log(chalk.bold.green(msg));
export const logWarning = (msg: string) => console.log(chalk.bold.yellow(msg));
export const logInfo = (msg: any) => console.info(`\x1b[36m%s\x1b[0m`, `[INFO] ${msg}`);
export const logError = (msg: any) => console.error(`\x1b[31m`, `[ERR] ${msg}`);
export const logWarn = (msg: any) => console.warn(`\x1b[33m`, `[WARN] ${msg}`);
export const projectRoot = path.join(__dirname, "..", "..");