Bloguer is a modern, serverless blogging platform designed to provide a seamless experience for creating, managing, and sharing blog content. Built with the latest technologies, Bloguer emphasizes speed, scalability, and a developer-friendly ecosystem.
The platform supports rich text formatting, image uploads, user authentication, and dynamic content delivery, ensuring a superior blogging experience.
- Node.js (v16 or above)
- Cloudflare Workers CLI (Wrangler)
- PostgreSQL Database
- npm or bun or yarn for package management
- Clone the repository:
git clone https://github.com/pulkitgarg04/bloguer.git
cd bloguer
- Install dependencies for both the client and server:
# Navigate to server and install
cd server
npm install
# Navigate to client and install
cd ../client
npm install
-
Set up Environment Variables for required variables and setup.
-
Deploy the server:
wrangler publish
- Run the frontend locally:
npm run dev
The project relies on several environment variables. Create a .env file in both the server and client directories with the following variables:
DATABASE_URL=your_postgresql_connection_string
JWT_SECRET=your_jwt_secret
VITE_BACKEND_URL=https://your-cloudflare-worker-url
- React: For building a responsive and dynamic user interface.
- React Router: For handling routing in the single-page application.
- Zustand: Lightweight state management to handle user and session data.
- Tailwind CSS: For styling the application with a focus on customization and a responsive layout.
- React Hot Toast: For displaying user-friendly notifications.
- TypeScript: Ensures type safety and better developer experience.
- Axios: For API requests and client-server communication.
- Hono: Ultra-fast web framework for building the serverless API.
- PostgreSQL: Relational database for managing user and blog data.
- Prisma: ORM for seamless database integration with PostgreSQL.
- JWT (JSON Web Tokens): For secure user authentication and session management.
- Cloudflare Workers: Serverless platform for deploying the backend globally.
- Blog Management: Create, edit, and delete blog posts.
- User Authentication: Secure login and signup with JWT.
- Rich Text Editor: Enables dynamic content creation.
- Serverless Architecture: Ensures speed and scalability with Cloudflare Workers.
Contributions to Bloguer are welcome and appreciated! Feel free to fork the repository, submit issues, or create pull requests to suggest new features or fix bugs.
This project is licensed under the MIT License - see the LICENSE.md file for details.