+
+
+
The Open Source Blogging
Platform
-
+
BlogHive is a platform designed specifically for writers and
bloggers to share their work, receive feedback, and collaborate with
others on their blogging journey.
-
+
-
- Community
-
-
+
+
BlogHive is more than just a platform for writers and bloggers -
it's a community
-
-
-
+
+
+
With BlogHive, you can share your work, get feedback, and
collaborate with others on your blogging journey.{' '}
-
+
And as an open source platform, BlogHive is built and maintained
by a community of developers and users who are passionate about
helping writers and bloggers succeed.
-
+
diff --git a/apps/client/tailwind.config.js b/apps/client/tailwind.config.js
index 371e307..2c7e2ad 100644
--- a/apps/client/tailwind.config.js
+++ b/apps/client/tailwind.config.js
@@ -2,14 +2,6 @@
module.exports = {
content: ['./src/**/*.{js,ts,jsx,tsx}'],
theme: {
- screens: {
- sm: '320px',
- md: '640px',
- _2md: '840px',
- lg: '1024px',
- xl: '1280px',
- _2k: '2000px',
- },
extend: {
colors: {
slate: {
diff --git a/apps/client/tsconfig.json b/apps/client/tsconfig.json
index 6eaa1c6..9a3f4cd 100644
--- a/apps/client/tsconfig.json
+++ b/apps/client/tsconfig.json
@@ -3,8 +3,8 @@
"compilerOptions": {
"baseUrl": ".",
"paths": {
- "@/*": ["src/*"],
- "@/public/*": ["public/*"]
+ "@/*": ["./src/*"],
+ "@/public/*": ["./public/*"],
}
},
"include": ["src", "next-env.d.ts"],
diff --git a/packages/atoms/Button.tsx b/packages/atoms/Button.tsx
deleted file mode 100644
index 171d4b3..0000000
--- a/packages/atoms/Button.tsx
+++ /dev/null
@@ -1,21 +0,0 @@
-import * as React from "react";
-import clsx from "clsx";
-
-interface ButtonProps extends React.HTMLAttributes {
- children: React.ReactNode;
- color?: "primary" | "default" | "outline" | "link";
-}
-
-const style = {
- primary: "bg-blue-500 border-blue-500 hover:bg-blue-600",
- default: "bg-slate-100 border-slate-300 text-slate-900 hover:bg-slate-100",
- outline: "bg-slate-100 border-slate-500 text-slate-900 hover:bg-blue-100",
- link: "text-blue-600 hover:bg-blue-100"
-};
-
-export const Button: React.FC = (props) => {
- return ;
-};
diff --git a/packages/atoms/index.tsx b/packages/atoms/index.tsx
deleted file mode 100644
index 916730e..0000000
--- a/packages/atoms/index.tsx
+++ /dev/null
@@ -1,2 +0,0 @@
-import * as React from "react";
-export * from "./Button";
diff --git a/packages/atoms/package.json b/packages/atoms/package.json
deleted file mode 100644
index a222845..0000000
--- a/packages/atoms/package.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "name": "atoms",
- "version": "0.0.0",
- "main": "./index.tsx",
- "types": "./index.tsx",
- "license": "MIT",
- "scripts": {
- "lint": "eslint *.ts*"
- },
- "devDependencies": {
- "@types/react": "^18.0.0",
- "@types/react-dom": "^18.0.0",
- "eslint": "^8.0.0",
- "eslint-config-custom": "workspace:*",
- "react": "^18.0.0",
- "tsconfig": "workspace:*",
- "typescript": "^4.5.2"
- },
- "dependencies": {
- "clsx": "^1.2.1"
- }
-}
diff --git a/packages/atoms/tsconfig.json b/packages/atoms/tsconfig.json
deleted file mode 100644
index 945987d..0000000
--- a/packages/atoms/tsconfig.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "extends": "tsconfig/nextjs.json",
- "include": ["."],
- "exclude": ["dist", "build", "node_modules"]
-}
diff --git a/packages/eslint-config-custom/eslint-next.js b/packages/eslint-config-custom/eslint-next.js
index 18a462d..abb7a33 100644
--- a/packages/eslint-config-custom/eslint-next.js
+++ b/packages/eslint-config-custom/eslint-next.js
@@ -81,6 +81,11 @@ module.exports = {
"prefer-spread": "error",
"prefer-template": "error",
"quotes": ["error", "single"],
+ "react/button-has-type": [true, {
+ "button": true,
+ "submit": true,
+ "reset": false
+ }],
"react/function-component-definition": "off",
"react/prop-types": "off",
"react/jsx-props-no-spreading": "off",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 3d0b215..230f8d0 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -32,33 +32,35 @@ importers:
specifiers:
'@types/node': ^18.0.0
'@types/react': 18.0.26
- atoms: workspace:*
autoprefixer: ^10.4.13
+ class-variance-authority: ^0.4.0
+ clsx: ^1.2.1
eslint: 8.30.0
eslint-config-custom: workspace:*
next: 13.1.1
- next-transpile-modules: 10.0.0
postcss: ^8.4.20
prettier: ^2.7.1
prettier-config-custom: workspace:*
prettier-plugin-tailwindcss: ^0.1.13
react: 18.2.0
react-dom: 18.2.0
+ tailwind-merge: ^1.9.1
tailwindcss: ^3.2.4
tsconfig: workspace:*
typescript: ^4.5.3
dependencies:
- atoms: link:../../packages/atoms
+ class-variance-authority: 0.4.0_typescript@4.8.4
+ clsx: 1.2.1
next: 13.1.1_biqbaboplfbrettd7655fr4n2y
react: 18.2.0
react-dom: 18.2.0_react@18.2.0
+ tailwind-merge: 1.9.1
devDependencies:
'@types/node': 18.11.10
'@types/react': 18.0.26
autoprefixer: 10.4.13_postcss@8.4.20
eslint: 8.30.0
eslint-config-custom: link:../../packages/eslint-config-custom
- next-transpile-modules: 10.0.0
postcss: 8.4.20
prettier: 2.8.1
prettier-config-custom: link:../../packages/prettier-config-custom
@@ -130,27 +132,6 @@ importers:
tsconfig-paths: 4.1.1
typescript: 4.7.4
- packages/atoms:
- specifiers:
- '@types/react': ^18.0.0
- '@types/react-dom': ^18.0.0
- clsx: ^1.2.1
- eslint: ^8.0.0
- eslint-config-custom: workspace:*
- react: ^18.0.0
- tsconfig: workspace:*
- typescript: ^4.5.2
- dependencies:
- clsx: 1.2.1
- devDependencies:
- '@types/react': 18.0.26
- '@types/react-dom': 18.0.9
- eslint: 8.30.0
- eslint-config-custom: link:../eslint-config-custom
- react: 18.2.0
- tsconfig: link:../tsconfig
- typescript: 4.8.4
-
packages/eslint-config-custom:
specifiers:
'@typescript-eslint/eslint-plugin': ^5.27.1
@@ -1676,12 +1657,6 @@ packages:
resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==}
dev: true
- /@types/react-dom/18.0.9:
- resolution: {integrity: sha512-qnVvHxASt/H7i+XG1U1xMiY5t+IHcPGUK7TDMDzom08xa7e86eCeKOiLZezwCKVxJn6NEiiy2ekgX8aQssjIKg==}
- dependencies:
- '@types/react': 18.0.26
- dev: true
-
/@types/react/18.0.26:
resolution: {integrity: sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug==}
dependencies:
@@ -2760,6 +2735,17 @@ packages:
resolution: {integrity: sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==}
dev: true
+ /class-variance-authority/0.4.0_typescript@4.8.4:
+ resolution: {integrity: sha512-74enNN8O9ZNieycac/y8FxqgyzZhZbxmCitAtAeUrLPlxjSd5zA7LfpprmxEcOmQBnaGs5hYhiSGnJ0mqrtBLQ==}
+ peerDependencies:
+ typescript: '>= 4.5.5 < 5'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ typescript: 4.8.4
+ dev: false
+
/clean-stack/2.2.0:
resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
engines: {node: '>=6'}
@@ -5663,13 +5649,6 @@ packages:
resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
dev: true
- /next-transpile-modules/10.0.0:
- resolution: {integrity: sha512-FyeJ++Lm2Fq31gbThiRCrJlYpIY9QaI7A3TjuhQLzOix8ChQrvn5ny4MhfIthS5cy6+uK1AhDRvxVdW17y3Xdw==}
- deprecated: All features of next-transpile-modules are now natively built-in Next.js 13.1. Please use Next's transpilePackages option :)
- dependencies:
- enhanced-resolve: 5.10.0
- dev: true
-
/next/13.1.1_biqbaboplfbrettd7655fr4n2y:
resolution: {integrity: sha512-R5eBAaIa3X7LJeYvv1bMdGnAVF4fVToEjim7MkflceFPuANY3YyvFxXee/A+acrSYwYPvOvf7f6v/BM/48ea5w==}
engines: {node: '>=14.6.0'}
@@ -6942,6 +6921,10 @@ packages:
tslib: 2.4.1
dev: false
+ /tailwind-merge/1.9.1:
+ resolution: {integrity: sha512-ED9MkiUHlmfh58EC1xHRqXcH1IQyRtmDP0AmXlugYkP2tvfu7ejtjFEHJLJt93mQ7ZJkcqSIgm9M394bq5vOJg==}
+ dev: false
+
/tailwindcss/3.2.4_postcss@8.4.20:
resolution: {integrity: sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==}
engines: {node: '>=12.13.0'}
The Open Source Blogging Platform
-+
BlogHive is a platform designed specifically for writers and bloggers to share their work, receive feedback, and collaborate with others on their blogging journey.
+ +
BlogHive is more than just a platform for writers and bloggers - it's a community
+
With BlogHive, you can share your work, get feedback, and collaborate with others on your blogging journey.{' '}
-+
And as an open source platform, BlogHive is built and maintained by a community of developers and users who are passionate about helping writers and bloggers succeed.