This is a Medium Clone built with modern web technologies. The application allows users to create, edit, and publish blog posts seamlessly.
- 📝 Create & Edit Blogs: Users can add new blog posts with a title and content.
- 📖 View Blogs: Read all published blog posts.
- 🔑 Authentication: Secure login and signup functionality.
- 🌐 RESTful API: Backend services using Hono.
- 🎨 Modern UI: Built with React and TailwindCSS for a smooth user experience.
| Category | Technology |
|---|---|
| 🏗️ Language | |
| 🎨 Frontend | |
| ⚙️ Backend | |
| 🗄️ Database | |
| 🔐 Authentication | |
| 📏 Runtime Validation | |
| 📦 State Management | |
| 🚀 Deployment |
- Clone the repository:
git clone https://github.com/ronakmaheshwari/medium.git cd medium - Install dependencies:
npm install
- Set up environment variables:
- Create a
.envfile in the root directory and add:BACKEND_URL=http://localhost:5000 JWT_SECRET=your_secret_key
- Create a
- Start the development server:
npm start
- Navigate to the backend directory:
cd backend - Install dependencies:
npm install
- Start the backend server:
npm run dev
- Frontend: Deployed using Vercel
- Backend: Deployed using Cloudflare Workers
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/blogs |
Fetch all blogs |
| POST | /api/blogs |
Create a new blog |
| GET | /api/blogs/:id |
Get a specific blog |
| PUT | /api/blogs/:id |
Update a blog |
| DELETE | /api/blogs/:id |
Delete a blog |
- Fork the repository.
- Create a new branch (
feature/new-feature). - Commit your changes (
git commit -m 'Add some feature'). - Push to the branch (
git push origin feature/new-feature). - Open a Pull Request.
This project is licensed under the MIT License.
For any questions or suggestions, feel free to reach out:
- GitHub: ronakmaheshwari
- LinkedIn: Ronak Maheshwari
- Email: ronak@example.com