This Blogging Website is a platform that allows users to create, edit, and share blog posts. Users can sign up, sign in, and interact with the content through a user-friendly interface.
- User Authentication: Users can sign up and sign in securely to access their accounts.
- Create and Edit Posts: Users can create new blog posts and edit existing ones.
- View Posts: Users can view all blog posts and read individual posts in detail.
- User Dashboard: Users can view their profile and manage their posts.
Access the live application here: Medium
To get started with the Blogging Website, follow these steps:
- Clone this repository to your local machine.
- Ensure you have npm installed on your machine and have an account on the Cloudflare Workers.
- Install the necessary dependencies by running
npm install
. - Get your PostgreSQL connection URL from Neon and connection pool URL from Prisma Accelerate.
- Change the
DATABASE_URL
inbackend/wrangler.toml
file with yourPrisma Accelerate URL
. - Replace the
PostgreSQL connection URL
inbackend/.env
file. - Navigate to the
backend
folder and runnpm run dev
to start the backend server. - Replace the
BACKEND_URL
infrontend/src/config.ts
file. - Navigate to the
frontend
folder and runnpm run dev
to start the frontend server. - Access the application through the link generated after starting the frontend server.
- Cloudflare Workers: Backend server environment.
- Hono: Web framework for Cloudflare Workers to simplify backend development.
- Zod: Input validation library.
- PostgreSQL: Database for storing user information and blog data.
- Prisma: ORM library for interacting with PostgreSQL.
- TypeScript: Provides type safety for both frontend and backend code.
- React: Frontend library for building user interfaces.
- Tailwind CSS: Utility-first CSS framework for styling.
Special thanks to the developers of Cloudflare Workers, Hono, Zod, PostgreSQL, Prisma, TypeScript, React, Tailwind CSS, and other open-source technologies used in this project.