mirror of
https://github.com/okiba-org/backend.git
synced 2025-02-22 01:02:02 +00:00
[chore] remove chalk for coloring text & minor changes
Signed-off-by: alok8bb <alok8bb@gmail.com>
This commit is contained in:
parent
e2d08e83ab
commit
08d60fd3e7
19
README.md
19
README.md
@ -1,27 +1,34 @@
|
||||
# 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.
|
||||
|
||||
Create a `.env` file at the project root and add the following variables according to the database.
|
||||
|
||||
```shell
|
||||
PORT = 8080
|
||||
PORT = 8080
|
||||
PGUSER = alok-pg
|
||||
PGHOST = localhost
|
||||
PGDATABASE = okiba
|
||||
PGPORT = 5432
|
||||
PGPASSWORD = postgres_user_password
|
||||
```
|
||||
|
||||
### Start scripts
|
||||
|
||||
```shell
|
||||
// Development Server
|
||||
$ pnpm run dev
|
||||
|
||||
// Build
|
||||
$ pnpm build
|
||||
// Build
|
||||
$ pnpm build
|
||||
|
||||
// Production
|
||||
$ pnpm start
|
||||
```
|
||||
```
|
||||
|
@ -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
40
pnpm-lock.yaml
generated
@ -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'}
|
||||
|
@ -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!");
|
||||
};
|
||||
|
17
src/main.ts
17
src/main.ts
@ -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}`);
|
||||
});
|
||||
};
|
||||
|
||||
|
@ -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, "..", "..");
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user