https://github.com/harshpreet931/markd
Markd is a modern content-sharing platform that enables users to create, share, and discover articles on various topics. Built with the MERN stack (MongoDB, Express.js, React, Node.js), it offers a seamless user experience with features like real-time updates, user authentication, article management, and social interactions such as upvoting.
https://github.com/harshpreet931/markd
bcrypt css express jwt mern mongodb nodejs react tailwind vite
Last synced: 4 months ago
JSON representation
Markd is a modern content-sharing platform that enables users to create, share, and discover articles on various topics. Built with the MERN stack (MongoDB, Express.js, React, Node.js), it offers a seamless user experience with features like real-time updates, user authentication, article management, and social interactions such as upvoting.
- Host: GitHub
- URL: https://github.com/harshpreet931/markd
- Owner: harshpreet931
- Created: 2024-11-24T14:30:07.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-01-12T11:28:59.000Z (4 months ago)
- Last Synced: 2025-01-12T12:30:04.724Z (4 months ago)
- Topics: bcrypt, css, express, jwt, mern, mongodb, nodejs, react, tailwind, vite
- Language: JavaScript
- Homepage: http://ec2-13-48-192-142.eu-north-1.compute.amazonaws.com:8080/
- Size: 1.43 MB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Markd

_A modern platform for knowledge sharing and discovery._
[Demo](http://ec2-13-61-7-254.eu-north-1.compute.amazonaws.com:8080/) · [Report Bug](https://github.com/harshpreet931/markd/issues) · [Request Feature](https://github.com/harshpreet931/markd/issues)
## Overview
Markd is a content platform that enables users to share their expertise through beautifully crafted articles. Built with modern web technologies, it offers a seamless writing and reading experience with features like real-time article updates, user authentication, and social interactions.
## Key Features
- **Secure Authentication System**
- JWT-based authentication
- Protected routes
- Secure password hashing
- Session management- **Article Management**
- Create/Edit/Delete articles
- Upvoting system
- Search functionality based on titles (Will be updated to include tags and content)- **User Features**
- Custom profiles
- Article portfolios
- Bio management- **Modern UI/UX**
- Responsive design
- Intuitive navigation
- Loading states## Tech Stack
### Frontend
- [React](https://reactjs.org/) - UI library
- [React Router](https://reactrouter.com/) - Navigation
- [Tailwind CSS](https://tailwindcss.com/) - Styling
- [Vite](https://vitejs.dev/) - Build tool### Backend
- [Node.js](https://nodejs.org/) - Runtime environment
- [Express.js](https://expressjs.com/) - Web framework
- [MongoDB](https://www.mongodb.com/) - Database
- [JWT](https://jwt.io/) - Authentication
- [bcrypt](https://github.com/kelektiv/node.bcrypt.js) - Password hashing## Prerequisites
```json
{
"node": ">=14.x",
"npm": ">=6.x",
"mongodb": ">=4.x" // can be local or cloud-based.
}
```## Quick Start
1. **Clone and Install**
```bash
# Clone the repository
git clone https://github.com/harshpreet931/markd.git# Install dependencies
cd markd
npm install
```2. **Environment Setup**
```bash
# Backend (.env)
PORT=8081
DB_CONNECTION_STRING=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key# Frontend (.env)
VITE_API_URL=http://localhost:8081
```3. **Development**
```bash
# Terminal 1 - Backend
cd backend
node index.js# Terminal 2 - Frontend
cd frontend
npm run dev
```Visit `http://localhost:5173` to see the app in action.
## Project Structure
```
markd/
├── backend/ # Backend source code
│ ├── middleware/ # Authentication middleware
│ ├── models/ # Database models
│ └── routes/ # API routes
└── frontend/ # Frontend source code
├── public/ # Static assets
└── src/
├── components/ # Reusable components
├── pages/ # Page components
└── routes/ # Route definitions
```## Application Flow
1. **Authentication**
- User registration with email verification
- JWT-based authentication
- Protected route handling2. **Content Management**
- Article creation
- Image upload and management
- Search Functionality based on Titles (Will be updated to include tags and content)3. **User Interactions**
- Article upvoting system## Acknowledgments
- [React Documentation](https://reactjs.org/docs)
- [Tailwind CSS](https://tailwindcss.com)
- [MongoDB Documentation](https://docs.mongodb.com)---