A Blogging Website
- Framework: Cloudflare Workers with Hono
- Database: PostgreSQL integrated with Prisma ORM
- Validation: Zod for input validation
- Security: bcrypt.js for password hashing
- Middleware: CORS to avoid backend server errors
- Framework: React.js with Vite and TypeScript
- Styling: Tailwind CSS
Nexus Quill is a modern blogging platform built with React, Vite, and TypeScript for a responsive and efficient frontend experience. The backend is powered by Cloudflare Workers with Hono, ensuring robust performance and scalability. PostgreSQL, managed through Prisma ORM, provides a reliable and type-safe database solution. Zod is used for input validation, enhancing data integrity and security. bcrypt.js secures user passwords by hashing them before storage, while CORS middleware is employed to prevent backend server errors.
This project aims to deliver a seamless blogging experience, combining powerful frontend technologies with a performant and scalable backend architecture.
To run this project locally, follow these steps:
-
Clone this repository or download the root folder.
git clone https://github.com/Rudra-Sankha-Sinhamahapatra/Nexus-Quill
-
Install dependencies for the frontend.
cd frontend npm install
-
Install dependencies for the backend.
cd ../backend npm install
-
Create a
.env
file in the root of thebackend
folder and store your PostgreSQL database URL.touch backend/.env
-
Optionally, if using JWT for authentication, create a
config.ts
file to store yourJWT_SECRET
.touch backend/config.ts
-
Start the frontend server.
cd frontend npm run dev
-
Start the backend server in a separate terminal.
cd backend npm run dev
-
Navigate to the
/signup
endpoint to create your account and start using Nexus Quill.
To build and deploy your project on Cloudflare, follow these steps:
-
Build the frontend for production.
cd frontend npm run build
-
Deploy to Cloudflare using Cloudflare Workers or other appropriate deployment mechanisms(backend)
# Command for login in Cloudflare Workers npx wrangler login
# Command for deploying with Cloudflare Workers
npm run deploy
Ensure you have configured your Cloudflare account and environment variables properly for deployment.
This project is licensed under the MIT License - see the MIT file for details.
It includes instructions for building the frontend and deploying to Cloudflare, enhancing the clarity and completeness of the setup and deployment process for your project. Adjust paths and commands as necessary based on your specific project structure and deployment requirements.